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

teamcenter ITK开发的基本知识点

[复制链接]

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

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

admin 楼主

2013-12-3 20:54:57

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

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

x
Teamcenter  ITK开发的基本知识点
! |7 w, w. d( R$ Y: b# ~- X+ l; c8 U, h; |
ITK 函数格式
+ Q1 b9 A* ?4 l& h  q$ m2 Y: K# |        int FunctionName (type vari-name[dim] /* (I/O/OF) */ );- @& n  ~" Y  j% x2 l3 w+ i
        OF使用void MEM_free(void *pointer)释放内存
5 c- ]- ?5 M, Q) p+ [' X' ^" r' e- W
9 S' ^0 @- ]- F9 Y$ c
Include Files
  J/ n7 j2 N/ [, C0 u( _$ O6 T        #include <TC/tc.h>必须
* x1 _$ f$ f0 `& E& f  }% C6 x4 ~  M
/ R- v/ V4 A2 g4 G4 s8 D. ^1 m# C( ~

, h8 y* U6 b  t3 {- H# w  }tag_t data type
3 @. f0 P+ k* P, ~6 I% W2 ?所有在PDM的对象都有唯一的识别码,当对象加载到内存中时,就是以dynamic tag 来识别,tag_t 是integer! f+ U" B. D/ u4 o$ d6 z

3 Y6 N1 X) w$ \0 \' C

; X, [6 y- b6 l& `' u" gError Message Handler (EMH)+ r. C4 j1 _  E2 c7 z! R, [! d8 j
当有错误发生时,大部分ITK functions 都会传会一个整数值,此整数值一个错误信息对应。" {+ T9 R( C! t7 {. k
" `! W% r* p4 c$ ?$ H! v: ~

/ T+ K' I- @! F$ e6 n. @
上海点团信息科技有限公司,承接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

6 J1 S. F' q7 ^) O1 M+ C

0 z, I4 m- \; @OF类型的变量一定要通过MEM_free()进行释放
) Y- _4 q# f0 _5 Q' Y6 rvoid MEM_free(void *pointer)4 v2 G4 I. d9 ~

4 H6 `' k0 w/ d) ~0 N) F8 u
/ _' F4 x' ?; N1 F, l" ^& A3 ^
MEM_alloc()
, M" ^( I+ D# g% ]( fMEM_crealloc(): j9 e% c& }  F- O$ j* Z; c! Y$ q
MEM_free()0 u- n& w4 V3 Q0 S
MEM_realloc()
' J7 ?- i  X2 f, j+ u使用以上内存管理函数,也可以使用C内存管理函数6 U: ]+ A5 l$ ^
Include file: <mem.h>7 m% H2 e+ J2 U$ C2 ~/ l$ c8 M6 `8 ^" V5 C

  I# Q7 ~! o1 T/ l( {6 ~, K; A6 t

0 Y/ o0 X/ H1 g3 e4 H2 G函数返回值不为ITK_ok,则有错误发生,必须进行处理
8 Z. ]9 R( W* JEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)
& W- Q/ ]: }0 m可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。' A* ^  Z: H0 s

5 ?# ]: }+ H. q8 Z0 Y$ _+ ]
& H4 n' X1 e2 R
1 a  a& R3 w2 ?$ D* J  ~
# _/ p% j5 s8 `- ^' z& V% Z$ j* ~' _
  1. status = AOM_save( );* P' U" P* U4 h2 h! ?( y+ d
  2. if (status != ITK_ok )
    6 a0 T: E/ B  P1 h3 w
  3. {! J7 w& C# z) o# O3 k
  4. EMH_ask_error_text(status, &message);7 }+ n+ Q, R( Q+ x" ~0 |1 M/ o
  5. printf("Error with AOM_save: %s\n",  message);
    - [% c) K+ b7 |1 r/ c7 a1 a) [' U
  6. MEM_free(message);
    8 N  \$ ~7 z  J4 e6 e) a' k1 }
  7. return status;
    ! P2 G+ M6 \: L( w* G) C  Y
  8. }/ Z* O, G5 A( b3 n3 v
复制代码
  1. status = AOM_save( fl_tag );7 Y  k& j; I/ n) U4 d4 p6 w: f
  2. if (status != ITK_ok )
    ( I. @4 g9 r$ Y7 Q; F
  3. {  c' j: |2 s# t
  4. EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
    $ O; k. w" ~8 B1 e
  5. for (i = 0; i < n_errors; i++)
    + W, ^& n; L6 @& C( B& M
  6. {
    ! Z; e  S" a" _8 g
  7. printf( " %6d: %s\n", statuses[i], messages[i] );! a+ F& y: O# v2 q7 q" K6 p
  8. }
    * }) C( G" C; _& l  ?
  9. return status;
    $ g; a$ Z5 J, q6 b+ Z5 c* {7 C
  10. }
    + C& e* b# L8 p2 K$ Q% W
复制代码
) W( N/ x9 K) H0 z4 k) c/ R1 Q
" |" Y8 Q; p! i! A

1 T$ I( [+ U7 r  w; |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了