Creo二次开发--函数(七)--尺寸遍历操作函数
2013-02-02 21:43
423 查看
特别声明:由于最近发现好多网站在转载的过程中没有声明出处,更有甚者将文章直接改头换面就作为自己的东西了。所以放缓了发布的节奏。
另外,原本打算的实例部分也将直接发布到豆丁网上。下周将完成尺寸部分修改的实例。将给出具体的详细说明。
ProSolidDimensionVisit--访问实体中的所有尺寸对象。需要定义访问动作函数及过滤函数。
以下代码来自Toolkit的帮助文件,实现了将对象的所有尺寸对象收集到pp_dims这个数组中的过程。
转载请注明http://blog.csdn.net/jh2005
另外,原本打算的实例部分也将直接发布到豆丁网上。下周将完成尺寸部分修改的实例。将给出具体的详细说明。
ProSolidDimensionVisit--访问实体中的所有尺寸对象。需要定义访问动作函数及过滤函数。
以下代码来自Toolkit的帮助文件,实现了将对象的所有尺寸对象收集到pp_dims这个数组中的过程。
/*=========================================================================*\ 目的: 尺寸访问动作函数,将所访问的尺寸对象添加到data所指示的数组中 返回值: PRO_TK_NO_ERROR - success; \*=========================================================================*/ ProError ProUtilCollectDimVisitAction (ProDimension *dimension, ProError filter_status, /* ignored */ ProAppData data) { ProDimension **p_dims = (ProDimension**)data; ProDimension cur_dim; cur_dim.owner = dimension->owner; cur_dim.id = dimension->id;
//转载请注明http://blog.csdn.net/jh2005 cur_dim.type = dimension->type; ProArrayObjectAdd((ProArray*)p_dims, PRO_VALUE_UNUSED, 1, &cur_dim); return PRO_TK_NO_ERROR; } /*=========================================================================*\ Function: ProUtilCollectDimensions() Purpose: Return a list of dimensions in the part, assembly, or drawing Returns: PRO_TK_NO_ERROR - success; PRO_TK_BAD_INPUTS - invalid parameters \*=========================================================================*/ ProError ProUtilCollectDimension( ProMdl model, /* In: The handle to the model */ ProBoolean refdim, /* In: PRO_B_TRUE for collecting reference dimensions, PRO_B_FALSE for collecting standard dimensions */ ProDimension **pp_dims /* Out: ProArray with collected dimensions. The function allocates memory for this argument, but you must free it. To free the memory, call the function ProArrayFree()*/ ) {
//转载请注明http://blog.csdn.net/jh2005 int n; ProError status; status = ProArrayAlloc( 0, sizeof(ProDimension), 1, (ProArray*)pp_dims); if( status == PRO_TK_NO_ERROR ) { status = ProSolidDimensionVisit( (ProSolid)model, refdim, (ProDimensionVisitAction)ProUtilCollectDimVisitAction, (ProDimensionFilterAction)NULL, (ProAppData)pp_dims); } ProArraySizeGet((ProArray*)pp_dims, &n); if (n==0) { status = PRO_TK_E_NOT_FOUND; } return (status); }
转载请注明http://blog.csdn.net/jh2005
相关文章推荐
- Creo二次开发异步模式——字符串操作函数
- Creo二次开发--函数(5)--字符串类函数
- Creo二次开发--内存清理函数
- Creo二次开发--函数(11)--基准轴
- Creo二次开发--函数(12)--基准坐标系
- Creo二次开发--函数(9)
- Creo二次开发--函数(8)--质量函数
- Creo二次开发--函数(3)--菜单类函数
- Creo二次开发--内存清理函数
- Creo二次开发--函数(14)--与颜色有关的函数
- Creo二次开发--函数(6)--选择对象
- Creo二次开发--函数(10)--配置类函数
- ProE二次开发 Creo二次开发 模型遍历
- Creo二次开发--函数(1)--可扩展数组
- 一个带游标的遍历数据的函数|数据库操作|软件开发
- Creo二次开发--函数(2)--信息类函数
- 一个带游标的遍历数据的函数|数据库操作|软件开发
- Creo二次开发——文件操作
- Creo二次开发--函数(4)--常用操作类函数
- Creo二次开发--函数(13)--基准点与基准平面