深浅主题切换
1. 参数化选择界面
数据表
- 打开包含参数化模型文件夹
- 编辑目录内的Excel数据文件,此文件数据为参数化界面数据
表格第1行为标题行,对应界面中的参数名称
表格中的不同表中的数据是1对多关系数据
数据行中的数据符号‘--’前面的为型号数据,后面的为型号说明文字
如需在界面中显示可编辑的数据,则表格数据需为如下类似格式。
1200--[600~2200/10]
--前面为默认数据,[ ]中的600~2200为数据范围,/10 为数据输入精度
所有参数化Excel表格文件,需要确保唯一,不重名!
界面配置
- 编辑目录内的 DXconfig.ini 文件。此文件为呈现界面UI数据的配置文件
- 首次编写时,请删除②处以后数据,方框内填写对应EXCEL文件名
- 型号规则与默认型号用英文‘,’隔开,并且数据项一一对应
- 型号规则数据为Excel表的标题数据
- 默认型号为对应标题数据下的1组数据(符号‘--’之前)
- 分类选项数据中3D名称对应文件夹名称与下面的选项名称
- [3D]下一行的baseModel数据为 3D文件夹内的模型名称
- 界面中的模型其他数据为所有不在型号规则中的标题列数据
程序文件
- 目录内的 data.dkcs 文件为参数化模型的程序文件
- 在参数化界面中打开编辑时,目录无此文件会内将自动创建
2. 程序编辑
说明
- 以零件名称查找零件必须加上零件后缀名。(有多个相同零件时随机取一个)
- 以 零件ID (CID) 查找零件可以唯一确定零组件
- PID 可确定特征面,而不用更改原有零件特征
- 参数获取格式=参数(长度)
- 其他修改命令格式:命令{"命令名称",参数1,参数2,...};
界面操作
- 插入PID
在 Solidworks 中选择一个零件的面,点击此按钮,将在光标处创建所选中面的ID,此ID可作为配合特征参数使用
- 插入零件ID
在 Solidworks 装配体中,选中一个零件,点此按钮,将在光标处创建此零件在此装配体中的唯一ID
- 检查代码
在编写完脚本代码后,请点此按钮,确认此脚本代码正确
1. 进度显示
命令{"进度",显示文本};
示例:
命令{"进度","设置轨道长度"};
命令{"进度",进度值,显示文本};
进度值:0~100
示例:
命令{"进度",30,"设置轨道长度"};
2. 删除模型
命令{"删除模型",模型名称集合};
- 模型名称:零件名称+后缀 或使用 零件ID
- 模型名称集合=null时,删除所有压缩零件
示例:
//删除指定名称模型
var dels=new List<string>{"VM100.SLDASM","HC100.SLDASM"};
命令{"删除模型",dels};
//删除所有压缩零件
命令{"删除模型",null};
命令{"删除模型",子装配名称, 模型名称集合};
- 子装配模型中查找
示例:
var dels=new List<string>{"VM100.SLDASM","HC100.SLDASM"};
命令{"删除模型","马达组件.SLDASM",dels};
3. 删除特征
命令{"删除特征",特征名称};
示例:
命令{"删除特征","切除-拉伸3"};
命令{"删除特征",子零件名称,特征名称};
示例:
命令{"删除特征","K85-1M1J01-A101.SLDPRT","凸台-拉伸1"};
4. 删除压缩
命令{"删除压缩"};
- 删除顶级零件所有压缩特征
示例:
命令{"删除压缩"};
命令{"删除压缩",子零件名称};
删除指定零件压缩特征
示例:
命令{"删除压缩","K85-1M1J01-A101.SLDPRT"};
5. 选择文件夹模型
命令{"选择文件夹模型",模型文件夹名称,模型名称集合};
- 总装配模型中查找;零件名称+后缀
示例:
var sels=new List<string>{"VM100.SLDASM","HC100.SLDASM"};
命令{"选择文件夹模型","马达安装",sels};
命令{"选择文件夹模型",子装配名称,模型文件夹名称, 模型名称集合};
- 子装配模型中查找
示例:
var sels=new List<string>{"VM100.SLDASM","HC100.SLDASM"};
命令{"选择文件夹模型","马达组件.SLDASM","马达安装",sels};
6. 切换配置
命令{"切换配置",顶级配置名称};
- 顶级零件配置
示例:
命令{"切换配置","KK6010D-200-VM100"};
命令{"切换配置",子零件名称,配置名称};
- 指定零件配置
示例:
命令{"切换配置","SENA-1200.SLDPRT","SENA3-200"};
7. 修改尺寸
命令{"修改尺寸",尺寸名称,尺寸值};
- 修改顶级零件
示例:
命令{"修改尺寸","D2@基体-法兰1","500"};
命令{"修改尺寸",子零件名称,尺寸名称,尺寸值};
- 修改指定零件
示例:
命令{"修改尺寸","SENA-1200.SLDPRT","D1@凸台-拉伸1","200"};
8. 修改属性
命令{"修改属性",子零件名称,属性名称,属性值};
示例:
命令{"修改属性","KS&KK40.SLDPRT","料号","R1-XXX"};
9. 重命名
命令{"重命名",子零件名称,新名称};
- 子零件名称 包括后缀,新名称 不需要后缀
示例:
命令{"重命名","SENA-1200.SLDPRT","SENA-500"};
10. 配置重命名
命令{"配置重命名",子零件名称,旧配置新名称,新配置名称};
示例:
命令{"配置重命名","SENA-1200.SLDPRT","SENA-500","SENA-600"};
11. 装配
命令{"装配"被装配源零件名称,子装名称};
- 被装配零件带后缀
- 装配至顶层装配体,子装名称=null
示例:
命令{"装配","KK40-VM50.SLDASM",null};
命令{"装配","KK40-VM50.SLDASM","电机组件.SLDASM"};
命令{"装配",被装配源零件名称,子装名称,目标零件名称};
- 被装配零件带后缀
- 装配至顶层装配体,子装名称=null
- 目标零件名称 可与源零件名称不同
- 目标名称与源名称不同时,此命令之后须有 结束装配修改 命令,中间可插入其他命令,中间命令对打开的零件有效
示例:
命令{"装配","KK40-VM50.SLDASM","电机组件.SLDASM","KK40-VM50-2.SLDASM"};
命令{"配置重命名","SENA-1200.SLDPRT","SENA-500","SENA-600"};
命令{"修改属性","KS&KK40.SLDPRT","料号","R1-XXX"};
...
命令{"结束装配修改"};
命令{"装配",被装配源零件名称,子装名称,目标零件名称,替换字符};
- 替换字符:
new string[]{旧字符串,新字符串}
- 其他使用同上一条装配命令
示例:
var replaces=new string[]{"KK40","KK4005"}
命令{"装配","KK40-VM50.SLDASM","电机组件.SLDASM","KK40-VM50-2.SLDASM",replaces};
命令{"配置重命名","SENA-1200.SLDPRT","SENA-500","SENA-600"};
命令{"修改属性","KS&KK40.SLDPRT","料号","R1-XXX"};
...
命令{"结束装配修改"};
12. 结束装配修改
命令{"结束装配修改"};
- 配合装配命令2、3使用
示例:
命令{"结束装配修改"};
13. 配合
命令{"配合",被配合零件,被配合零件的特征字符串,配合零件的特征字符串,配合类型,配合对齐,是否翻转,距离};
- 被配合零件: 特别注意不要在配合之前修改被配合零件及其父级零件
- 配合零件的特征字符串:PID字符串 或 特征名称 或 实体名称
- 配合类型:0=重合,1=同心,3=平行,5=距离
- 配合对齐选项: 0=对齐,1=相对,以面的法向方向为参考!
- 是否翻转: true 或 false
- 配合距离: 距离配合时有效
示例:
//1、PID
var pid1="yDIAAAMAAAD//v8AAAAAAP//AQALAG1vRmFjZVJlZl9jAQAAAAAAAAAKAAAAAAIAAAAAA....";
var pid2="yDIAAAMAAAD//v8AAAAAAP//AQALAG1vRmFjZVJlZl9DFGFFF....";
命令{"配合","KS&KK40.SLDPRT",pid1,pid2,0,1,false,0};
//2、特征名称
命令{"配合","KS&KK40.SLDPRT","前视基准面","前视基准面",0,1,false,0};
//3、实体名称
命令{"配合","KS&KK40.SLDPRT","F1","F2",0,1,false,0};
14. 设置零件状态
命令{"设置零件状态",零组件名,状态类型};
- 状态类型:0=压缩,1=轻化,2=全部还原(包括子零件),3=还原,4=全部轻化(包括子零件),6=刚性,7=柔性,8=不在材料明细表,9=在材料明细表
- 刚性与柔性只适用于装配体
示例:
//设置组件柔性
命令{"设置零件状态","KS&KK40.SLDASM",7};
15. 修改孔
命令{"修改孔",孔特征名称,大小};
- 孔特征名称(标准孔):"M3 螺纹孔1","M4 六角凹头螺钉的柱形沉头孔1"。。。
- 大小 :"M3","M4"。。。
示例:
命令{"修改孔","M3 螺纹孔1","M4"};
命令{"修改孔",孔特征名称,大小,标准,类型};
- 标准 :8=ISO,9=JIS,13=GB
- 类型 :139=沉头孔,140=平头孔,144=螺纹孔,710=销钉孔
示例:
命令{"修改孔","M3 螺纹孔1","M4",8,139};
命令{"修改孔",孔零件名称,孔特征名称,大小};
示例:
命令{"修改孔","KS&KK40.SLDPRT","M3 螺纹孔1","M4"};
命令{"修改孔",孔零件名称,孔特征名称,大小,标准,类型};
示例:
命令{"修改孔","KS&KK40.SLDPRT","M3 螺纹孔1","M4",8,139};