From 074bf9c0c0b31f3d8fa0b95132a73b1f4eabd3ac Mon Sep 17 00:00:00 2001 From: umsangdon Date: Wed, 19 Aug 2026 18:33:03 +0900 Subject: [PATCH] auto: 2026-08-19 18:33 (EOMSANGDON-HOME) --- B05_Profile/B05_Profile_UI_Markers.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/B05_Profile/B05_Profile_UI_Markers.ts b/B05_Profile/B05_Profile_UI_Markers.ts index 0ceb8bf7..371a9842 100644 --- a/B05_Profile/B05_Profile_UI_Markers.ts +++ b/B05_Profile/B05_Profile_UI_Markers.ts @@ -369,6 +369,9 @@ export function createRouteMarkers( .filter((entry) => Number.isFinite(entry.chainage_m)) .map((entry) => ({ chainage_m: entry.chainage_m as number })), ); + // 측점선(노란 띠)은 도로 반폭의 1.5배로 그린다 — 지형에 묻혀 짧아 보이는 문제 + // (2026-08-19 사용자 지시). 측구 방향 램프는 늘어난 선의 **끝단**에 따라붙는다. + const barHalfWidth = halfWidth * 1.5; stations.forEach((station) => { if (station.center_z === null) return; const [leftX, leftY] = station.frame.left_xy; @@ -377,11 +380,11 @@ export function createRouteMarkers( stationCenters.set(station.station_id, modelToScene(center, bounds)); const points = [ modelToScene( - { x: center.x + leftX * halfWidth, y: center.y + leftY * halfWidth, z: center.z }, + { x: center.x + leftX * barHalfWidth, y: center.y + leftY * barHalfWidth, z: center.z }, bounds, ), modelToScene( - { x: center.x - leftX * halfWidth, y: center.y - leftY * halfWidth, z: center.z }, + { x: center.x - leftX * barHalfWidth, y: center.y - leftY * barHalfWidth, z: center.z }, bounds, ), ];