fix(biochem 3D): корректная глубина + объёмные связи-цилиндры
Два дефекта, из-за которых 3D читался как плоская диаграмма: - painter-сортировка была по возрастанию z (ближние первыми) — дальние атомы рисовались поверх ближних. Теперь единый список примитивов (атомы + половинки связей) сортируется по убыванию z (дальние первыми). - связи были тонкими плоскими линиями. Теперь — затенённые «цилиндры»: толстый штрих с поперечным градиентом (центр светлее, края темнее), двухцветные (каждая половина под цвет своего атома) — фирменный вид ball-and-stick. Ширина зависит от перспективы (ближе — толще). - усилена перспектива (fov 900→700), добавлен тёмный ободок сфер для объёма. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
# Phase 1: Миграция всех симуляций на манифесты
|
||||
|
||||
**Status:** ⬜ Not Started
|
||||
**Parent plan:** [PLAN.md](./PLAN.md)
|
||||
**Domain:** frontend
|
||||
|
||||
## Objective
|
||||
Перевести все ~49 симуляций на сам/регистрацию через `LabRegistry`. Перенести данные
|
||||
(catalogue meta, preview, theory) и поведение (open/stop/destroy) в манифесты. Удалить
|
||||
legacy-структуры. Сохранить глобальные имена через shim.
|
||||
|
||||
## Tasks
|
||||
- [ ] Для каждой симуляции зарегистрировать манифест (метаданные из SIMS, preview из P_*, theory из THEORY, open/stop/destroy из _openXxx + _pauseAllSims/closeSim веток).
|
||||
- [ ] Удалить массив `SIMS` (lab-glue.js) и объект `THEORY` (lab-init.js).
|
||||
- [ ] Удалить if-цепочку `openSim`, `_pauseAllSims`, switch в `closeSim`, `ALL_SIM_BODIES`/`ALL_CTRL_BARS`.
|
||||
- [ ] lab-init.js усохнуть до generic-логики (openSim/closeSim через реестр).
|
||||
- [ ] Shim глобальных имён (gSim, pSim, …) — их дёргают deep-link/поиск/инлайн-обработчики.
|
||||
- [ ] Сохранить обратную совместимость id (magnetic/coulomb→emfield, thinlens/mirrors/refraction→opticsbench, stereo:fig, hydrostatics:arg, molphys:arg, chemistry:arg, dynamics:arg, emfield:mode, opticsbench:mode).
|
||||
|
||||
## Files to Modify/Create
|
||||
- Все `frontend/js/labs/*.js` симуляции — добавить `LabRegistry.register(...)`.
|
||||
- `frontend/js/labs/lab-glue.js`, `frontend/js/labs/lab-init.js` — удалить legacy.
|
||||
|
||||
## Acceptance Criteria
|
||||
- Все симуляции открываются/работают как раньше (паритет).
|
||||
- Удалены все 6 точек дублирования из CONTEXT.md.
|
||||
- Deep-links и алиасы работают.
|
||||
|
||||
## Notes
|
||||
- Мигрировать пачками (по категориям) с проверкой паритета после каждой пачки (Big Bang допускает временную поломку между пачками).
|
||||
- Превью с зависимостями (random в P_ELECTROLYSIS) перенести как есть.
|
||||
|
||||
## Review Checklist
|
||||
- [ ] Ни одна симуляция не потеряна
|
||||
- [ ] Глобальные shim'ы на месте
|
||||
- [ ] Алиасы/deep-links работают
|
||||
- [ ] Legacy полностью удалён
|
||||
|
||||
## Handoff to Next Phase
|
||||
<!-- заполнить после фазы -->
|
||||
Reference in New Issue
Block a user