--- name: project-ungokgyo-p1-model-bom description: 운곡교P1 모델 기준 철근재료표 재작성 + 도면 재료표 대비 비고 (2026-10-16 산출물 위치·방법·결과) metadata: node_type: memory type: project originSessionId: a82a1be1-cf11-4d33-988f-0c35b9b726d4 modified: 2026-10-16T05:18:38.809Z --- 2026-10-16 사용자 요청: 도면 재료표(3.dxf)와 모델에서 작성된 철근으로 재료표를 새로 뽑고, 서로 다른 점을 비고란에 작성. **산출물**: `D:\★Pier 자료\심수석님 검토 파일\검토_운곡교P1\철근재료표_모델기준_비고.xlsx` (시트: 요약 / 철근재료표_모델기준 / 비고코드설명 / 모델_개별철근). 생성 스크립트 `...\검토_운곡교P1\스크립트\make_model_bom.py <출력xlsx>` (rhino3dm·openpyxl·ezdxf 는 pip --target 폴더 필요; 3.dxf 와 운곡교p1.3dm 은 바이브코딩 폴더에서 직접 읽음). **최신판(사용자 요청 "재료표랑 똑같이 만들고 → 모델 재료표 → 대조·비고")**: `...\검토_운곡교P1\철근재료표_도면_모델_대조.xlsx` (시트: ④요약 / ①도면 재료표(재현) / ②모델 재료표 / ③대조·비고 / ⑤코드설명 / ⑥모델_개별철근), 스크립트 `스크립트\make_bom_compare.py` (앞의 `철근재료표_모델기준_비고.xlsx`·make_model_bom.py 는 1차판). 모델 치수 A~J 는 중심선 직선을 연장한 꼭짓점 사이 거리로 추출(C1~C8·기초·S·P1·P4·P5·B9·B10 도면과 일치), P3 A·B 는 추출 불가(미추출 표시), IV/X 는 user string(w_model, b_sched, a_sched). 판정: 일치 21 / 반올림 5 / 도면빈칸·미추출 4(C7·C8 R, P3, B9) / 차이 7(C9~C13, UA1, B12). **도면(DXF)판 (사용자: "엑셀은 비교가 힘들다")**: `...\검토_운곡교P1\3_재료표_도면모델대조.dxf` (+ `_SD400.png`/`_SD500.png` 미리보기). 마크마다 위 줄=도면값, 아래 줄=모델값, 다른 칸 색(레이어 `대조_다름(주황)` 등), 오른쪽 판정/비고/비고3(KDS, 자홍 ACI 6). 스크립트 `스크립트\make_bom_dxf.py <추출데이터\재료표_대조결과.json> <출력.dxf>` — JSON 은 make_bom_compare.py 가 xlsx 와 함께 생성. 3.dxf 의 스타일·레이어를 상속하고 내용은 비운 뒤 새로 그림, 글자 스타일 KR_TBL(malgun.ttf). 엑셀이 열려 있으면 xlsx 저장 실패(PermissionError)하나 JSON 은 갱신됨. **방법(1차판)**: 모델 철근 Brep 의 user string(mark, dia, shape, design_length, coupler_length)을 마크별 합산 = 재료표식 길이(각진 치수 합+커플러), 중심선(`P1-RC--`) 샘플링 길이 = 굽힘 반영 실길이. P3·P4 는 반원 2조각=1링으로 개수 환산. 도면 표는 3.dxf TEXT 를 x/y 로 파싱(합계가 도면 인쇄값과 일치 검증함). **결과**: 개수·길이 불일치 UA1(모델 없음 -377.848 m), B12(34↔28본 -46.8 m), C9~C13 길이(-98.104 m = 폭 1.407↔작도값 -20.948 + 근사 -77.156). 나머지 일치. SD400 총길이 도면 5801.619 / 모델 5325.667, SD500 4990.106 / 4943.309. 비고 3 열은 KDS 기준 상이(마젠타 글자). **현재 상태 (2026-10-16 오후 저장)**: 엑셀·DXF 대조본 + 모델 코드 표식(21세트) 모두 완성, 사용자가 표식을 하나씩 확인하는 단계 ("보고 하나씩 확인해 볼께"). 아래 '표식 최종판'·'표식 내용·색' 항목이 최신. 검토에서 틀린 판정이 나오면 해당 칸만 도면·모델 재측정 후 NOTE/KDS 사전 수정 → make_bom_compare.py → make_bom_dxf.py 순서로 재생성. 미해결: C7·C8 굽힘 반지름 모델 수정(라이노 객체 변경 전 사용자 확인), P3 A·B 모델 치수 미추출, 겹이음 6.8% 총계 행 산식 불명(모델 미산출). **모델 표식 파일 (2026-10-16)**: 엑셀 ⑤비고코드설명의 M-/D- 코드 위치를 라이노 모델에 표식으로 넣어 새 파일 `...\철근 모델랑 운곡교P1_바이브코딩\운곡교p1_대조코드표식.3dm` 로 저장(원본 운곡교p1.3dm 은 그대로). 레이어 `P1::검토표시_대조코드::{주황_도면모델 10 / 노랑_도면내부 14 / 진한노랑_기준모델 8 / 회색_미확인 4}`, 코드당 구슬(R150)+지시선+TextDot(이름 `대조_<코드>`, user string code/text), 총 36개(M-1~M-13, D-4~D-9, D-15~D-18, D-20~D-23). 기존 `P1::검토표시`(선행 E-/M- 코드 14세트, 42객체)는 사용자 허락(2026-10-16)으로 새 파일에서만 삭제함(레이어는 빈 채로 남김, 원본 운곡교p1.3dm 에는 그대로 있음, 삭제 직전 상태는 `운곡교p1_대조코드표식.3dmbak`). 위치는 중심선 좌표로 계산(마커 목록 JSON 은 세션 임시폴더), 도면에 위치가 없는 M-13(UA1)은 기초 중앙 임의 위치. SaveAs 로 라이노 현재 문서가 새 파일로 바뀜. **표식 최종판 (2026-10-16 오후)**: 36세트가 너무 많다는 요청 → 사용자가 엑셀 ⑤비고코드설명 캡처(`검토_운곡교P1\너가 모델에서 찾아서 넣어야할 부분이 22개 내용이 이거야.png`, 표 행 21개 = M-1~M-13, D-4/D-5, D-6, D-7, D-8, D-9, D-15~D-18, D-20~D-23, E-01)를 기준으로 줌. → 코드 행당 1세트, 총 21세트를 `P1::검토표시_코드표::{주황·노랑·진한노랑·회색}` 에 추가(글자=코드만, 설명은 user string `text`·엑셀 코드표), 이전 36세트 `P1::검토표시_대조코드` 는 삭제하지 않고 레이어만 숨김(사용자 삭제 허락 시 삭제). 파일 `운곡교p1_대조코드표식.3dm` 저장됨. **표식 내용·색 (2026-10-16 오후, 사용자 "추천대로")**: 21세트 각 객체 user text 에 code/gu/content/marks/table_color/table_color_basis/detail(엑셀 ③ 비고 전체)/where 입력. 색·레이어는 엑셀 ③ 칸 색 기준: 차이(주황) M-5·M-13·D-4/D-5·D-6·D-15~D-18, 반올림(파랑) D-7, 빈칸·미추출(노랑) D-9, 나머지 14개는 '표에 안 잡힘(회색)' (위치·기준·미확인은 표 칸이 일치로 나오기 때문). 보기 스크립트 `스크립트\표식_내용보기.py` (RunPythonScript; 표식 선택 후 실행=내용 창, 선택 없이 실행=클릭 자동 창 켜기/끄기, 구문만 검사·창은 사용자 실기 테스트 전). 레이어는 이름만 바꿔 재사용(삭제 없음). **시작 스크립트·레이어 (2026-10-16 저녁)**: `스크립트\라이노_시작.py` = MCP 서버(9876) + 표식 자동 보기 한 번에(구문 검사만, 실행 테스트 전). rhino_mcp_client.py 와 표식_내용보기.py 는 별개라 동시 사용 가능하나, 표식 창이 떠 있으면 MCP 명령이 대기함 → 내가 라이노 작업할 땐 자동 보기 끄기. 사용자 요청으로 `P1::검토표시`, `P1::검토표시_대조코드`(+하위)는 끄고 잠금(삭제 없음), `P1::검토표시_코드표`만 켬. **정정 대기 (2026-10-16)**: B12 는 도면대로 34본이 맞음(내가 28본으로 잘못 배치·D-16 오판) → 이 문서의 엑셀·DXF·표식에 적힌 "B12 34↔28 도면 내부 불일치(D-16)"는 잘못된 판정, 사용자가 "기억만 해둬"라고 해서 아직 수정 안 함. [[project-ungokgyo-b12-34-correct]] **사용자 확인 사항**: 도면 재료표 치수는 철근 중심끼리 직선으로 이은 각진 치수(내면반지름 미반영)이고, 모델은 내면반지름을 넣어 그리는 것이 맞다 → 굽힘 때문에 모델 중심선 실길이가 짧은 것은 차이로 세지 않는다. [[feedback-kds-rebar-bend-radius]] **Why:** 사용자가 재료표를 도면↔모델 비교용으로 보고서에 쓸 예정. **How to apply:** 사용자가 표 검토 후 판정이 바뀌면 make_model_bom.py 의 NOTE/KDS 사전을 수정해 다시 생성. DXF 표(색 62 비고 3) 형태가 필요하면 별도 요청 확인. [[project-ungokgyo-p1]]