feat(B04,B05): 2D 지도 휠 줌 방향 반전 — 당기면 확대, 밀면 축소
B04 2D 지도와 B05 배수유역도의 휠 판정을 deltaY > 0 기준으로 바꿨다. 커서 아래 지점을 고정하는 offset 보정은 그대로다. 3D 뷰어는 손대지 않았다. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -517,7 +517,8 @@ export function createSurfaceMapViewer(): SurfaceMapViewer {
|
||||
(event) => {
|
||||
event.preventDefault();
|
||||
const prevScale = scale;
|
||||
scale = Math.min(8, Math.max(0.5, scale * (event.deltaY < 0 ? 1.15 : 0.87)));
|
||||
// 휠을 **당기면 확대**, 밀면 축소한다(2026-08-02 사용자 지시). 일반 스크롤과 반대 방향이다.
|
||||
scale = Math.min(8, Math.max(0.5, scale * (event.deltaY > 0 ? 1.15 : 0.87)));
|
||||
// 마우스 커서 아래 지점이 줌 전후로 같은 화면 위치에 머물도록 offset 보정.
|
||||
// screen = center + (base - center)·scale + offset 이므로,
|
||||
// 커서 고정 조건을 풀면 offset' = (cursor - center)·(1 - r) + offset·r (r = scale'/scale).
|
||||
|
||||
@@ -336,7 +336,6 @@ export function createDrainagePanel(callbacks: DrainagePanelCallbacks = {}): Dra
|
||||
});
|
||||
}
|
||||
|
||||
/** 유역 제원 목록을 다시 그린다. 항목을 누르면 해당 유역만 진하게 강조한다. */
|
||||
/** 유역 제원 목록. 항목을 누르면 그 유역만 진하게 강조한다. */
|
||||
const renderBasinList = (): void =>
|
||||
renderBasinRows(basinList, basins, selectedBasin, (index) =>
|
||||
@@ -504,7 +503,8 @@ export function createDrainagePanel(callbacks: DrainagePanelCallbacks = {}): Dra
|
||||
(event) => {
|
||||
event.preventDefault();
|
||||
const prevScale = scale;
|
||||
scale = Math.min(16, Math.max(0.5, scale * (event.deltaY < 0 ? 1.15 : 0.87)));
|
||||
// 휠을 **당기면 확대**, 밀면 축소한다(2026-08-02 사용자 지시). B04 2D 지도와 같은 방향이다.
|
||||
scale = Math.min(16, Math.max(0.5, scale * (event.deltaY > 0 ? 1.15 : 0.87)));
|
||||
// 커서 아래 지점을 고정한 채 확대/축소 (B04 지도와 동일 동작).
|
||||
const ratio = scale / prevScale;
|
||||
const rect = viewport.getBoundingClientRect();
|
||||
|
||||
Reference in New Issue
Block a user