PLM之家PLMHome-工业软件践行者

teamcenter ITK开发的基本知识点

[复制链接]

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

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

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点1 m7 {  W4 k. _. \7 f2 r1 m( x! y
. z& i) f" M6 P3 t7 E
ITK 函数格式
- K# u' g$ @' w+ U  o        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );0 \. E1 @3 d; j
        OF使用void MEM_free(void *pointer)释放内存1 ^! Y+ Z% G0 `0 a4 Q8 L
5 ]7 w+ n: n* i6 H2 i/ P: H
; T0 p$ z5 I4 L3 s$ j& I3 ^
Include Files7 }  e* w; u7 u9 G, h( p' {
        #include <TC/tc.h>必须
! `6 M- Y0 U# C9 l" `4 N
' f; t$ l# h" g% h2 I
& C. h3 v+ F2 T
tag_t data type, K, V' y9 r! E; ?5 r
所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer% q5 l  k2 l* N

5 N# g+ H' G, S2 [  P/ M

! S/ k1 U  B5 KError Message Handler (EMH)
8 q$ I0 G9 Q+ X& v当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。
0 |6 z9 \( C* |$ }9 T6 U# F0 U0 ?! `1 K7 y

. P/ |+ v" \6 W: x/ }
上海点团信息科技有限公司,承接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

( W# V0 O% q# R" i* |% N  i& ~
8 @! f/ i& T8 J, j8 ]) P7 t
OF类型的变量一定要通过MEM_free()进行释放- s$ d$ K. P6 V; I
void MEM_free(void *pointer)! K2 }3 W4 A8 M" b2 j

# i" a/ |; \! ?7 I" S

/ J8 w7 B6 p7 FMEM_alloc()6 {: c9 B7 G8 f7 p) e0 x$ U  t
MEM_crealloc()! ^7 a( x! I2 W9 n
MEM_free()4 s8 P. L9 _6 d
MEM_realloc()6 I1 n3 c% X% k4 F% W
使用以上内存管理函数,也可以使用C内存管理函数6 w; S2 _' G. @1 U
Include file: <mem.h>
3 x4 ]7 r8 n6 p# \6 k; ~' r- s) {; v. z) J! S/ E* L

% P* T7 k6 U* T# J! C函数返回值不为ITK_ok,则有错误发生,必须进行处理
: e2 j8 P4 }9 q2 s, x! c  gEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)" |" D3 o& r1 Z/ o2 A2 v4 o: J
可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。1 k) I: Y7 k3 J$ F* o( a' o* U! s3 X
$ a  E4 U. h* g; C

9 a) W, W" p2 H. u$ v5 A8 J# y, L0 @. i9 T5 k% B2 Q$ \; r
  H% S7 v2 Z, M1 [
  1. status = AOM_save( );
    . g& {! l2 y. G# G6 [- R8 K
  2. if (status != ITK_ok )
    , k! X: g' F; T4 Q" x* @
  3. {+ Z+ ^( w4 J. I7 V! u/ P; [2 |
  4. EMH_ask_error_text(status, &message);" B; v) C# T4 ]1 Q
  5. printf("Error with AOM_save: %s\n",  message);
    . C7 _: w  _- o  J( a
  6. MEM_free(message);
    2 u, T7 D$ T% ~: t) M
  7. return status;1 a; R: @# w; G+ G
  8. }5 N! h7 D# Q$ r  g9 U/ t3 C
复制代码
  1. status = AOM_save( fl_tag );
    6 H2 M" W! f4 y+ P7 [: H. [) N3 D. A( f
  2. if (status != ITK_ok )
    * M: q0 ~: X6 R) }; r5 Q
  3. {" A$ u' m7 s" [' F* l
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
    1 Q2 F; h3 C% }4 R( ^% M8 h: |; a
  5. for (i = 0; i < n_errors; i++)
    ' Y1 t+ w) j2 D- K- ~5 b8 o
  6. {
      n& I+ ?( E/ s6 W+ ]( ]
  7. printf( " %6d: %s\n", statuses[i], messages[i] );
    % b2 J$ @# Z9 _) s4 H+ @* q
  8. }& W: r3 n+ H' i( B  ^# H
  9. return status;! w7 u# G; n; F& I* h& F
  10. }  c' s2 p: {9 _2 D8 m. l( b+ i
复制代码
  s& s( m# t6 v) V/ D/ N3 c/ |# I/ {

/ E0 r; h0 ~0 }7 q% E$ A
) n- f! Z& x3 a, w. Y# Q
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了