From 0826015a76ec375c506e8ca41ed1bd1cd7e045fd Mon Sep 17 00:00:00 2001 From: umsangdon Date: Sun, 2 Aug 2026 17:40:52 +0900 Subject: [PATCH] =?UTF-8?q?fix(B06):=20balloon=20=EC=A7=80=EC=8B=9C?= =?UTF-8?q?=EC=84=A0=EC=9D=84=20=ED=8F=89=EA=B7=A0=EC=9A=B4=EB=B0=98?= =?UTF-8?q?=EA=B1=B0=EB=A6=AC=20=EC=88=98=ED=8F=89=EC=84=A0=20=EC=A4=91?= =?UTF-8?q?=EC=95=99=EC=97=90=20=EB=A7=9E=EC=B6=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 지시선이 블록 정점(극값)을 가리키고 있어 측점선과 수평선이 만나는 자리를 찍는 꼴이 됐다. balloon이 설명하는 대상은 정점이 아니라 그 띠의 평균운반거리 수평선이므로 앵커를 그 선의 한가운데로 옮긴다. Co-Authored-By: Claude Opus 5 --- .../B06_wf3_ProfileCross_UI_MassHaul_Balance_View.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/B06_wf3_ProfileCross/B06_wf3_ProfileCross_UI_MassHaul_Balance_View.ts b/B06_wf3_ProfileCross/B06_wf3_ProfileCross_UI_MassHaul_Balance_View.ts index e6b7eb9c..9b54412a 100644 --- a/B06_wf3_ProfileCross/B06_wf3_ProfileCross_UI_MassHaul_Balance_View.ts +++ b/B06_wf3_ProfileCross/B06_wf3_ProfileCross_UI_MassHaul_Balance_View.ts @@ -429,7 +429,10 @@ function appendBandBalloon( const height = lines.length * LINE_HEIGHT + PAD_Y * 2; const baseY = box.y(band.level_base_m3); const apexY = box.y(band.level_apex_m3); - const anchorX = box.x(block.apex_m); + // 지시선은 **그 띠의 평균운반거리 수평선 한가운데**를 가리킨다. 정점(극값) 위치를 쓰면 + // 측점선과 수평선이 만나는 자리를 찍게 되어 무엇을 가리키는지 읽히지 않는다 + // (2026-08-02 사용자 지적). balloon이 설명하는 대상은 정점이 아니라 그 수평선이다. + const anchorX = box.x((band.haul_from_m + band.haul_to_m) / 2); const anchorY = (baseY + apexY) / 2; const upward = block.direction === "forward"; const home = findSlot(