admin 发表于 2018-1-18 09:28:06

如何获取Catia文档属性教程

CATIA的文档属性是开发过程经常需要获取的信息。在CATIA V5中,系统不仅提了“零件编号”等常用属性,还支持自定义扩展属性。值得注意的是属性值都需要一个数据类型,如下图所示,“长”自定义属性的属性值类型为“长度”。


查询CATIAttributesDescription接口

CATIAttributesDescription是CAA中用来获取属性的接口,其包含FindByNLSName、FindByName和List三个方法。最常用的是通过List方法一次性获取所有的属性,此方法只能获取属性的名称和类型。

CATListValCATAttributeInfos attrInfoList;
piAttrDesc->List(&attrInfoList);
for (int i = 1; i <= attrInfoList.Size(); i++)
{
    CATAttributeInfos attrInfo = attrInfoList;
    const CATUnicodeString& propertyName = attrInfo.Name(); //属性名
    const CATUnicodeString& valueType = attrInfo.Type()->Name(); //属性类型
    cout << propertyName << "-" << valueType << endl;
}
获取属性的属性值

获取属性值的方法GetValue被定义在CATIInstance接口下,一般可以直接从对象查询接口获得。

//获得对应属性名的属性值
CATIValue *pValue = piInstance->GetValue(propertyName);
CATUnicodeString value = "";
pValue->AsString(value);
页: [1]
查看完整版本: 如何获取Catia文档属性教程