import sys; sys.path.insert(0,".") import pickle, collections, json import swdots segs,texts=pickle.load(open('cache_옥성교P1.dxf.pkl','rb')) swdots.segs=segs B=json.load(open('okpos.json',encoding='utf-8')) for nm,(x0,x1,cx) in (('front',(569700,577400,573552)),('side',(588700,596400,592541))): D=swdots.dots(x0,x1,321300,324000) lev=collections.defaultdict(list) for d in D: if d[2]==22.5: lev[d[1]].append(round(d[0]-cx,1)) print(nm,[(k,len(v)) for k,v in sorted(lev.items())]) # model centers of z for m in ['B1','B2','B3','B4','B5','B6','B7','B8']: zs=collections.Counter(round((b['bb'][2]+b['bb'][5])/2+309179.8,1) for b in B[m]); print(m,B[m][0]['dia'],B[m][0]['shape'],dict(zs))