首先请注意,我的计算机上没有安装solidworks,但是要为项目使用这些文件。
Solidworks能够为文件属性创建自定义选项卡。在这个选项卡中,您可以找到有关在solidworks中生成的模型(部分)的所有信息。
我读取了所有这些信息,并将其存储在.txt文件中,参见图像。在这个信息中,你可以找到零件的材料类型,我的问题就在这里。

我知道材料类型,但是在solidworks中,用户也可以将custom materials分配给自定义属性中定义的材料。例如,材料只是普通的木材,但用户希望这种木材是粉红色的。
是否可以读出自定义属性中附加到材料上的custom materials?
发布于 2016-04-04 14:31:42
如果没有安装SOLIDWORKS,则可以使用文档管理器 (需要活动SOLIDWORKS订阅才能获得密钥)访问自定义属性:
String sLicenseKey = "Your key from SOLIDWORKS";
SwDmDocumentOpenError nRetVal = 0;
SwDmCustomInfoType customInfoType;
SwDMClassFactory swClassFact = new SwDMClassFactory();
SwDMApplication swDocMgr = (SwDMApplication)swClassFact.GetApplication(sLicenseKey);
SwDMDocument17 swDoc = (SwDMDocument17)swDocMgr.GetDocument("C:\Filepath", SwDmDocumentType.swDmDocumentPart, false, out nRetVal);
SwDMConfigurationMgr swCfgMgr = swDoc.ConfigurationManager;
SwDMConfiguration14 swCfg = (SwDMConfiguration14)swCfgMgr.GetConfigurationByName("Config Name");
String materialProperty = swCfg.GetCustomProperty2("Property Name", out customInfoType);发布于 2016-03-24 14:54:26
要阅读材料属性,请尝试:
ModelDoc2 swModel = (ModelDoc2)swApp.ActiveDoc;
PartDoc swPart = (PartDoc)swModel;
double[] propertyValues = swPart.MaterialPropertyValues;根据SOLIDWORKS文档
材料值包括颜色(R、G、B值)、反射率(环境、漫射、镜面、亮度)、透明度和发射率。
参数或返回值的格式是一个双倍数组,如下所示: R、G、B、环境、漫射、光谱、亮度、透明度、发射
所有元素必须在0到1的范围内。
https://stackoverflow.com/questions/36173220
复制相似问题