Commit Graph
7087 Commits
Author SHA1 Message Date
eomsangdon c2a388d726 Merge remote-tracking branch 'origin/sub_laptop_6' into sub_desktop_1 2026-10-09 15:24:59 +09:00
eomsangdonandClaude Opus 5.5 03fdde07fb feat(B09): 설계내역서 구조물 줄 = 대가 블록마다 나눔 — B08 열 owners 잇기(145-3)
- 항목 짜기 = B08 구조물 집계표 열 owners {사본 주인 id: 값}(sub8 덧칸) 를 싣고
- 짝 셈 split_by_block / splitByBlock = 주인마다 대가 단가(price_of = 145-2 daega_price 자리) → 같은 대가 블록끼리 한 줄(수량 합 ROUND 3) · 대가 없는 주인 = 한 줄 「연결 없음」
- price_of 없으면 열 하나 그대로(단가 빈칸)
- 시험 = test_145_3_b09_bill 더함(대가17 × 20 = 2,491,880 · 대가24 × 12.5 = 2,078,274 · 거울)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:24:46 +09:00
eomsangdon 3dc4a1e0a0 Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_6
# Conflicts:
#	B09_Estimation/B09_Estimation_Router.py
#	B09_Estimation/B09_Estimation_UI_Shell.ts
2026-10-09 15:23:20 +09:00
eomsangdon e359bef714 Merge remote-tracking branch 'origin/sub_laptop_8' into sub_desktop_1 2026-10-09 15:22:18 +09:00
eomsangdonandClaude Opus 5.5 dbc9a32b72 feat(B08): 구조물 집계표 열마다 사본 주인별 값 owners(145-3 이음)
- 열 owners = {사본 주인 id: 그 주인이 낸 값} — 주인 id = linked_snapshots 키(pipe@측점 · 구조물 id · {id}__{그룹})
- 칸을 낸 잇기 사본이 먼저 · 없으면 시설 본체 · owners 합 = 열 계 · 기존 키 · 화면 그대로
- 새 test_145_3

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 15:20:56 +09:00
eomsangdon d9a461eed2 Merge remote-tracking branch 'origin/sub_desktop_1' into sub_laptop_6
# Conflicts:
#	B09_Estimation/B09_Estimation_Router.py
#	B09_Estimation/B09_Estimation_UI_Shell.ts
2026-10-09 15:20:41 +09:00
eomsangdonandClaude Opus 5.5 d9db1dfb1d feat(B09): 단가산출근거 · 목록표 — 승격 줄 · 옛 SP → 산근 블록 · B09 굳힌 단가 · 엑셀 끝수(145-1)
연결된 사본 일위대가 로직 줄 중 승격 + 옛 SP 참조 줄 · 같은 로직 + 같은 입력값 = 산근 하나 · 서버 단독 풀이 ·
대가 · 내역서가 읽는 길 sangeun_key · price_of · Linked.used_keys 빈 입력 = 자동값.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 15:19:31 +09:00
eomsangdonandClaude Opus 5.5 463214d921 feat(B09): 집계표 넷 — 재료비 · 노무비 · 경비 수량금액 · 중기시간금액(서버 역전개 · 145-5)
- 역전개(서버 단독) = 설계내역서 수량 × 호표 구성(겹 호표 끝까지 · 깊이 한도) → 자원 총수량 · 내역 자재 줄 그대로
- 끝수 = 엑셀 자리 — 총수량 ROUND 2 · 금액 ROUND(수량 × 단가, 0) · 중기 비목마다 ROUND · 단가 없으면 금액 빈칸
- 호표 구성 = hopyo_lines 자리(145-1 · 2 가 들어오면 채움) · GET 응답 summary · 화면 탭 넷 + 목록표 이동
- 시험 = test_145_5_b09_summary(엑셀 중기 42.95 시간 5,411,700 · 건축목공 2,222,201 · 각재 280,370 · 못 5,321 · 구역화물 678,345)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:16:58 +09:00
eomsangdonandClaude Opus 5.5 0d49a4c3c1 feat(B07): 평면도 여러 장 맞춤선 · 이웃 구간 흐리게 · n/N장 · 돌린 맞춤 뺌(141-4)
- 장 나눔 — 돌린 방향 맞춤 뺌(그림을 안 돌리므로 그림칸 높이 넘침 흠)
- 장 경계 측점에 노선 직각 맞춤선 + 「MATCH LINE NO.x · n장 이어짐」 · 글은 글 자리 잡기 장애물
- 이웃 구간 노선 = 도곽 안 흐린 파선(중심선 고를 때) · 도면명 「n/N장」
- 새 test_141_4

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 15:16:02 +09:00
eomsangdonandClaude Opus 5.5 489a682794 feat(B09): 설계내역서 — 공종 나무 엑셀 꼴 · B08 수량 · 호표 단가 · 관급 · 원가계산서 이음(145-3)
- 공종 나무 = 엑셀 꼴 고정(토공사 1.1~1.6 · 구조물공 2.1~2.3 · 운반공 · 자재대 · 관급자재대 제외금액) · 공구 안 나눔
- 항목 짜기(서버) = B08 토공집계표 짝 · 구조물 집계표 열(구조물군 → 공종 짝 · 커플링 뺌) · 운반공 수량 = B08 총괄자재
- 조합 밖 토공 · 운반 산근 · 준비공 = 빈칸 「연결 없음」 · 구조물 단가 = 대가 호표 자리(145-2 hopyo)
- 4 자재대 = 대비표 「별도」 · 관급자재대 = 「관급」 표시 + 조달수수료(율 사용자 입력 · ROUNDDOWN 0)
- 셈 = 파이썬 · TS 짝 + 거울 · 금액 ROUNDDOWN(단가 × 수량, 0) 비목마다 · 제목 = 아는 금액 합 + 빈 줄 수
- 원가계산서 이음 = sheets.bill.sums {material · labor · expense · supply_net} · 빈 줄 있으면 null
- 시험 = test_145_3_b09_bill(엑셀 G9 361,494 · G14 11,003,825 · 관급 69,474,220 + 375,160 = 69,849,380)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:13:05 +09:00
eomsangdonandClaude Opus 5.5 8013fd901b feat(B09): 총괄설계내역서 · 공사원가계산서 탭 · 제비율 셈 파이썬 · TS 짝(145-4)
- compute_total(sums, estimate) · computeTotal — 설계내역서 비목 합(bill.sums) + 사용자 요율 · 손입력
- 끝수 엑셀 그대로(줄마다 ROUNDDOWN 0 · 관급 ROUNDUP −3 · 이윤 − 보정 · 부가세 + 조정) · 안전관리비 A/B 작은 쪽
- 요율 빈칸 시작 · 빈칸이면 그 줄 · 소계 빈칸 · 후보 = M01 요율_조달청제비율 글(확정 아님)
- 엑셀에 없는 현행 비목 다섯 = 줄만 · 원가계산서 = 총괄 거울 + 구성비 · 줄 누름 = 총괄 그 줄
- 엑셀 검산(순공사원가 868,874,829 · 총공사비 1,201,879,000) · 거울 시험

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TNMXVCZXMpHpVvqmFkeChL
2026-10-09 15:12:40 +09:00
eomsangdonandClaude Opus 5.5 24b45655e9 feat(B07): 평면도 조각 배수유역 경계 · 유역 번호 — 장 범위로 자름(141-3)
- 조각 둘 더함 — 「배수유역 경계」(유역도 해치 + 테두리) · 「유역 번호」(유역도 배지) · 어느 평면도 종류에나 체크로
- 세부유역 읽기를 metric_basins 로 떼어 유역도 · 평면도 공용 · 장 범위로 잘라 번호는 유역도와 같게
- 번호 배지는 글 자리 잡기의 장애물 · 새 test_141_3

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 15:12:34 +09:00
eomsangdonandClaude Opus 5.5 f05d77d642 feat(B07): 평면도 축척 여덟 · 실거리 상수 축척화 · 막힌 글 먼 자리(141-2)
- 축척 = 1/500 · 600 · 1,000 · 1,200(기본) · 2,500 · 3,000 · 5,000 · 6,000(지식DB 근거)
- 비탈 눈금 간격 · 대피소 띄움 · 필지 버퍼 · 틈 = 1/1,200 실거리 × 축척 비(종이 거리 같게 · 1/6,000 눈금 10 m)
- 글 후보가 다 막히면 기호에서 2 · 3 배 먼 자리 + 지시선 — 검증_sub8 1/6,000 겹친 쌍 55 → 4
- 시험 test_119 · test_141 늘림

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 15:10:02 +09:00
eomsangdon b3bd20d749 Merge remote-tracking branch 'origin/sub_laptop_8' into sub_laptop_3 2026-10-09 15:08:27 +09:00
eomsangdon 4c69e905ac Merge remote-tracking branch 'origin/sub_desktop_1' into sub_laptop_3 2026-10-09 15:08:21 +09:00
eomsangdonandClaude Opus 5.5 d26b991fb3 feat(B07): 평면도 글 자리 잡기 — 우선순위 · 후보 자리 · 지시선 · 비탈 기하 분리(141-1)
- 새 Engine_Cad_PlanLabels — 시종점 > 측점 NO > IP > R > 배수 > 대피소 차례로 후보 중 첫 빈 자리 · 장애물 IP 표 · 필지 상자 · 먼 자리엔 지시선
- 조각 글은 후보째 모아 build_plan_kind_drawing 이 자리 정한 뒤 그림 · R 실거리 4 m 대신 종이 mm 후보
- 비탈 · 노선 따라가기 기하 = 새 Engine_Cad_PlanSlope(PlanKinds 700줄 넘어 분리 · import 길 그대로)
- sub6 초안 반영 · 검증_sub8 실측 겹친 글 쌍 지형 12 → 0 · 새 test_141

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 15:06:52 +09:00
eomsangdonandClaude Opus 5.5 484c92892d feat(M02): 사전조합 구분 · 상세구분 = 구조물군 › 종류 + 공통 · 옛 품셈 분류 = 미분류(134-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 15:06:14 +09:00
eomsangdon 2face8aa78 Merge remote-tracking branch 'origin/sub_desktop_1' into sub_laptop_6 2026-10-09 15:06:04 +09:00
eomsangdonandClaude Opus 5.5 95dd19fd2e chore(B09): 원가 바탕 파일 린트 정리 — 긴 줄 · 안 쓰는 import(144)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:05:38 +09:00
eomsangdonandClaude Opus 5.5 83b19f45a5 feat(B09): 원가 단가 수요 = 연결된 사본이 부른 자원(143-1 원천 · 144)
- B09_Estimation_Linked = linked_snapshots 사본마다 담은 로직을 사본 단가 묶음 · 입력값 · 고른자재로 돌려 부른 LB · EQ · MT · MO 줄만 모음(묶음 통째 · 고르기 후보 안 씀 · 쓰기 없음)
- 자리만이던 수요 함수를 바꿈 · 입력 빈 사본은 부른 줄 없음(빈 입력 자동값은 142-1 몫)
- 시험 = test_144_b09_skeleton 더함(기계경비 로직 → EQ000004 · MO000002 · LB000048)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:04:48 +09:00
eomsangdonandClaude Opus 5.5 2640fb4c60 feat(M02): 기본 층 = 개인 — 층 없는 주소 · 사전조합도 · 회사 없으면 마스터(134-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 15:03:30 +09:00
eomsangdon 4d104bc222 Merge remote-tracking branch 'origin/sub_laptop_8' into sub_desktop_1 2026-10-09 15:01:59 +09:00
eomsangdonandClaude Opus 5.5 bf9472d8f3 test(M02): 사전조합 층 시험 — 저장 길 줄바꿈 맞춤(134-3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 15:01:55 +09:00
eomsangdonandClaude Opus 5.5 e1d83398d4 feat(B09): 원가 바탕 단가 — 뼈대 · 노무 · 경비 · 환율 · 자재 대비 · 중기 탭(144-1~4)
- 탭 = 기번3 공통 엑셀 보이는 탭 차례(목차 · 안내 = 연결 점검) · 탭 하나 = 공용 표 하나 · 호표 칸 누름 = 그 탭 그 줄로 이동
- 저장 = 프로젝트 B09_Estimation/v1(사용자 값 · 굳힌 단가 한 벌) · 결과는 GET 때 서버 셈 · [저장] · [단가 갱신] 길
- 줄 = 수요 따라(연결된 사본 원천 자리 · 기계 → 운전사 · 연료 · B08 총괄 자재) · 연결 없으면 빈칸 + 연결 점검 목록
- 셈 = 파이썬 · TS 짝 + 거울(운전사 시간 노임 · 자재 최저 자동 + 사용자 고침 · 관급 · 별도 · 중기 손료 + 운전사 + 연료 + 잡품 · 엑셀 끝수)
- 공용 표 = 칸 누름 · 줄로 이동(강조) 더함
- 시험 = test_144_b09_skeleton · test_144_b09_base_calc(엑셀 중기 126,000 · 76,436 · 96,829 · 40,659 · 운전사 55,700 · 47,231 · 33,571)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015KYZ2HWWdUwZWYnn3tQz7X
2026-10-09 15:01:27 +09:00
eomsangdonandClaude Opus 5.5 66efaf2834 feat(M02): 일위대가 사전조합 — 층 단추 따로 · 명시 owner · 구분 › 상세구분 2단 나무(134-3)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 15:01:16 +09:00
eomsangdonandClaude Opus 5.5 22a54abe99 feat(B08): 자재 셋 값 없는 줄 숨김 · 구조물 탭 표 넷 공용 카드 안(143-3)
- 총괄 · 콘크리트 · 자재수량 — 수량 · 금액 · 손 단위수량 없는 줄 숨김(화면만 · 고친 칸은 원래 줄 자리로 저장)
- 구조물 집계표 · 자재 셋 — 공용 카드 안(토공 표와 같은 꼴)
- 시험 — 새 test_143_3

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 14:59:58 +09:00
eomsangdonandClaude Opus 5.5 14c3f01f11 fix(B08): 임의 · 실무 값 빈칸 — 관경 · 련 미입력 · 1본 프로젝트 값만 · 거창 계수 비율 미정 · 수심비 빈칸(143-2)
- 집계표 — 관경 · 련 빈칸 = 「미입력」 열(or 1000 · or 1 지움) · 관경 빈칸 흙막이 빈 높이 미입력 · 1본 = 프로젝트 층 변수만(시스템 층 폴백 지움)
- 토공집계표 — 성토면다짐 · 초류종자살포 · 지장목제거 = 빈칸 + 「비율 미정」 · 구조물 쪽 늘 빈 줄 8 뺌(나머지 7 유지)
- 수리 박스 — 수심비 처음 값 빈칸 · 빈칸이면 수심 · 유출량 멈춤 · 칸 옆 알림
- 좌측 패널 1본 읽기 전 빈칸 · 시험 test_69 · 98 · 122 · 73_11 고침 + 새 test_143_2

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 14:56:57 +09:00
eomsangdonandClaude Opus 5.5 a504f561ad feat(B07): 횡단면도 장 배치 장마다 열 × 행 칸 가운데 · 도각 고정 그림칸(140-3)
- 쌓기 · 최소 장수 함수 지움 · grid_slots(n, 열, 행) 칸 가운데(좌하단 → 위 → 오른쪽) · 1/100 그대로
- 저장 B07_DesignDetail/cross_layout.json {default [4,4], sheets {장 번호: [열, 행]}} · GET · PUT cross-layout
- 배치 바꾸면 담긴 측점이 바뀐 확정 장 풂 · 그 측점 설계 잠정 · CROSS_SHEET_LAYOUT = 3
- 장 나눔이 설계 · 덧그림과 무관 — 목록 · 확정 · 수정에서 덧그림 재기 빠짐
- 좌측 정보 칸 「배치 열 × 행 [적용] · [모든 장 기본]」 → 다시 세워 같은 장 번호 엶

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TNMXVCZXMpHpVvqmFkeChL
2026-10-09 14:56:34 +09:00
eomsangdonandClaude Opus 5.5 15f2e7c4f5 feat(M02): 단가산출 승격 서고 지움 · 옛 단가승격 참조 줄 = 읽을 때 로직 줄 + 승격(134-2)
같은 로직 줄이 이미 있으면 옛 참조 줄 그대로(브레인 승인 ③) · 마스터 · 개인 파일 안 고침 · 프로젝트 사본 셈 그대로.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 14:54:58 +09:00
eomsangdonandClaude Opus 5.5 b40a129cb5 feat(B08): 연결된 사본 원천 함수 · 집계표 사본 있는 칸만 · 조합 이름 · 구조물도 사본에서(143-1)
- M02_Item_Snapshot.linked_snapshots — 지정 ∩ 같은 항목 사본 {구조물 id: 항목 · 폴더 · 부분 · 경로} · B08 · B09 공용
- 집계표 서버 — 잇기 목록을 사본으로 거름 · 조합 모두 없는 칸은 안 셈 · 세월교 날 잇기 · 관 몫 본체 잇기 · 「조합 사본 없는 시설 n곳」 알림 · 응답 linked
- 화면 — 조합 이름 = 사본 경로(층 목록 GET 없음) · 측점 · 조합 열 = 사본 있는 것만 · 구조물도 모달 = 사본만(없으면 사본 없음)
- 시험 — test_98 · 120 · 131 픽스처 잇기 · test_61_2 사본만 · 새 test_143_1

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01STqEqztUthVFBmEP18wBSz
2026-10-09 14:51:50 +09:00
eomsangdonandClaude Opus 5.5 6df477a522 feat(B07): 평면도 관리 모달 종류 드롭다운 상세 · 장 한 블록 · 끌어 놓기 종류 순서(140-2)
- 맨 위 [종류 ▼] 상세 폼 · × 대신 폼 안 [지우기]
- 평면도 장 = 종류마다 한 줄 [≡] 이름 [1][2] · 장 단추 누르면 미리보기 + 드롭다운 따라감
- 줄 끌어 놓기 = 종류 순서 · 놓는 즉시 PUT plan-kinds-order(reorder_kinds) · 번호 바뀐 장 확정 풂

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TNMXVCZXMpHpVvqmFkeChL
2026-10-09 14:51:11 +09:00
eomsangdonandClaude Opus 5.5 eebe72a7f4 feat(B07): 평면도 관리 모달 오른쪽 CAD 캔버스만 · 확정 풀기 뺌(140-1)
- CAD 싣기 곁값 bare — 제목줄 · 리본 · 패널 · 상태막대 안 그림 · 높이 변수 0
- 모달 [확정 풀기] 지움 · 확정 배지 · [CAD 에서 열기] 그대로 · M02 미리보기 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TNMXVCZXMpHpVvqmFkeChL
2026-10-09 14:46:58 +09:00
eomsangdonandClaude Opus 5.5 1384d6a84d feat(M02): 일위대가 로직 줄 구분 드롭다운 단가산출 · 단가승격 — 줄 승격 칸 저장(134-1)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SE9MxeXTu2uaDZ55BJowAY
2026-10-09 14:46:51 +09:00
eomsangdon 2163584bbd Merge remote-tracking branch 'origin/CODEX' into sub_laptop_3 2026-10-09 14:41:39 +09:00
eomsangdon c0cf0ab90a Merge remote-tracking branch 'origin/CODEX' into sub_laptop_1 2026-10-09 14:41:31 +09:00
eomsangdon 974c7e6cb2 Lower Gemini chat thinking level 2026-10-09 14:31:12 +09:00
eomsangdonandClaude Opus 5.5 a952a8a1a5 chore(plan): 10-9 요구 검토 — 원문 둘 · 조사 A~G · 분석_정함 · 134~145장 계획 · 115 · 128~133장 기록 이관
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LLCk2y5xE8YGVgjbTntWsY
2026-10-09 14:28:04 +09:00
eomsangdon fea0323d5e Log Gemini chat request failures 2026-10-09 14:16:11 +09:00
eomsangdon 47fcf4884b Merge remote-tracking branch 'origin/sub_laptop_7' into main_laptop_1 2026-10-09 10:24:25 +09:00
eomsangdonandClaude Opus 5.5 0880d2b316 feat(B05): 3D 제안 ③ 사면 모양 평활화 — 사면 격자(노선 1 m × 빗면 약 1 m · 꺾임은 격자선) · Taubin 면 평활화 · 비탈 끝 선 가우스(측점 고정) · 곡선 안쪽 포락선(엇갈린 사면 선은 먼 쪽이 만나는 선에서 멈춤) · 곡률 상한(115-10)
- 새 _Corridor_Loft_Toe.ts(비탈 끝 거리 고르기 · 측점 고정 · 포락선) · _Corridor_Loft_Grid.ts(Taubin)
- _Corridor_Loft.ts 행마다 점 둘 부채꼴 → 격자 · 설계 점 0.3 m 솎기 · 둘레는 지형에 닿은 비탈 끝만
- 사면 실오라기 67 → 1.5 % · 음영 단차 p90 5.6 → 0.02° · 측점 오차 그대로(226 · d22)
- test_115_10 새로 · test_115_8 직선 · 꼬임 단언을 격자 · 포락선에 맞춤

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-09 10:23:35 +09:00
eomsangdonandClaude Opus 5.5 e629584223 feat(B05): 노선 [확인] 때 고른 분석 지형 = 설계 지형 — 종 · 횡단 · 배수 · 유토 · 3D 전부 그 지형으로(133-2)
- [확인] 이 고른 지형으로 확정 모델 · stage 1 params 를 바꾼 뒤 재계산 체인을 돎(switch_design_terrain · B04 확정 표시도 따라감) · 체인 실패면 노선과 함께 되돌림
- 수치지형도로 갈 때 라이다 확정값을 stage 1 params 에 적어 둠 — 라이다로 되돌려 [확인]하면 원래 모델 · params
- 지형만 바꿔도 [확인]이 다시 셈 · 고르기 안 보이면(라이다 없는 프로젝트) 지형 안 실음 · 고른 값 없으면 지금 설계 지형 · 상태줄에 설계 지형 표시
- 분석 통로 terrain 기본 = 지금 설계 지형(None) · terrain-sources 가 design 을 함께 냄
- B06 구조물 측점 추가가 노선 확정 때 남긴 sampling.json 이 지금 지형과 다르면 stage 1 params 로 뜸(B04 재확정 때도 옛 지형으로 뜨던 흠)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UoSr2sqvYtBf1dtQdus88s
2026-10-09 10:00:18 +09:00
eomsangdon 262f6d387e Merge remote-tracking branches 'origin/sub_laptop_7' and 'origin/sub_laptop_8' into main_laptop_1 2026-10-09 09:31:06 +09:00
eomsangdonandClaude Opus 5.5 06d9754d6d feat(B05): 3D 제안 ③ 절성토 서피스 부드럽게 — 사면 삼각형만 꺾임 법선(30° 넘는 소단 꺾임은 또렷) · 측점 사이 단조 3차 보간(측점 = B06) · 드레이프 보정량 ±2 m 고르기(115-9)
- 새 _Corridor_Loft_Shade.ts(three toCreasedNormals · 부드러운 음영 재질 사본 한 벌)
- _Tin.ts 망 손질 자리(finish) 하나 — 제안 ② 는 안 넘겨 그대로
- 시험 도우미 셋(115-5 · 115-6 · 115-8)이 three BufferGeometryUtils 를 config/node_modules 에서 풂
- test_115_8 직선 보간 단언 → 측점 = B06 · 넘침 없음 · 꼭대기 꺾임 없음 · 사면 음영 단언

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-09 09:28:30 +09:00
eomsangdonandClaude Opus 5.5 9f717a6a72 feat(B05): 계획노선 편집 분석 지형 고르기 — 라이다 있는 프로젝트도 수치지형도로 분석(133-1)
- 편집 모달 「분석 지형: 라이다 · 수치지형도」 고르기 · 라이다와 수치지형도 서피스가 둘 다 있을 때만 보임 · 기본 라이다 · 값은 화면 상태 pref(routeedit-terrain)
- 고르면 등고선 · 구간 기울기 · 거리 재기 지반고 · 횡단 미리보기 · 종단 띠를 고른 지형으로 다시 그림 · 노선 추천도 고른 지형으로 요청
- 서버 통로(elevations · cross-preview · profile-preview · initial)가 terrain(las · sheet) 을 받아 sampler 를 고름 · GET route/terrain-sources 새 길
- 확정 params · [확인] 재계산 · 종 · 횡단 · 3D 정본은 안 바뀜
- 지표면 허용 목록에 sheet_* 여섯 넣음 — 54-22 뒤 LAS 없는 프로젝트 sheet_laplace 가 막혀 있던 길도 풀림

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UoSr2sqvYtBf1dtQdus88s
2026-10-09 09:27:57 +09:00
eomsangdonandClaude Opus 5.5 338c307620 fix(B05): 3D 제안 ② 비탈 끝 드레이프 — 115-7 로 짧아진 행의 설계면 높이 끝과 바깥 지형 턱 없앰(측점 아닌 행 · 지반 차 0.1 m 넘는 행 · 측점 행은 B06 그대로)(115-8)
- 성토 닿은 70° 삼각형 760 → 150(226) · 측점 오차 그대로
- test_115_6 드레이프 단언 하나

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-09 08:33:43 +09:00
eomsangdon f25f25287c Merge remote-tracking branches 'origin/sub_laptop_4' and 'origin/sub_laptop_7' into main_laptop_1 2026-10-09 08:26:32 +09:00
eomsangdonandClaude Opus 5.5 35ab4bd48e fix(B05): 3D 성토 비탈 끝 종단 이음 — 튐 · 못 닫힘 보간 · 측점 닻 원뿔 · 비탈 끝 밖 2 m 덧댐(115-7)
- 공통 변형 장(buildDeformField) 성토 비탈 끝 열을 측마다 종단으로 이음(새 ① · 제안 ② 같이 받음)
- 못 닫힘 = 단면 끝 너머 max(2 m, 25 %) 넘어서야 닫힌 성토 · 끝까지 못 찾음
- 튐 = 이웃 ±3 m 중앙값과 max(2 m, 25 %) 넘게 다름 → 이웃 좋은 행 보간
- 원뿔 넓히기 1 m/m · 늘린 몫은 측점 값 + 1 m/m 까지 · 측점 행 날것 · 0 행 끊음(단면 있는 3 m 안 틈만 이음)
- 새 ① 바뀐 행은 비탈 끝 밖 2 m 를 비탈 끝 높이 → 원지반으로 덧댐 · 절토 그대로
- 시험 test_115_7_fill_continuity(직각 골짜기 · 계단 지형 · 못 닫힘 · 측점 행 · 절토)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013rJwJMVL4EE31y77TB11AP
2026-10-09 08:25:51 +09:00
eomsangdonandClaude Opus 5.5 901bf23304 feat(B05): 3D 제안 ③ 측점 횡단 기반 사면 — 측점 B06 비탈 꼭짓점 · 꺾임끼리 짝 맞춘 측점 사이 보간(평면도 외곽선 규칙) · 비탈 끝 드레이프 · 성토↔절토 끊음 · 지형 이음은 ② 기계 · 고르기 「제안 ③」 등록(115-8)
- 새 _Corridor_Loft.ts · _Corridor_Loft_Profile.ts
- _Tin.ts 설계 점 원천을 인자로(② 기본 그대로 · 결과 같음) · _Tin_Design.ts insideLoop 내보냄
- 등록부 proposal3 한 줄 · 시험 test_115_8 새로 · test_115_5 등록 목록 단언에 제안 ③

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-09 08:25:28 +09:00
eomsangdonandClaude Opus 5.5 a23aea6ed1 test(B05): 115-5 시험 도구가 TIN 라이브러리(맨 이름 둘)를 config/node_modules 에서 풂 · 등록부 단언을 제안 ② 등록 뒤로(115-6)
- helper_115_5: delaunator · @kninnug/constrainautor 를 helper_115_6 과 같은 규칙으로 해석
- test_115_5 등록부: 등록 목록에 proposal2 · 제안 ② 고르면 제안 ② 로 그림

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-08 22:48:53 +09:00
eomsangdonandClaude Opus 5.5 052a3739c4 feat(B05): 3D 방식 등록부에 제안 ② 단일 삼각망 한 줄 등록 · 등록부 시험(115-6)
- B05_Profile_UI_Corridor_Modes.ts CORRIDOR_MODES 에 id proposal2(노면부만 그림 · 지형 = tinTerrain)
- test_115_6_corridor_tin.py 8(등록부 하나 더)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-08 22:43:16 +09:00