PLM之家PLMHome-国产软件践行者

teamcenter ITK开发的基本知识点

[复制链接]

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

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

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点5 r! `& b* W% _# j4 _1 E3 H
: W6 J& x! C  n. j
ITK 函数格式+ p2 u1 ]& t) M# m# R7 F8 _
        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );
! E4 i& m" }  m2 _2 v        OF使用void MEM_free(void *pointer)释放内存
1 j. f) W) H% L
% T2 L  f& J  g6 |8 z7 F
/ \  U( `  I% s
Include Files" I. z% H$ E7 \# H- \0 n9 o
        #include <TC/tc.h>必须
8 \8 |' P/ ?2 I3 p0 w. d, J2 m- O) _2 B; w  g( t4 [8 }
$ p1 o2 o' e7 U* g3 H) y; c
tag_t data type
% T( P* m3 w; F' V% O% Y所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer
8 |. z3 r/ L/ x9 C% @/ O4 n$ b; w' E0 g5 H+ e' y& ~' q3 T
- z" p. j  D7 z
Error Message Handler (EMH)
2 I: H- z: |+ n. {/ S$ q当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。
2 H( T, r* T! U' N5 j& l
3 l8 a$ L& ?7 V6 G5 [& l
2 j5 z/ t, S; V& f& t7 W+ z' _
上海点团信息科技有限公司,承接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

7 ~! k% v! h% m% R! F5 o

/ |* [5 p1 D, q" k, ]OF类型的变量一定要通过MEM_free()进行释放0 p2 F' L/ h# p% r' F" t+ m
void MEM_free(void *pointer)+ S% E, F- z+ _' X: R

6 z* O5 O/ Z+ S
3 N3 g+ c/ X' r9 I
MEM_alloc()
- R, Q% D! B- |! [. gMEM_crealloc(): f: [) {  ~& ^: w3 `) X
MEM_free()5 {: X$ X  f1 }: ~  I
MEM_realloc()
) R  ?. j  S; T2 C& f6 g4 Z% x' k使用以上内存管理函数,也可以使用C内存管理函数0 H. p9 O  z& e4 v4 b- L
Include file: <mem.h>3 U6 ~) }9 z4 k- l3 b7 x8 j) \
( ^# f. q8 b& a0 o& B5 M* L( k
2 |" U- j$ L/ b  Z) {9 B
函数返回值不为ITK_ok,则有错误发生,必须进行处理
( s* w; v& l4 y$ U) A' I9 QEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
' u; P, z8 v& F  l- C可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。$ Q) O* k1 E' K7 ~. l. F) T) O

4 i  w/ O0 B/ j" L* p$ ?! }) ^

. c, l. F# o0 n# O4 C0 f: H7 P4 K& s. M5 S

& N1 a5 u! ]4 D
  1. status = AOM_save( );* U; \( ^6 s1 i. I& M
  2. if (status != ITK_ok )
    % K: `% z9 T. m, ?
  3. {
    , a5 @. Z+ C5 a' Z
  4. EMH_ask_error_text(status, &message);$ t5 |- E8 u9 V2 R+ b/ i
  5. printf("Error with AOM_save: %s\n",  message);# j# W* @% A/ v5 A2 g" _/ s& o( ~! N
  6. MEM_free(message);
    " y4 J7 K- e5 a3 y4 L- X9 c0 L
  7. return status;. e5 t) |5 @) w+ l! U  F1 ^: x
  8. }
    5 n. Q' O0 R. N$ G. _7 O: U6 E' U
复制代码
  1. status = AOM_save( fl_tag );
    $ t# W* p' U- {! ?
  2. if (status != ITK_ok )
    ' F9 k' x0 {# ^$ [
  3. {5 X7 t! s& ?! `+ d
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);: d/ v% [' M1 Y/ |" n
  5. for (i = 0; i < n_errors; i++)
    + e- h; _/ s. q7 u' f! ]( m
  6. {
    , e4 N4 ~) a# @
  7. printf( " %6d: %s\n", statuses[i], messages[i] );6 D8 a8 |  k8 T" g. \
  8. }# H  E1 s, q1 f
  9. return status;
    . X9 b! {( i" _) i4 s; p
  10. }3 j& j; I6 t/ C6 H* v( o' g- e
复制代码
' ]3 h7 i' u: N( i' h4 C& V6 h

; _; D1 f- t" D1 K$ h) T& M( y
# M( Q9 E9 J- i! b
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了