有一段时间没有发博文了,最近有人问到钣金件的相关操作,今天我们来看看钣金零件信息的读取。
Solidworks中钣金件是有一个单独的模块,里面有一些固定的文件夹结构。
最后这个文件夹中包含了展开状态时零件的信息。如长度与折弯线相关的信息都在这里面。
一般我们要找到长 宽 厚 折弯角 与距离 折弯方向 这些信息。
输出结果如下,有些小数的处理就忽略了。大家看看就行。
粗略的写了下,输入信息在这里。很多就是API帮助里面的例子,大家可以在中文翻译中查找到。
private void btnSheetmetal_Click(object sender, EventArgs e)
{
//连接到Solidworks
ISldWorks swApp = Utility.ConnectToSolidWorks();
swApp.CommandInProgress = true;
ModelDoc2 swModel = (ModelDoc2)swApp.ActiveDoc;
//钣金 变成平板模式的特征
List flatPatternFeatures = new List();
//Bounding Box草图
List boundingSketchesName = new List();
//获取当前钣金状态--这个已经过时
//swSMBendStateFlattened 2 = 弯曲变平;该模型回滚到FlattenBends功能之后,但恰好在相应的ProcessBends功能之前
//swSMBendStateFolded 3 = 折弯处已折叠;模型回滚到FlattenBends ProcessBends功能对之后
//swSMBendStateNone 0 = 不是钣金零件;没有SheetMetal功能
//swSMBendStateSharps 1 = 弯曲处处于锐利状态;零件回滚到第一个FlattenBends功能之前
var bendState = swModel.GetBendState();
if (bendState == 0)
{
swApp.SendMsgToUser("不是钣金零件!");
return;
}
// swApp.SendMsgToUser("当前状态" + bendState);
if (bendState != 2)
{
//swApp.Command((int)swCommands_e.swCommands_Flatten, "");
//设定当前钣金状态 平板