fix(view): 지형 모델이 없을 때 60 m 사각판 대신 교각별 지반고 선 표시

- 지형 격자가 없으면 교각 지반고 위치에 얇은 선(코핑 길이 + 여유 2 m)만 그림
- 전체 보기에서도 지형이 없으면 교각별 지반고 선을 표시, 지형이 있으면 공유 격자만 표시
- 부재 표시 '지반' 체크박스는 두 경우 모두 동작
- 테스트: 얇은 선 위치와 길이, 지형 있을 때 선 미표시

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
ypshimandClaude Haiku 5.5 committed 2026-10-27 15:16:49 +09:00
1 parent 765384cd71
commit e5d8002c79
5 files changed
+61 -15

No files matched your search

+3 -2
View File
@@ -25,7 +25,7 @@ export interface AllPiers {
/**
* Builds the concrete members of several piers in one frame (전체 보기, 콘크리트만: no rebar). The first entry is the
* reference. Each pier's own ground plane is hidden; the shared terrain grid is drawn once.
* reference. With a terrain grid it is drawn once and the per-pier ground lines are hidden.
*/
export function buildAllPiers(entries: { name: string; model: PierModel }[], terrain?: TerrainGrid): AllPiers {
const piers = new THREE.Group();
@@ -33,7 +33,8 @@ export function buildAllPiers(entries: { name: string; model: PierModel }[], ter
const reference = entries[0].model.pivot;
for (const { name, model } of entries) {
const scene = buildPierScene(model);
scene.parts.ground.visible = false;
// Without terrain each pier keeps its own 지반고 line; with terrain the shared grid replaces them.
scene.parts.ground.visible = terrain === undefined;
const { x, z } = pierOffset(model.pivot, reference);
scene.root.position.set(x, 0, z);
scene.root.userData.pier = name;