Commit Graph

4 Commits

Author SHA1 Message Date
Maxim Dolgolyov 1a6d4a76c3 fix(phys7 ch1): §7 формула цены деления не рендерилась — \dfrac был разорван между $-спанами (единый KaTeX + ре-рендер) 2026-06-01 11:35:00 +03:00
Maxim Dolgolyov 903bc5cf42 feat(phys7 ch1): Phase 1 Wave 3 — §6, §7, Финал главы 1 «Юный физик»
WIDGETS (+390 строк, теперь 1139 строк, экспорт p1..p7 + final1):

§6 «Действия над физическими величинами»:
- 3 карточки (однородные величины / переводы скорости/плотности/мощности/энергии /
  умножение единиц m·V → плотность)
- IV-1 СИМ: таблица типичных скоростей (улитка → звук в воздухе) в м/с и км/ч
- IV-2 КАЛЬК конвертер (главный визуал §6): 5 типов величин (скорость/плотность/
  мощность/энергия/время), slider значения → перевод во все связанные единицы
- IV-3 DnD: 8 эквивалентных пар (1 мин=60 с, 1 кВт=1000 Вт, и т.д.)
- IV-4 ТРН: 5 задач (км/ч↔м/с, г/см³→кг/м³, ч+мин→с, сумма в разных приставках)

§7 «Цена деления. Погрешность»:
- 3 карточки (C = (X2-X1)/N / ΔX = C/2, запись X±ΔX / правила снятия отсчёта)
- IV-1 СИМ (главный визуал §7): виртуальная линейка SVG со сменой цены деления
  (10/5/2/1 мм) и подвижной красной риской; авто-округление до ближайшего деления,
  запись результата с погрешностью в KaTeX
- IV-2 КАЛЬК: 3 slider'а X1/X2/N → формула C и ΔX
- IV-3 DnD: 6 приборов (линейка/штангенциркуль/микрометр/термометры/секундомер)
  → 6 типичных цен деления
- IV-4 ТРН: 5 задач на цену деления и погрешность

ФИНАЛ ГЛАВЫ 1 (5 боссов + ачивка «Юный физик» +50 XP):
- Боссы (синтез §4-§7):
  1. Площадь листа A4 в м² (перевод см→м + S=ab)
  2. Плотность бруска с m=135 г и V=50 см³ (алюминий)
  3. Скорость 90 км/ч в м/с
  4. Цена деления (5 см = 50 делений → 1 мм)
  5. Погрешность мензурки (C=2 мл → ΔV=1 мл) — Магистр-задача
- Прогресс-бар «Побеждено: N/5», localStorage-сохранение между сессиями,
  +20 XP за каждого босса, ачивка +50 XP при 5/5 победах.
- Все боссы с подсказками (toggle), Enter-submit, валидация числа.

Все 4 IV в §6 и §7 wireDnd/wireQuiz/калькуляторы привязаны. parse-check, smoke-test (8 экспортов) пройдены.
2026-05-30 10:50:45 +03:00
Maxim Dolgolyov 83aad34e8b feat(phys7 ch1): Phase 1 Wave 2 — §3, §4, §5
WIDGETS (+347 строк к phys7_ch1_widgets.js, теперь 749 строк, экспорт p1..p5):

§3 «Методы исследования в физике»:
- 3 карточки (3 метода / отличия / опыт Галилея на Пизанской башне)
- IV-1 СИМ: timeline-список 5 исторических опытов (Архимед→Галилей→Торричелли→Паскаль→Ньютон) с раскрывающимися деталями
- IV-2 КВИЗ: 4 вопроса «опыт vs наблюдение vs гипотеза vs теория»
- IV-3 DnD: 8 ситуаций по 3 корзинам (наблюдение / эксперимент / гипотеза)
- IV-4 ТРН: 5 вопросов закрепления

§4 «Прямые и косвенные измерения» (S=ab, V=abc, rho=m/V):
- 3 карточки (типы измерений / основные формулы / объём картофеля по вытеснению)
- IV-1 СИМ: палитра 6 приборов (линейка/весы/термометр/секундомер/мензурка/динамометр) с единицами
- IV-2 КАЛЬК (главный визуал §4): 4 slider'а a, b, c (см) и m (г) →
  пересчёт S, V, плотности с угадыванием вещества (дерево / алюминий / железо / свинец / золото)
- IV-3 DnD: 8 примеров измерений → прямое / косвенное
- IV-4 ТРН: 5 расчётных задач (площадь, объём кирпича, плотность, скорость, вытеснение)

§5 «Единицы измерения. СИ»:
- 3 карточки (зачем СИ / 7 основных единиц в таблице / приставки от нано до гига)
- IV-1 СИМ: 7 цветных карт основных единиц СИ
- IV-2 КАЛЬК конвертер: число × приставка (Г/М/к/—/с/м/мк/н) × единица (м/г/с/Вт/Гц/Н)
  → результат с автоформатированием (экспоненциальная запись для больших/малых)
- IV-3 DnD: 8 величин → 5 основных единиц СИ
- IV-4 ТРН: 5 задач на перевод (км→м, кг→г, ч→с, мс→с, см²→м²)

Pre-commit, parse-check, KaTeX-аудит (одиночные backslash =0), smoke-test (экспорт=5) пройдены.
2026-05-30 10:47:15 +03:00
Maxim Dolgolyov 65c2e7dac1 feat(phys7 ch1): Phase 1 Wave 1 — §1, §2 + интеграция widgets
GEN: gen_phys7_ch.js теперь подключает <script src=phys7_chN_widgets.js> и
вызывает PHYS7_CHN_WIDGETS[id] в ensureBuilt, удаляя placeholder. Все 5 chN
регенерированы под этот hook.

WIDGETS (frontend/js/phys7_ch1_widgets.js, 402 строки, экспорт p1+p2):
- §1 «Физика — наука о природе»:
  * 3 теор. карточки (что изучает / связь с науками / 6 примеров явлений)
  * IV-1 СИМ: галерея 8 областей физики с hover-эффектом
  * IV-2 КВИЗ: 3 вопроса о предмете физики и слове «фюзис»
  * IV-3 DnD: 8 карточек → 4 науки (астро/химия/био/физика)
  * IV-4 ТРН: 5 вопросов тренажёр
- §2 «Физическое тело, явление, величина»:
  * 3 теор. карточки (4-понятийная таблица / как отличать / стакан-пример)
  * IV-1 СИМ (главный): DnD 12 карточек → 4 корзины (тело/вещество/явление/величина),
    в т.ч. KaTeX-величины (=5$ кг, =-10$ °C, =30$ км/ч)
  * IV-2 КВИЗ: «найди величину/явление/вещество» (3 вопроса)
  * IV-3 ТЕСТ: 5 быстрых вопросов на классификацию
  * IV-4 ТРН: 4 расчётных + концептуальных вопроса
- Кнопка «Я прочитал §» (+10 XP), localStorage-фиксация, серая «Прочитано»
  после первого нажатия.

ИНФРАСТРУКТУРА:
- Общие хелперы внутри файла: makeCard (theory/rule/example), wgWrap, dndPool,
  wireDnd, quizQuestion, wireQuiz, readButton, wireReadBtn, renderMath с правильными
  delimiters $..$ и $$..$$.
- XP: DnD +15, квиз +10, тренажёр +15, прочитал +10. Прогресс параграфа +30 при
  «прочитал», +10 базово при открытии. Цвета §1+§2 единые с темой главы 1 (indigo).
- Parse-check, KaTeX-аудит ($$ только двойной backslash), smoke-test пройдены.
2026-05-30 10:41:27 +03:00