R2:底板 / 刀片布局布线脚本、快照、截图与规划文档更新(含外壳、打印件、布线归档)

Co-Authored-By: Claude Opus 5.5 <[email protected]>
这个提交包含在:
zhou yang
2026-10-04 19:24:45 +08:00
共同撰写人 Claude Opus 5.5
父节点 cd01640c40
当前提交 cf7cc9cf90
共修改 759 个文件,包含 76962 行新增和 5299 行删除
+22
查看文件
@@ -0,0 +1,22 @@
import sys, io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace', write_through=True)
import win32com.client as wc
def prop(o,n):
v = getattr(o,n)
return v() if type(v).__name__ in ('method','function','builtin_function_or_method') else v
D = lambda x: x if hasattr(x,'_oleobj_') else wc.Dispatch(x)
app = wc.GetActiveObject('SldWorks.Application')
part = app.ActiveDoc
print('doc', prop(part,'GetTitle'))
b = part.GetBodies2(0, True) or []
fs = prop(D(b[0]), 'GetFaces')
print('faces', len(fs))
for f in fs:
fc = D(f); s = prop(fc,'GetSurface')
if not prop(s,'IsPlane'): continue
pp = [round(v,3) for v in list(prop(s,'PlaneParams'))]
fb = [round(v*1000,2) for v in prop(fc,'GetBox')]
try: sense = prop(fc,'FaceInSurfaceSense')
except Exception as e: sense = 'ERR'
print(' n=(%5.2f,%5.2f,%5.2f) p=(%7.2f,%7.2f,%7.2f) sense=%s box x %.2f~%.2f y %.2f~%.2f z %.2f~%.2f A=%.0f' % (
pp[0],pp[1],pp[2], pp[3]*1000,pp[4]*1000,pp[5]*1000, sense, fb[0],fb[3],fb[1],fb[4],fb[2],fb[5], prop(fc,'GetArea')*1e6))