feat(trigcircle): шкала значений по оси Y на графике (координатная плоскость)
- y-ось графика теперь подписана значениями (KaTeX): sin/cos — 1, ½, 0, −½, −1; tg/ctg — 3, 2, 1, 0, −1, −2, −3 - пунктирные линии уровней + подписи слева от панели - подписи прячутся при смене функции (лишние уровни tg/ctg) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -688,15 +688,19 @@ class TrigCircleSim {
|
|||||||
c.beginPath(); c.moveTo(x0, gy); c.lineTo(x0, gy+gh); c.stroke();
|
c.beginPath(); c.moveTo(x0, gy); c.lineTo(x0, gy+gh); c.stroke();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ±1 lines */
|
/* ── шкала значений по оси Y (значения на координатной плоскости) ── */
|
||||||
if (fn==='sin'||fn==='cos') {
|
const yVals = (fn==='tan'||fn==='cot')
|
||||||
c.strokeStyle = 'rgba(255,255,255,0.05)'; c.setLineDash([4, 4]);
|
? [[3,'3'],[2,'2'],[1,'1'],[0,'0'],[-1,'-1'],[-2,'-2'],[-3,'-3']]
|
||||||
[1,-1].forEach(v => { c.beginPath(); c.moveTo(gx, sy(v)); c.lineTo(gx+gw, sy(v)); c.stroke(); });
|
: [[1,'1'],[0.5,'\\tfrac{1}{2}'],[0,'0'],[-0.5,'-\\tfrac{1}{2}'],[-1,'-1']];
|
||||||
c.setLineDash([]);
|
yVals.forEach(([v, lx], i) => {
|
||||||
c.font='500 10px Manrope,sans-serif'; c.fillStyle='rgba(255,255,255,0.22)';
|
const yy = sy(v);
|
||||||
c.textAlign='right'; c.textBaseline='middle';
|
if (yy < gy + 6 || yy > gy + gh - 6) return;
|
||||||
c.fillText('1', gx-5, sy(1)); c.fillText('−1', gx-5, sy(-1));
|
if (v !== 0) {
|
||||||
}
|
c.strokeStyle = 'rgba(255,255,255,0.05)'; c.lineWidth = 1; c.setLineDash([4, 4]);
|
||||||
|
c.beginPath(); c.moveTo(gx, yy); c.lineTo(gx+gw, yy); c.stroke(); c.setLineDash([]);
|
||||||
|
}
|
||||||
|
this._ovLabel('gy' + i, lx, gx - 6, yy, 'rgba(255,255,255,0.55)', 'r');
|
||||||
|
});
|
||||||
|
|
||||||
/* x ticks — линии на canvas, подписи KaTeX-оверлеем */
|
/* x ticks — линии на canvas, подписи KaTeX-оверлеем */
|
||||||
const ticks = [[0, '0'], [Math.PI/2, '\\tfrac{\\pi}{2}'], [Math.PI, '\\pi'],
|
const ticks = [[0, '0'], [Math.PI/2, '\\tfrac{\\pi}{2}'], [Math.PI, '\\pi'],
|
||||||
|
|||||||
Reference in New Issue
Block a user