Маркер прямого угла в точке касания T должен быть на той стороне,
где геометрически находится угол 90° — внутри треугольника OTA,
т.е. между направлениями T→O и T→A.
Раньше использовалось +u_radius (от центра наружу) → маркер
оказывался ВНЕ круга на дальней от A стороне. Изменено на
-u_radius (внутрь, к центру). Теперь маркер показывает угол
90° между OT и tangent правильно.
Затронуты:
- §3 Card 3.1 (статичная)
- §3 Интерактив 1 (slider OA)
- §3 Интерактив 2 (пошаговое доказательство)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Проверено 11 SVG в §3, §4, §5 — 11 исправлено.
§3 Касательные из одной точки:
- Card 3.1: пересчитаны точки касания T₁,T₂ по корректной формуле
T_x=O_x+R²/OA, T_y=O_y±R·AT/OA (раньше координаты были произвольные);
маркеры прямого угла направлены правильно (CCW perp для верхней,
CW perp для нижней); все подписи вне линий касательных.
- Интерактив 1 (slider): найден баг — sinA/cosA были перепутаны
в T_x/T_y. Теперь T₁x=cx+R*sinA, T₁y=cy−R*cosA. Маркер прямого
угла T₂ исправлен с CCW на CW. ViewBox расширен под широкий OA.
- Интерактив 2 (proof): тот же фикс формулы + маркер прямого угла.
§4 Построение касательной:
- Card 4.1 (построение): пересчитаны точки касания T₁,T₂ как
пересечение исходной окружности O(90,100,r=50) и вспомогательной
M(165,100,r=75) — раньше точки были вне окружности.
- Card 4.3 (формула): точка касания T была на (107,56) — вне
окружности. Пересчитана на T=(89,59) с правильным маркером.
- Интерактив 1 (шаги): то же исправление формулы и направлений
маркеров прямого угла.
- Интерактив 2 (live): сlider tangent positions через радиальные
unit-векторы для подписей вне линий.
§5 Окружности в углу:
- Card 5.1: центр окружности был на O(135,145) — не на биссектрисе
и не равноудалён от сторон. Пересчитан на O(157,148) с r=35
по формуле от вершины угла. T₁,T₂ — проекции центра на стороны.
Добавлены маркеры прямого угла в обеих точках касания.
- Card 5.3: две окружности на биссектрисе с r=d·sin(α/2).
- Интерактив 1 (slider): добавлен маркер прямого угла в T₂
(отсутствовал); направление T₁-маркера исправлено.
- Интерактив 2 (proof): то же.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
§8 Центральный/вписанный углы. Дуга: slider центрального угла α от
0 до 360° с подсветкой дуги; SVG с вписанным углом и его позицией;
DnD центральный/вписанный/ни тот ни другой; калькулятор длины дуги
ℓ=α/360·2πR; тренажёр; босс.
§9 Свойство вписанного угла: dual slider центральный α + вписанный
β=α/2 на одной дуге; 5-шаговое доказательство для случая O на стороне
вписанного угла через равнобедренный △ и внешний угол; двунаправленный
калькулятор; DnD верно/неверно; тренажёр; босс.
§10 Вписанные углы на одну дугу: SVG с дугой AC и 3 вершинами
B₁,B₂,B₃ на другой части — все углы AB_iC равны; 3-шаговое
доказательство через половину центрального; калькулятор; DnD; тренажёр;
босс.
§11 Вписанный угол на диаметр: slider позиции C — угол ACB всегда
90°, прямоугольный треугольник вписан с гипотенузой = диаметр;
4-шаговое доказательство; калькулятор через Пифагор (диаметр+катет
→ другой катет); тренажёр; DnD; босс.
File: 3060 → 4549 LOC. 11 of 16 §§ Главы 4.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
§3 Интерактив 1 'Две касательные из внешней точки': подписи T₁ и T₂
теперь располагаются по радиальному направлению (наружу от центра)
с большим отступом, не лежат на касательной линии. Подписи длин
AT₁ и AT₂ вынесены ПЕРПЕНДИКУЛЯРНО касательным наружу (через
вычисление нормали к каждой касательной). Все подписи теперь
крупнее (font 13, Unbounded для вершин, JetBrains Mono для длин)
и читаются без наложения на линии.
§3 Интерактив 2 'Доказательство касательных по шагам': те же фиксы
плюс расширен viewBox 260×200 → 280×220 для размещения подписей.
§2 Card 2.1: убран лишний атрибут cx='100' cy='95' на <line> элементе
радиуса (line не имеет атрибутов cx/cy — игнорировалось браузером,
но загромождало код).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
§4 Построение касательной: пошаговое SVG-построение (6 шагов через
вспомогательную окружность с диаметром OA), live-слайдеры R и |OA|,
калькулятор AT=√(OA²−R²), DnD шагов построения, тренажёр, босс.
§5 Окружности вписанные в угол: слайдеры d и угол 2α — окружность
всегда касается обеих сторон, биссектриса проходит через центр;
5-шаговое доказательство; калькулятор r=d·sin(α/2); DnD утверждений;
тренажёр; босс.
§6 Взаимное расположение двух окружностей: 3 слайдера R1, R2, d с
живым определением одного из 5 случаев (внешние/касание внешнее/
пересекаются/касание внутреннее/внутренние); DnD-сортер 8 карточек
по 4 категориям; калькулятор; тренажёр; босс.
§7 Длина общей касательной: SVG внешней касательной с формулой
ℓ=√(d²−(R₁−R₂)²) + SVG внутренней касательной с ℓ=√(d²−(R₁+R₂)²);
4-шаговое доказательство через прямоугольник KT₁T₂O₂; калькулятор
обеих формул; тренажёр; босс.
File: 1638 → 3042 LOC. 7 of 16 §§ Главы 4 готовы.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
§1 Касательная. Признак: слайдер d от 0 до 2R — секущая/касательная/не
пересекает с цветовым индикатором; 5-шаговое доказательство через
прямоугольный △OTM; калькулятор вида прямой; DnD по 3 корзинам;
тренажёр; босс.
§2 Свойство касательной: слайдер угла T — касательная ⊥ радиус OT всегда,
маркер 90° следует за T; 5-шаговое доказательство от противного;
калькулятор AT=√(|OA|²−R²); тренажёр; DnD утверждения; босс.
§3 Касательные из одной точки: слайдер |OA| — две касательные из A,
AT₁=AT₂ с тиками равенства; 5-шаговое доказательство через равенство
прямоугольных △OAT₁ и △OAT₂; калькулятор |AT|; тренажёр; DnD; босс.
GLOSSARY: +точка касания, +радиус.
File: 470 → 1549 LOC.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>