PLM之家PLMHome-工业软件践行者

如何获取Catia文档属性教程

[复制链接]

2018-1-18 09:28:06 2688 0

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82166
QQ
发表于 2018-1-18 09:28:06 来自手机 | 显示全部楼层 |阅读模式

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
CATIA的文档属性是开发过程经常需要获取的信息。在CATIA V5中,系统不仅提了“零件编号”等常用属性,还支持自定义扩展属性。值得注意的是属性值都需要一个数据类型,如下图所示,“长”自定义属性的属性值类型为“长度”。
3 x8 n/ G6 i; c+ t; }" n; e0 G2 z# \7 P0 S9 Y, y7 }

7 r" J6 h9 |. t% j. I$ \2 q( l" g查询CATIAttributesDescription接口4 h# ~! \- e. L3 m1 @8 _
0 }$ m& G2 s. v8 B+ r
CATIAttributesDescription是CAA中用来获取属性的接口,其包含FindByNLSName、FindByName和List三个方法。最常用的是通过List方法一次性获取所有的属性,此方法只能获取属性的名称和类型。
+ o9 N3 q3 S% n4 o6 `8 t' C0 z" g) l8 R" f0 Z6 u" P6 g& L! r
CATListValCATAttributeInfos attrInfoList;
. b6 r+ u# b- gpiAttrDesc->List(&attrInfoList);
) Z( S5 i3 o8 N8 T6 F$ M! Tfor (int i = 1; i <= attrInfoList.Size(); i++)) c) R3 Q) s. I+ @& r, ~" n6 h8 ]
{0 N! t/ _9 j7 l, ?& ]/ }8 u
    CATAttributeInfos attrInfo = attrInfoList[i];
* p' [3 e! I: v5 l& R/ V2 D    const CATUnicodeString& propertyName = attrInfo.Name(); //属性名. G1 O1 q8 z. W0 v
    const CATUnicodeString& valueType = attrInfo.Type()->Name(); //属性类型
0 ^/ j. V1 o) \, \/ y. Q6 x, `    cout << propertyName << "-" << valueType << endl;
# F- [  J$ e1 l& W}
' M) a6 d' g' Q% I! M8 u获取属性的属性值% p/ ~5 ]8 h, s0 H8 C, k* l! l
' f6 o. `# G( W" Q: r9 L
获取属性值的方法GetValue被定义在CATIInstance接口下,一般可以直接从对象查询接口获得。# Z. e; J) t9 l2 s7 B: a, M1 e

% Q2 m9 U3 H! C& r) Z, v/ b//获得对应属性名的属性值* G( s% C' N: ]( F7 P1 V; `
CATIValue *pValue = piInstance->GetValue(propertyName);
" F2 [* L* o& ^+ `6 \! {CATUnicodeString value = "";
/ c5 ?' S% k& e1 L- A7 }6 I2 {pValue->AsString(value);
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了