Skip to main content

apply_origin_adjust

Function apply_origin_adjust 

Source
pub fn apply_origin_adjust(
    draw_y: u32,
    height: i32,
    eff_h: i32,
    origin_y: f32,
) -> u32
Expand description

transform-origin による描画位置の補正。

計算量: O(1)

【2026-08-04 発見・修正】ここは以前 .max(0) で 0 にクランプしていた。 draw_y は画面より上へスクロールアウトした要素で u32 へ折り返しており (draw_y as i32 が負)、そこへクランプを掛けると 0 に固定される。 高さはそのままなので y=0..height を塗り、可視領域を丸ごと覆う

実測: 要素(y_offset=529 h=740、スクロール後 el_y=-700)が boxfill(100, 0, 1024, 740) を実行して研究カードを消していた。

補正が要るのは transform: scale() で寸法が変わったときだけ。 補正量が 0 なら元の値をそのまま返す。