Files
Pier_v1/Code/review_pipeline/dots_method/swb7.py
T
ahnyongjooandClaude Sonnet 5.5 964a841de1 chore(rebar): Pier_T_rebar 작업 폴더 초기 구성 및 외부 의존 파일 통합
- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환
- Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용
- pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관)
- worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md)
- D:\Rhino-MCP 경로 참조를 새 위치로 치환

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-28 11:20:18 +09:00

18 lines
1.1 KiB
Python

import sys; sys.path.insert(0,".")
import json, collections, io
from swdots import dots
B=json.load(open('swpos.json',encoding='utf-8'))
o=io.open('swb7.txt','w',encoding='utf-8')
D=dots(51600,59200,-282000,-274400,maxlen=40)
sz=collections.Counter((d[2],d[3]) for d in D); o.write(u'plan dots %d sizes %s\n'%(len(D),sz.most_common(8)))
CX,CY=55406.2,-278231.2
for s in sorted(set(d[2] for d in D if d[2]==d[3])):
P=[(round(d[0]-CX,1),round(d[1]-CY,1)) for d in D if d[2]==s and d[3]==s]
xs=sorted(set(p[0] for p in P)); ys=sorted(set(p[1] for p in P))
o.write(u'size %.1f n=%d x:%d [%s..%s] y:%d [%s..%s]\n'%(s,len(P),len(xs),xs[0],xs[-1],len(ys),ys[0],ys[-1]))
mx=sorted(set(round((b['bb'][0]+b['bb'][3])/2,1) for b in B['B7'])); my=sorted(set(round((b['bb'][1]+b['bb'][4])/2,1) for b in B['B7']))
o.write(u'model B7 x %s\n y %s\n'%(mx,my))
pts=collections.Counter((round((b['bb'][0]+b['bb'][3])/2,1),round((b['bb'][1]+b['bb'][4])/2,1)) for b in B['B7'])
o.write(u'model B7 positions %d (unique %d)\n'%(sum(pts.values()),len(pts)))
b=B['B7'][0]; o.write(u'sample %s\n'%b)