План тренажёра в plans/trig-circle/PLAN.md (всё по теме на окружности, кроме графиков функций). Фаза 1 (аддитивно к рабочему режиму): - Ввод угла в градусах (поле + Enter/кнопка) → goToAngle (нормализует, показывает котерминальность). Подсказка «+360°·k» в бейдже угла. - Тумблер «График/функции» — скрыть график (тема «функции») → круг на всю ширину (переиспользует существующий слой graph + _layout). - Полная сетка табличных углов (16: 0…330°) вместо 8. - Опорный (острый) угол к оси Ox в выводе (основа формул приведения) + знаки sin/cos/tg по текущей четверти. stats() расширен полями refAngle/refDeg. Verified: node --check; headless-смоук (vm + canvas-Proxy) 9/9 — опорный угол 30/150/210→30°, 300→60°, 90→90°, 0→0; знаки по четвертям (II: sin+ cos− tg−; IV: sin− cos+); новые глобальные glue-функции определены. Эмодзи нет (стрелка — inline SVG .ic, tg-неопр. — em-dash). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
3.6 KiB
Тригонометрическая окружность — план улучшения (тренажёр темы, без функций)
Цель: симуляция frontend/js/labs/trigcircle.js + панель frontend/labs-bodies.html (#sim-trigcircle)
покрывает всю школьную тригонометрию НА ОКРУЖНОСТИ. Графики y=f(x) («функции») — вне темы:
существующий showGraph оставляем опциональным/скрываемым.
Архитектура: рукописный canvas-sim (класс TrigCircleSim) + HTML-панель в labs-bodies.html +
glue-функции (_openTrigCircle, trigToggle, trigGoTo, trigReset, _trigUpdateUI) внизу
trigcircle.js; регистрация в _register-all.js (trigcircle). KaTeX, LabFX, _tasks.js доступны.
⛔ без eval, без эмодзи (inline SVG .ic), всё аддитивно (не ломать текущий режим).
Уже есть
Окружность, перетаскиваемая точка, угол °/рад (метки π/6…), sin/cos/tan/cot отрезками (слои), треугольник sin-cos, касательная/котангенс, 16 табличных углов + snap, подсветка четверти, значения дробями (½,√2/2,√3/2,√3/3,√3), stat-bar, опциональный график (= «функции»).
Фазы
- Ф1 — Углы и обзор: тумблер скрыть график (фокус на круге); ввод угла (° и π-доли); полная сетка табличных кнопок (16); опорный (острый) угол; знаки по четвертям в выводе; подсказка котерминальности (+360°k / +2πk).
- Ф2 — Определения / 6 функций: подписи sin=y, cos=x на осях; слой sec/csc; Пифагор sin²+cos²=1 (гипотенуза=1) с формулой; тумблер «формула значения» (KaTeX).
- Ф3 — Знаки: режим со знаками +/− sin/cos/tg по четвертям, мнемоника, таблица.
- Ф4 — Особые углы / таблица значений: оверлей-таблица 0/30/45/60/90… с подсветкой текущего.
- Ф5 — Симметрии и формулы приведения: чётность (α→−α), приведение (π±α, π/2±α, 2π−α) с анимацией отражения/поворота + KaTeX; период tg/ctg = π.
- Ф6 — Простейшие уравнения: задаёшь значение → все решения на круге + общая формула (sin α=½ → π/6+2πk, 5π/6+2πk); для tg — шаг π; связка с arcsin/arccos геометрически.
- Ф7 — Два угла (опц.): вторая точка β → α±β, формулы сложения.
- Сквозное: режимы-вкладки (Углы·Определения·Знаки·Особые·Приведение·Уравнения) с краткой теорией и кнопкой «Задание» через _tasks.js; шпаргалка (значения+знаки+тождества+приведение).
Проверка каждой фазы
node --check; headless-смоук математики (опорный угол, знаки, решения уравнений, приведение) в vm с стабом canvas; коммит+push, без эмодзи, lint.