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

teamcenter ITK开发的基本知识点

[复制链接]

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

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

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点, K, t. B; I0 @% p0 \

/ i5 ]0 W" L) a2 hITK 函数格式
) B. }9 h' r$ |: e  r9 p- K        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );9 p! P( A0 G4 N' M1 R4 b
        OF使用void MEM_free(void *pointer)释放内存
# s! g0 _* W' s4 e% ^9 h: g: N8 H+ K4 x' x3 m' O" w5 s( Y. X$ I
: j2 \- j9 i$ N9 p2 {3 D" A) E
Include Files
! _& Z; l( ]+ T+ U- g        #include <TC/tc.h>必须( r% A4 i( K, `* a1 p8 ]( q
; j$ k( n$ n1 w& \, |+ [
( O# c. V4 }) C$ ?4 r3 ?
tag_t data type4 l; a& \1 ?9 [' a3 r1 L6 k' [
所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer# g. r* P6 D0 ~% y  B1 V& d

' Z! k& _, _8 I! m/ M
% @( a  k! ]1 k. c, u# ~; H6 s# W
Error Message Handler (EMH): Q0 l# m& ?, Q4 q: Y3 k' G
当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。* p1 T4 N  y# I/ Z( N

) j! ?+ }, O# s/ v; P4 S8 Q; v0 h7 c& u$ P. C6 o
上海点团信息科技有限公司,承接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


1 _# L" u% n" k& }9 q
3 y( b) Q5 p1 ~7 \
OF类型的变量一定要通过MEM_free()进行释放0 h; d: B, A2 ^) B3 Y
void MEM_free(void *pointer)
  L& Y4 k8 d1 y, e( b" g6 q7 x. `+ ^1 Z8 R

3 \' \) R' L/ W- X2 M- _MEM_alloc()
5 m; y* N2 u3 o' v; }MEM_crealloc()6 q( F) S) k8 t) v, ~
MEM_free()
5 J* h( X6 q* n& ?1 ]# v5 h1 lMEM_realloc()
% r" U- N' O* U) c. z/ `% Y. c! W使用以上内存管理函数,也可以使用C内存管理函数
" I% D/ e' R3 BInclude file: <mem.h>- y; o; i- M  a# [
+ l8 \5 ?3 z7 Y) P( n4 y, T. Y
5 `' Y, E7 T2 O  t) y) K4 ]
函数返回值不为ITK_ok,则有错误发生,必须进行处理
: q$ ]8 ?- @- V( UEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
( \0 B. C1 e4 Y5 L' ^* Y可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。) `: {/ d" e6 {
  n& G3 W8 {- ?9 b
' e* E; C! K  L/ s( l5 k
  L8 w. `! a8 a" z- v
: {$ i& v. S7 M6 P- _
  1. status = AOM_save( );" R0 }# @7 g0 T
  2. if (status != ITK_ok )! a* C; b  f6 ^$ k4 U) N
  3. {7 b- G  q4 B0 E1 H2 H/ J, w
  4. EMH_ask_error_text(status, &message);8 T$ {( P* l% z7 W# h9 ?" Y
  5. printf("Error with AOM_save: %s\n",  message);
    ) n. F# R  g  g0 s6 G
  6. MEM_free(message);
    # w7 P4 ]2 q  q# u+ o4 q8 N
  7. return status;3 Y/ [% [% _+ p
  8. }) x$ K, \. x7 I1 T2 F
复制代码
  1. status = AOM_save( fl_tag );% C( Y6 j1 X! U  K& {/ ?- x
  2. if (status != ITK_ok )
    ( I+ E& s/ a' i& o$ h
  3. {
    * ]1 A: W/ L! V3 ~% g
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);: g1 K: I+ m1 N, Q9 g1 c
  5. for (i = 0; i < n_errors; i++)
    1 n. M% T& c7 E
  6. {
    ! j9 m, `. v6 E/ O
  7. printf( " %6d: %s\n", statuses[i], messages[i] );
    % R; U0 V; i7 y
  8. }1 [; }( s' `# f; ?' j. {3 t
  9. return status;( j  V, z0 p  C5 P  k
  10. }
    # Q  F1 e* T3 q4 Z" C( V. }8 q, f
复制代码

# j9 r4 O+ }, F6 W( q1 x% @7 g8 q" l

8 d- Q$ s1 Z) d# H
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了