From 7562d1a77b43d8ef20067f1f51c4b2328263ca6e Mon Sep 17 00:00:00 2001 From: Maxim Dolgolyov Date: Wed, 24 Jun 2026 11:08:09 +0300 Subject: [PATCH] =?UTF-8?q?fix(trigcircle):=20=D0=BA=D0=BE=D0=BE=D1=80?= =?UTF-8?q?=D0=B4=D0=B8=D0=BD=D0=B0=D1=82=D0=BD=D0=B0=D1=8F=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=B4=D0=BF=D0=B8=D1=81=D1=8C=20=D0=B1=D0=BE=D0=BB=D1=8C=D1=88?= =?UTF-8?q?=D0=B5=20=D0=BD=D0=B5=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BA=D1=80?= =?UTF-8?q?=D1=8B=D0=B2=D0=B0=D0=B5=D1=82=20=D1=83=D0=B3=D0=BE=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Координатный тултип (cos; sin) выносится радиально НАРУЖУ за точку (вдоль луча от центра), а не просто со смещением — так KaTeX-плашка значений всегда дальше от центральной дуги угла и её подписи (π/3 и т.п.), наложения нет. Verified: node --check; смоук — coord-подпись дальше от центра, чем сама точка. Co-Authored-By: Claude Opus 4.8 (1M context) --- frontend/js/labs/trigcircle.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/js/labs/trigcircle.js b/frontend/js/labs/trigcircle.js index 01da2e4..be151f2 100644 --- a/frontend/js/labs/trigcircle.js +++ b/frontend/js/labs/trigcircle.js @@ -515,9 +515,12 @@ class TrigCircleSim { c.strokeStyle = 'rgba(255,255,255,0.50)'; c.lineWidth = 2; c.beginPath(); c.arc(px, py, ps, 0, Math.PI*2); c.stroke(); - /* ── coordinate tooltip (KaTeX overlay) ── */ + /* ── coordinate tooltip (KaTeX overlay) — выносим РАДИАЛЬНО НАРУЖУ за точку, + чтобы не перекрывать центральную дугу угла и её подпись ── */ + const _odx = Math.cos(a), _ody = -Math.sin(a); this._ovLabel('coord', `\\left(${_latexVal(cosA)};\\ ${_latexVal(sinA)}\\right)`, - px + (cosA >= 0 ? 18 : -18), py + (sinA >= 0 ? -20 : 20), '#fff', cosA >= 0 ? 'l' : 'r', true); + px + _odx * 20 + (cosA >= 0 ? 6 : -6), py + _ody * 20 + (sinA >= 0 ? -8 : 8), + '#fff', cosA >= 0 ? 'l' : 'r', true); /* ── quadrant roman numeral ── */ const qOff = r * 0.46;