前言
本人是从事机械,锂电行业的产线设计,包含工艺流程的设计和设备制造的开发。
机械和IT行业不同,IT行业由于,工作者本身就是身在IT行业内,会有各种提高工作效率的便利小工具。
而机械行业,在这方面是比较欠缺的,而又有大量的重复,浪费时间的工作需要处理。
由于工作原因,本人需要在一个项目里绘制各种不同尺寸,但是形状类似的料仓,所以用python写了个可以重复出料仓三维图的小工具。
一、代码内容
1. 和solidorks建立连接
#sw VBA接口引入
sw_app = win32.Dispatch("Sldworks.application") #引入sldworks接口
sw_app.Visible = True #是否可视化
arg_Nothing = win32.VARIANT(pythoncom.VT_DISPATCH, None) #转义VBA中不同变量nothing
sw_app.OpenDoc(bin_path,1) #打开二次开发源文件
Part = sw_app.ActiveDoc #sldworks 最高访问权限
以上代码,参考
基于Python的Solidworks二次开发方法
作者:派大星仙人
2. 通过录制宏文件获取vb代码
用录制宏的方法,绘制一个标准的,料仓源文件。源文件需要保存起来,后期需要通过更改这个源文件来生成新的料仓文件。
然后打开宏文件(宏文件后来不小心删除就不贴了,和别的作者内容也差不多)进行编辑,复制出里面的vb代码,把需要更改的内容贴到python中,进行优化。
def bin_dim(dim):
myDimension = Part.Parameter("D1@草图1")
myDimension.SystemValue = dim
def bin_high(high):
myDimension = Part