PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

Teamcenter ITK二次开发源码分享:创建测量单位unit of measures

[复制链接]

2014-1-15 19:39:16 5320 0

admin 发表于 2014-1-15 19:39:16 |阅读模式

admin 楼主

2014-1-15 19:39:16

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

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

x

* ^" H% n( P& b, |, W9 d4 O' U$ r- rTeamcenter ITK二次开发源码分享:创建测量单位unit of measures6 f8 ^3 i1 \6 [

9 ?7 c: B$ a* d6 c
  1. #include <stdlib.h>7 V' B& U7 ]5 G- K. Z0 c' o
  2. #include <TC/tc.h>
    . s2 ~' E5 F5 M" U* _  }
  3. #include <sa/tcfile.h>
    3 k; K6 e9 V1 ?3 d2 \; s, c1 m; w
  4. #include <tccore/workspaceobject.h>
    6 ]1 X0 k- a  G$ m1 Y
  5. #include <ae/ae.h>, Q9 y  U+ q' v2 S
  6. #include <tccore/item.h>1 Z9 P) ]$ z- j8 I+ V
  7. % ~1 X% m0 P- Z- F% W6 Q( L
  8. #define ITK_CALL(x) {           \3 K2 M) y+ D2 q* S, f% z
  9.     int stat;                     \4 x' C4 C! Q' B1 e& ^! S; A
  10.     char *err_string;             \( D5 c% `: K' ?; Y6 a* m0 _$ T6 h
  11.     if( (stat = (x)) != ITK_ok)   \! D( C0 F/ d) j
  12.     {                             \
    % d( u1 G) Z9 Y1 H$ S+ x5 h) [9 y2 [
  13.     EMH_get_error_string (NULLTAG, stat, &err_string);                 \
    - C5 C* w6 W4 F8 b% ?/ o
  14.     printf ("ERROR: %d ERROR MSG: %s.\n", stat, err_string);           \# R* C2 [: M' G0 S
  15.     printf ("FUNCTION: %s\nFILE: %s LINE: %d\n",#x, __FILE__, __LINE__); \
    ( T" b  t- q2 m
  16.     if(err_string) MEM_free(err_string);                                \% U5 F* ]0 f4 y
  17.     exit (EXIT_FAILURE);                                                   \( O- J: e3 F- T8 E3 }- v
  18.     }                                                                    \" E7 p" y) v- L8 I
  19. }$ p) z7 r1 F3 i4 G: Q
  20. #define EXIT_FAILURE 1 1 F/ O' b3 I6 c; }
  21.         
    0 Y2 N: h+ l- K) J" d) f5 o
  22. static void do_it(void)4 f, ?2 h# W7 Y& J- L
  23. {
    6 @) y# M  i! H+ |
  24.     int
    ) r0 U: n8 D5 x1 x
  25.         n_uom,! _" [8 U+ _( g5 ^) z9 [
  26.         ii;  q! U( v1 n; N! L
  27.     char7 q4 J# X9 G2 V5 @7 E- g
  28.         *name;
    ; z- ?) F# h/ L6 }- O' T# a* ?. ]& [
  29.     tag_t2 d0 [( }, }, M4 b( c
  30.         *uoms,. \- Y: @& a# k. T! n3 [" F
  31.         new_uom;
    1 G" P3 I* B! A( \/ S
  32.    
    4 b( Q9 f5 [$ R& J
  33.     printf("Before UOM was created...\n");    9 H* z9 |# }( I) E5 |2 d
  34.     ITK_CALL(UOM_extent(&n_uom, &uoms));# d4 b6 e- S1 i! N
  35.     for (ii = 0; ii < n_uom; ii++)
    # g2 ]. j8 ?5 H1 O/ ?* L
  36.     {) z, h) y, e# J! U  E
  37.         ITK_CALL(AOM_ask_name(uoms[ii], &name));
    4 F. _! r% J9 h6 `9 Q
  38.         printf("\t%s\n", name);2 p6 k& U' V6 C0 e# H- r
  39.         if (name) MEM_free(name);! Z$ C; p- x& b% w. J2 M
  40.     }
    4 D- |2 i& b6 }3 G4 _
  41.     if (uoms) MEM_free(uoms);+ Y2 W$ Q$ G9 Z+ y2 K
  42.    
      u  ]# _1 `" R0 t1 ~. d* ^/ F
  43.     ITK_CALL(UOM_create("inches", "in", &new_uom));9 ~" p7 Q' d- O% o3 e0 s6 Q+ I
  44.     ITK_CALL(AOM_save(new_uom));+ \0 {& q, f+ b2 j2 H
  45.     , c# p+ g6 U2 }" R4 A* B- \* b2 U
  46.     printf("\nAfter UOM was created...\n");   
    % L# K  Y( g. @# P6 ^8 P
  47.     ITK_CALL(UOM_extent(&n_uom, &uoms));
    , B9 V- r' k" B" J2 b6 y5 a9 ~* d
  48.     for (ii = 0; ii < n_uom; ii++)
    ; ]' d6 K, l. j' y( j
  49.     {6 l" F: p' j& q0 ~5 T' o# M
  50.         ITK_CALL(AOM_ask_name(uoms[ii], &name)), ^3 O1 r0 `5 |( Y7 F
  51.         printf("\t%s\n", name);
    ) F3 t9 V: g7 @# z/ g, h7 |+ K
  52.         if (name) MEM_free(name);
    : K: i9 h1 s8 M) `# m
  53.     }
      H3 {$ U. r7 e5 B! Q) i
  54.     if (uoms) MEM_free(uoms);1 p: L7 R: g9 _3 ^8 K) z1 Z7 z
  55. }. o. m  W8 l1 [

  56. 6 f9 F8 P* M7 S0 A) {3 c1 l; e
  57. int ITK_user_main(int argc, char* argv[])
    . I7 _& c( L" d  G
  58. {
    ! p/ K/ x' L! H% }) B( P
  59.     int  E( b# r& l% Z5 a4 ]. F" G
  60.         status = 0;
    1 ]: W  F: v3 Q
  61.     char& T! `$ I' q0 y7 K; n
  62.         *message;  E+ ]# ]1 r2 p7 c1 ]4 x
  63.       @- X+ C; B" r# H
  64.     ITK_initialize_text_services( 0 );
    . ]- J6 a6 |( G: Z( b: @
  65.     status = ITK_auto_login();
    6 b( J8 G9 \2 `$ u' N
  66.    
      s+ j* x' ^( b, w' F
  67.     if (  (status != ITK_ok)) printf("iMAN login NOT successful.\n");
    * y( V& e8 H% x) g  t" D5 F
  68.     else$ a8 I  r' |( i" }! \
  69.     {7 ]7 T  z  K# D5 f
  70.         printf("iMAN login successful.\n");% i! b1 Z' V9 h( A
  71.         ITK_set_journalling(TRUE);: X# ], q# P$ {) e0 w( U
  72.         do_it();; n2 z& n5 F3 R5 `
  73.     }
    8 B1 }, s* F" X/ E6 s! W
  74.     ITK_exit_module(TRUE);* l+ {- i* |" o
  75.     return status;4 w% W3 s- z3 G* _6 \8 m2 J
  76. }
复制代码

  ]# w0 e& s8 @! C4 R$ ~& D- S, q& R9 Z1 p
6 p: @* D% F" d- r& O) x" F8 n
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了