查看: 5385|回复: 1

teamcenter ITK开发的基本知识点

[复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2013-12-3 20:54:57 | 显示全部楼层 |阅读模式

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

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

×
Teamcenter  ITK开发的基本知识点
/ j8 P; ?5 s/ W( x) A6 D5 T. f+ c( p' ~) L# C
ITK 函数格式8 b7 m# g5 G/ {+ N3 k
        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );
4 q; E# |' C( @        OF使用void MEM_free(void *pointer)释放内存2 }/ D  h! B  O2 _  L
$ q5 N; o3 i3 q6 _1 |% C9 u+ D  w+ s

9 W% J$ u( z. U# X! |  ?/ tInclude Files2 n, `  G8 C: c6 m# T3 J! y
        #include <TC/tc.h>必须
3 h6 r2 \3 ?$ b7 ]7 w  e3 ^
# v5 @& Q, z2 E' e! S$ e

8 Z" O) X0 k& M$ ^( W! ?# x: Ctag_t data type
) R+ P7 T0 \1 W9 Q所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer% c* h1 m0 r( B" R

# L, O/ s+ N" H9 Q" Q& ?6 `6 m

9 `9 p- ~7 \( i& C* NError Message Handler (EMH); J& f- |# o. ~( q+ |" _. f( c+ m' Q$ d2 @
当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。: j/ P1 c, O' U% L
( Q9 x8 {" {  y7 s3 Y# P

5 }4 M. k! l& c# V, \. @5 w5 @% M
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
 楼主| 发表于 2013-12-3 20:59:25 | 显示全部楼层

: u0 A* v( H( o: F

- m! v0 k# L; s+ O1 C7 HOF类型的变量一定要通过MEM_free()进行释放1 A9 u4 J7 y8 S" P2 ~" n  t7 L
void MEM_free(void *pointer)  |' b/ s2 J- ^1 Z5 ^

, j2 X  l, |& U! I
! P; r1 a- o+ ^; {8 d2 k& z, V0 p
MEM_alloc()  h$ p& s7 U4 u2 z( _! |! Y
MEM_crealloc()+ a1 v2 Y; |( ?- |- ]6 w! ]0 c9 o
MEM_free()
& [- `: x3 X7 H: R. Q- i0 v! tMEM_realloc()
2 `+ L) X* y& s/ _5 Q使用以上内存管理函数,也可以使用C内存管理函数
* U$ W% ], R2 u1 {Include file: <mem.h>
3 b* \: [9 G* Y% G0 }! h8 p8 h6 b' k! w# T" [; O
& o9 z1 J6 H0 z" a
函数返回值不为ITK_ok,则有错误发生,必须进行处理
: I* t0 Z' p' QEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
4 d7 G+ @1 o3 }7 l$ h* w( W6 E可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。
4 c4 z6 _+ Z* C6 `; y) z
) V8 \8 l$ `7 T# n: o) ]( o
% _% t3 P3 @: Q5 n3 N5 R0 X" m  V
7 E7 N, ^  u; A1 W4 R. Q

  C, e- \) H  q1 Z, A" ^( \# U
  1. status = AOM_save( );! I2 `% J8 {) e6 ~% l5 r: h
  2. if (status != ITK_ok )
    / `$ V, L" G1 Y% ~# D1 M; M
  3. {0 g& h5 j5 \5 z0 c
  4. EMH_ask_error_text(status, &message);- s/ s9 z, F) E
  5. printf("Error with AOM_save: %s\n",  message);' G. L% Q' M+ p$ g) x% S; _
  6. MEM_free(message);. P2 [, g  l5 y  l; t& x1 r
  7. return status;) x% i4 A, w% w
  8. }% P! N3 ?2 r5 p
复制代码
  1. status = AOM_save( fl_tag );
      l7 M5 E  \" V3 R$ q  R
  2. if (status != ITK_ok )
    " A7 i* i- V& C
  3. {
      Q/ H5 C; |* E- L/ Y
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
    1 U$ R- Z5 \1 e8 c! v
  5. for (i = 0; i < n_errors; i++)
    * ?! t3 j5 `: n, b3 a2 p
  6. {0 J/ c% A  g, ^( M
  7. printf( " %6d: %s\n", statuses[i], messages[i] );
    - P7 f( j; h% X" `  J0 U7 R' \/ j
  8. }
    : P. U6 V6 P+ l9 g
  9. return status;3 ]2 F" |1 A. K! R  b$ |" D* `- q" ^2 e
  10. }
    # t+ m& V. q( _
复制代码
( D5 w2 s/ B: Q3 b
4 \* c) w, L; D5 W

3 M7 Q  `& W% ?. L1 M6 B$ K
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部