模型对象(ProMdl )
在 Creo Parametric 模式中,模型是顶级对象。例如,在零件模式下,模型是一个零件;在装配模式下,模型是一个装配体。
因此,对象ProMdl
用于所有那些其操作适用于任何类型模型的函数,例如文件管理操作和版本戳。
ProMdl
的声明如下:
typedef void* ProMdl;
ProMdl
对象的实例是针对更具体的 Creo Parametric 模式的对象。例如,ProSolid
是ProMdl
的一个实例,ProAssembly
和ProPart
是ProSolid
的实例。在 Creo Parametric TOOLKIT 中,所有这些对象类型都由不透明的句柄表示,并且你可以通过类型转换在这些类型之间进行转换。
模型项对象(ProModelitem
)
“模型项” 是一个通用对象,用于表示任何类型模型中包含的任何项,用于其操作适用于所有这些类型项的函数。(某些项,如 “版本戳”,保留其自己的对象类型。)
对象类型ProModelitem
是一个DHandle
(数据句柄),是一个结构,包含项类型、项的持久整数标识符以及对所属对象的句柄。
对象ProGeomitem
,本指南后面将描述的通用几何对象,是ProModelitem
的一个实例,并且是一个共享相同类型声明的DHandle
,可以使用ProModelitemByNameInit进行获取模型对象的模型项对象,注意模型对象和模型项对象不是一个东西。
ProModelitem
数据句柄的类型定义如下:
typedef struct pro_model_item { ProType type; //模型项对象类型 int id; //模型项对象特征标识 ProMdl owner; //模型项所有者,对于零件或组件的所有者是它们自身, } ProModelitem;
选择对象(ProSelection
)
一些 Creo Parametric TOOLKIT 函数需要 ProSelection 对象作为输入。在许多情况下,只需要程序集路径 ProAsmcomppath 和 modelitem,因此可以使用 ProSelectionAlloc() 或 ProSelectionSet()。在其他情况下,例如,当 ProSelection 需要标识特定绘图视图或几何图形项上的特定位置时,您可能还需要调用函数 ProSelectionViewSet()、ProSelectionUvParamSet() 和 ProSelectionPoint3dSet()。
与ProModelitem
(模型项对象)类似,ProSelection
对象(选择对象)在 Creo Parametric 数据库中标识一个模型项。然而,ProSelection
包含比ProModelitem
更多的信息,因此在需要额外信息的情况下,有时会用它来代替ProModelitem
。ProSelection
最重要的用途是作为交互式选择函数ProSelect()
的输出(因此得名ProSelection
)。
ProSelection
被声明为一个不透明指针,严格来说,它是一个WHandle
,因为尽管模型项是对 Creo Parametric 数据库项的引用,但其他信息不是。
对于 ProSelection 可以包含的每一项信息,都有一个 Creo Parametric TOOLKIT 函数来提取该信息。下表列出了这些项目。
Creo Parametric TOOLKIT 函数 | Creo Parametric TOOLKIT 对象 | 意义 |
---|---|---|
ProSelectionAsmcomp pathGet() | ProAsmcomppath | 获取装配体组件路径 |
ProSelectionModelitem Get() | ProModelitem | 从选择对象获取模型项 |
ProSelectionPoint3dGet() | ProPoint3d | 在成员坐标系中检索所选点的坐标。 |
ProSelectionUvParamSet() | ProUvParam | 将 UV 参数设置为选择对象。 |
ProSelectionDepthGet() | double | 获取选择深度(以屏幕坐标为单位) |
ProSelectionDistance Eval() | double | 评估两个项目之间的距离。对象可以是曲面、实体、曲面曲线、曲面节点或点。对象上的选定点将用作初始猜测。如果出现错误,p_result 将设置为 -1.0,所有参数都将设置为 0.0。注意: 此功能不适用于基准平面和轴。 |
ProSelectionViewGet() | ProView | 从选择对象获取视图的手柄。 |
ProSelectionWindow IdGet() | int | 检索进行选择操作的窗口的标识符。 |
ProSelectionDrawingGet() | ProDrawing | 对于表示在绘图中选择的实体的ProSelection ,返回从中选择这些实体的绘图模型句柄。 |
ProSelectionDwgtblcell Get() | several integers | 对于表示绘图表格单元格的 ProSelection,返回单元格的表格段、行和列。 |
引用对象(ProReference)
参考对象(引用对象)是在 Creo Parametric 中表示几何参考的一种替代方法。几何参考通常使用ProSelection
结构来表示。由于ProSelection
被设计为交互式选择项的结果,它在作为几何参考提供完整含义方面缺乏一些能力。
不透明的句柄ProReference
为几何引用提供了完整的功能,包括访问多个或缺失参考的函数。
函数 ProReferenceAlloc() 分配一个引用句柄。
模型项对象,选择对象和引用对象的互相转换
模型对象转模型项:ProModelitemByNameInit、ProMdlToModelitem
模型项转模型对象:ProModelitemMdlGet
模型项转选择对象:ProSelectionAlloc
选择对象转模型项:ProSelectionModelitemGet
选择对象转引用对象:ProSelectionToReference
引用对象转选择对象:ProReferenceToSelection