许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Creo二次开发常用函数(12):基准坐标系

Creo二次开发常用函数(12):基准坐标系

阅读数 24
点赞 0
article_banner


  访问基准坐标系
 

   ProCsys代表了基准坐标系,以下三个函数对基准坐标系的操作。
 

   ProSolidCsysVisit() --遍历实体中的基准坐标系
 

   ProCsysIdGet() --获取指定坐标系的标识符,用于以后在此坐标系中生成几何元素。
 

   ProCsysInit() --由指定的Id值获取坐标系的句柄
 


   /*=========================================================================*\
 

       Function: ProUtilCollectSolidCsys()
 

       Purpose: 返回实体的坐标系集合
 

       Returns: PRO_TK_NO_ERROR - 成功;
 

PRO_TK_BAD_INPUTS - 无效的参数

转载请注明出处:http://blog.csdn.net/jh2005 \*=========================================================================*/
 
ProError ProUtilCollectSolidCsys(

        ProSolid    p_solid,    /* In:  实体的句柄*/

        ProCsys    **p_csys    /* Out: 基准坐标系的返回值,本函数进行了内存分配,

                                               但是没有回收,必须用ProArrayFree()

                                               进行内存回收。*/


   )
 

   {
 

       ProError    status;
 



       if( p_csys != NULL )
 

       {
 

   status = ProArrayAlloc( 0, sizeof(ProCsys), 1, (ProArray*)p_csys );
 


   if( status == PRO_TK_NO_ERROR )
 

   {
 


      status = ProSolidCsysVisit( p_solid, 
 

   (ProCsysVisitAction)ProUtilCollect3ParamOpaqueVisitAction,
 

                   (ProCsysFilterAction)ProUtilDefaultFilter,
 

                   (ProAppData)&p_csys );
 

      if( status != PRO_TK_NO_ERROR )
 

      {
 

   ProArrayFree( (ProArray*)p_csys );
 

   *p_csys = NULL;
 

      }
 

   }
 

       }
 

       else
 

   status = PRO_TK_BAD_INPUTS;
 



       return (status);
 

   }
 
ProError ProUtilCollect2ParamDBVisitAction(

        void    *p_object, /* In: The pointer to the object

   being visited */

        ProAppData    app_data) /* In: In fact it's ProArray** */

    {

        ProError status;

        ProArray *p_array;


        p_array = (ProArray*)((void**)app_data)[0];



        status = ProArrayObjectAdd(p_array, PRO_VALUE_UNUSED, 1, p_object );

        return (status);

    }



   ProError ProUtilCollect3ParamOpaqueVisitAction(
 

       void    *p_object, /* In: The opaque handle being visited */
 

       ProError    status, /* In:  The status returned by filter func */
 

       ProAppData    app_data) /* In: In fact it's ProArray** */
 

   {
 

       return (ProUtilCollect2ParamDBVisitAction((void*)&p_object, app_data));
 

   }
 

   ProError ProUtilDefaultFilter()
 

   {
 

       return (PRO_TK_NO_ERROR);
 

   }
 

转载于:https://www.cnblogs.com/jh0262/archive/2013/02/26/2946778.html


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空