issues.md 3.2 KB

Отчет по тестированию и план развития

🐛 Выявленные баги (Требуют исправления)

  1. Проблема с масштабированием Canvas: При изменении размера окна браузера (resize), графики перерисовываются с микрозадержкой. Из-за этого при сужении экрана волна может на долю секунды выходить за границы блока.
    • Возможное решение: Использовать ResizeObserver вместо события window.addEventListener('resize').
  2. Блокировка AudioContext: В некоторых строгих браузерах (Safari, новые версии Chrome) звук не воспроизводится, если пользователь не кликнул по странице перед нажатием кнопки "Вывод на динамике".
    • Возможное решение: Добавить стартовый экран-заглушку с кнопкой "Начать работу", чтобы инициализировать AudioContext по первому клику.
  3. Наложение текста в спектре: Если частоты на вкладках V1 и V2 выставлены слишком близко друг к другу (например, 440 Гц и 450 Гц), текстовые подписи над столбиками спектра накладываются друг на друга и становятся нечитаемыми.

✨ Запланированные улучшения (Бэклог / Фичи)

  • Итоговое тестирование (Сцена 5): Реализовать полноценный модуль тестирования (5-10 вопросов) во всплывающем модальном окне с подсчетом процента правильных ответов.
  • Визуализация осей: Добавить разметку по оси Y на график "Сумма колебаний", чтобы наглядно демонстрировать уровень среза при активации нелинейного преобразования (клиппинга).
  • Управление фазой: Вернуть в интерфейс ползунок управления сдвигом фазы (θ), который был в черновиках, чтобы показывать влияние фазы на форму итоговой суммы Фурье.
  • Экспорт данных: Добавить возможность скачать получившийся график суммы колебаний в формате PNG.

✅ Реализовано в последних коммитах

  • Плавное включение звука (fade-in) через gain.setTargetAtTime.
  • Кнопка сброса всех параметров "Сбросить все".
  • Шкала частот (5кГц, 10кГц, 15кГц) на графике спектрограммы.