feat: режим аннотации поверх симуляции в онлайн-уроке + fix планиметрии (arcmark, triangle tools)
Онлайн-урок: - Кнопка «Рисовать» в баре симуляции (только учителю) - При активации: холст доски показывается поверх iframe (z-index), фон прозрачный - Учитель рисует прямо поверх симуляции обычными инструментами - Студенты видят то же самое через SSE (classroom_sim_annotate) - Выход из режима → кнопка «Вернуться к симуляции» Планиметрия (bugfix): - arcmark теперь рисуется всегда (не зависит от showAngles) - altitude/median: 1 клик на вершину треугольника (авто-находит противоположную сторону) - centroid/orthocenter: 1 клик внутри/на треугольник Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -140,6 +140,7 @@ class Whiteboard {
|
||||
// Board theme
|
||||
this._boardTheme = opts.boardTheme || 'chalkboard';
|
||||
this._bgNoiseCache = new Map(); // canvas element per theme
|
||||
this._annotateMode = false; // true = transparent bg (draw over simulation)
|
||||
|
||||
// Compass state machine
|
||||
this._compassState = 'idle'; // 'idle'|'setting-radius'|'waiting-arc'|'drawing-arc'
|
||||
@@ -2148,10 +2149,16 @@ class Whiteboard {
|
||||
return this._bgNoiseCache.get(theme);
|
||||
}
|
||||
|
||||
setAnnotateMode(v) {
|
||||
this._annotateMode = !!v;
|
||||
this.render();
|
||||
}
|
||||
|
||||
_renderBg(ctx) {
|
||||
const W = this._cssW || 300;
|
||||
const H = this._cssH || 150;
|
||||
ctx.clearRect(0, 0, W, H);
|
||||
if (this._annotateMode) return; // transparent bg — simulation shows through
|
||||
const theme = this._boardTheme || 'chalkboard';
|
||||
|
||||
// Base background
|
||||
|
||||
Reference in New Issue
Block a user