PLM之家PLMHome-工业软件与AI结合践行者

teamcenter ITK开发的基本知识点

[复制链接]

2013-12-3 20:59:25 5048 1

admin 发表于 2013-12-3 20:54:57 |阅读模式

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点
  R* ?  H( j: c, d4 V- j, J: s( ~( y' w1 Q+ P; x
ITK 函数格式
2 a# {+ Z0 k( x# z; L        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );
7 [( u, Z& D. r* V4 N0 x* R1 i        OF使用void MEM_free(void *pointer)释放内存
( O3 r& o* b0 c2 l) `' q/ b& \4 y! `$ b& [: _6 o

3 I* i5 L8 \6 G; a  i/ ^Include Files
- I2 {% b! s" C( Y        #include <TC/tc.h>必须
4 O* P' `6 I/ c9 }/ V. G9 f
, q% s5 u& m, J; e  M4 E* f9 }: P: U

  |/ A: L. \2 z; |. s: e) B# l* Stag_t data type
5 b! f& F: \0 `6 z  q7 B所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer
: b1 P' N/ e1 G9 Y( t' I
8 ?" y; v" J4 i
) ]* }, [. Y& H  t& e. \. b- i, S
Error Message Handler (EMH)
' p7 W0 k2 b& N9 S当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。
# @0 D5 e' v6 |0 E7 s% N5 J9 ~4 G% O9 Z. H2 d7 e$ R
  `6 T' S8 H5 g2 s3 h: y
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

admin 发表于 2013-12-3 20:59:25

admin 沙发

2013-12-3 20:59:25

& x% J6 _& t% [; C/ w+ ?4 x
( K$ b/ ^$ @3 R. T4 v
OF类型的变量一定要通过MEM_free()进行释放
- Z1 s, z  L1 i" `' x4 i5 nvoid MEM_free(void *pointer)1 X- m9 O' v" k5 V% A7 \" Z

. c$ E0 l  Z( c+ n  E
4 w9 R- j; q2 @( L
MEM_alloc()' F0 ~6 |+ @- P
MEM_crealloc()( O) t" {& ]: L7 ^! R/ F6 T
MEM_free()8 o% c" s* M8 a- P- y
MEM_realloc()( b/ }) Q+ z  a2 @: l( \
使用以上内存管理函数,也可以使用C内存管理函数
  T  G# Z) ~+ U- |" ]: a; xInclude file: <mem.h>
( ?0 l3 p6 D& l; Z* v- m- A, _* E8 ]5 Q" v1 u% S$ f* F6 {4 m- U( b

. v- r4 Q5 r6 b, L% w  N" y8 _. T; a函数返回值不为ITK_ok,则有错误发生,必须进行处理; @- U( `- n- Y! v6 S
EMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
3 A8 k9 F" O. h可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。
$ b9 N2 S% k% ?5 |
1 g! s" ?% P$ y/ a; w

2 |& c7 r$ C0 Z: G" ~$ J" y  |1 F
  M1 s2 ^& X: D5 E' K) T

6 v$ [5 C7 o4 ^# ?, x/ o
  1. status = AOM_save( );1 M. s! B; @' w
  2. if (status != ITK_ok )
    : O8 a. I" R' S! ?) V9 f
  3. {$ Z7 `+ v+ M9 O/ i/ `  U
  4. EMH_ask_error_text(status, &message);8 c9 w3 h+ D* A) P' [9 G: _
  5. printf("Error with AOM_save: %s\n",  message);+ }' _, C  }1 T* ?
  6. MEM_free(message);
      V- j6 D# T8 o* `  V( z1 S
  7. return status;' v) F% o; ?4 O: S/ _% e  x9 Z
  8. }6 E9 M  D' T! K/ `( w' `9 n
复制代码
  1. status = AOM_save( fl_tag );
    ' }/ U3 d" d- d, E  w; \. i5 l( O
  2. if (status != ITK_ok )" _) J0 i3 O. O* |$ n. A5 m
  3. {: @3 Q& f+ }* U3 T. @& h/ S
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);5 H4 G# T. }$ m8 l
  5. for (i = 0; i < n_errors; i++)
      o& ]1 G  @- J
  6. {
    % h. a" w! B7 N0 y: w$ f) k; s) ^
  7. printf( " %6d: %s\n", statuses[i], messages[i] );
    - n0 L( w- P( j2 y$ f
  8. }
    / i6 `: y6 C/ C) t# s
  9. return status;
    & X( A3 }4 R1 L! b- H0 h
  10. }
    : z, `) Z8 C$ z( O. j+ v8 T
复制代码
  L- `+ t- N4 C  F
" b. X) ?! u+ v' X! o

% E; {$ |' \- e( V( ?9 w8 ^' i
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了