Smart3D中COM label取OID值

Smart3D 中,各种对象均有唯一的OID作为唯一标识。在实际应用过程中,OID的查询、选择等是十分必要的,本文针对OID介绍一下使用COM查询对象OID的Label定制操作。


操作步骤:以获取piping parts的OID为例。

  1. 创建新的label,提取piping parts的name属性:

    x x x x x x x x x x x x

x x x x x x x x x x x x

2. 打开并编辑Rqe文件,添加接口为IJDobject,属性为OID;

x x x x x x x x x x x x

x x x x x x x x x x x x

            <RETURNED_PROPERTY Name=”PartOID” SQLType=”BStr”>

         <PATHS>

            <PATH SourceType=”*” SourceBOC=”PipingParts” DestinationInterface=”IJDObject” DestinationProperty=”OID” DestinationBOC=”” Concatenate=”No” PathSeparator=”” />

         </PATHS>

      </RETURNED_PROPERTY>

x x x x x x x x x x x x

x x x x x x x x x x x x

3. 编辑RFM文件,添加相关returned property;

注意是Returned Property Name;

x x x x x x x x x x x x

x x x x x x x x x x x x

插入下面两行:

               <TEXT Value=”PartOID: ” ToParse=”no” Visible=”yes” />

               <DATA Column=”PartOID” ToParse=”yes” Visible=”yes” />

  x x x x x x x x x x x x

x x x x x x x x x x x x

4. 保存,测试。

重新打开编辑界面,效果如下:

x x x x x x x x x x x x

x x x x x x x x x x x x

返回piping模块;使用tooltip,测试效果如下:

思考题,如何跳转的情况下如何获取目标对象的OID?比如从piping part获取到piperun的OID。

x x x x x x x x x x x x



示例:

<RETURNED_PROPERTY Name=”PipeRun ObjectID” SQLType=”BStr”>

         <PATHS>

            <PATH SourceType=”IJRtePathGenPart” SourceBOC=”” DestinationInterface=”IJDObject” DestinationProperty=”OID” DestinationBOC=”” Concatenate=”No” PathSeparator=”\”>

               <STROKES>

              <STROKE Interface=”IJRtePathGenPart” RelationCollection=”Owner” Recursive=”No” Filter=”First” IsVirtualRelationship=”No” ExitValue=”1″ />

               </STROKES>

            </PATH>

         </PATHS>

      </RETURNED_PROPERTY>

相关阅读:

Smart3D中与OID相关的几个自定义命令及相关操作

数字化工程设计公众号二维码
原文链接:查看原文  文章来源:数字化工程设计
🔗 分享 0

上5篇 more...

下5篇 more...