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 5326 0

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

admin 楼主

2014-1-15 19:39:16

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

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

x

! q3 Y$ h4 @! n6 L& MTeamcenter ITK二次开发源码分享:创建测量单位unit of measures
4 z/ P  Z; q. ~. g. S. i: V2 P/ A8 z5 S7 f/ \3 d) K
  1. #include <stdlib.h>/ R  ^; ~/ u! w6 w% M& |2 t0 J
  2. #include <TC/tc.h>% u  I- i' a: i
  3. #include <sa/tcfile.h>+ T- ^0 B: `) J$ |/ L4 }
  4. #include <tccore/workspaceobject.h>0 e  {+ C1 K: j4 \+ o; R  x" t
  5. #include <ae/ae.h>
      l( C5 G( X2 v, x$ F
  6. #include <tccore/item.h>
    3 u3 m3 Q/ O  ~2 |# ]

  7. & i- D2 b2 n0 s4 P# l
  8. #define ITK_CALL(x) {           \- W, {: u) V2 ~  s& X" v( G
  9.     int stat;                     \
    ( C) {$ E' W0 H! V1 \$ b$ f
  10.     char *err_string;             \
    / y2 [3 s4 |8 u( j% w
  11.     if( (stat = (x)) != ITK_ok)   \
    7 @1 f0 E8 z! J8 V3 w( B- h
  12.     {                             \2 u2 r2 e! P. S
  13.     EMH_get_error_string (NULLTAG, stat, &err_string);                 \
    # `* B5 i5 ?6 H1 z- u- d& d! m
  14.     printf ("ERROR: %d ERROR MSG: %s.\n", stat, err_string);           \8 B/ y6 G, u: c2 j, s7 C% h  R
  15.     printf ("FUNCTION: %s\nFILE: %s LINE: %d\n",#x, __FILE__, __LINE__); \
    ( X8 e6 \9 I# k9 N/ c! n
  16.     if(err_string) MEM_free(err_string);                                \2 S# ]( r4 A3 v* b5 C, ^
  17.     exit (EXIT_FAILURE);                                                   \
    * F- J: b& E1 v  r
  18.     }                                                                    \3 f  C" F7 ~+ B! o
  19. }  y" i3 v: h7 q3 }# V
  20. #define EXIT_FAILURE 1
    2 D7 Z! O  F4 l
  21.         
    ' k- {- D2 `3 ?4 B0 U" w
  22. static void do_it(void)
    * ?# N( U% O' R. w3 ^8 k) z* r
  23. {9 R9 ?3 @: g4 T; H) r$ `
  24.     int+ D3 N6 E" O: o- t- o
  25.         n_uom,5 k1 y5 Y( ~3 z
  26.         ii;6 c' E- ^, T' k" n: |# V- C+ W
  27.     char
    & K( Z; K* V) d7 y0 q* L8 ?
  28.         *name;
    0 V; \+ v% A3 l, H/ m( \
  29.     tag_t
    3 u2 C, h' d) D% H
  30.         *uoms,/ f; _) \' L. l" S
  31.         new_uom;/ @. z" X, O9 ^6 }- V
  32.     ! G9 ~  |. ?( s8 G& z. {5 W
  33.     printf("Before UOM was created...\n");    ! B5 E. e  ~5 Z
  34.     ITK_CALL(UOM_extent(&n_uom, &uoms));+ K% p4 F% l* E0 }. Y; l2 n
  35.     for (ii = 0; ii < n_uom; ii++)$ Y( a6 _& N% b
  36.     {6 O- S$ Q; c' E% Q( v5 J* K. T
  37.         ITK_CALL(AOM_ask_name(uoms[ii], &name));( `3 v6 }0 ?; p) y# ~2 ^4 }
  38.         printf("\t%s\n", name);% \9 B2 g9 v0 x; H
  39.         if (name) MEM_free(name);
    & [: X, a* G& n  a6 O
  40.     }2 r2 H0 I! E% J6 Z( o7 f1 L
  41.     if (uoms) MEM_free(uoms);! j/ A% w# e# o+ }: d7 n
  42.     $ |) _0 K0 q/ e% d& o6 ^
  43.     ITK_CALL(UOM_create("inches", "in", &new_uom));. J; L8 h0 c* x8 v- A2 c
  44.     ITK_CALL(AOM_save(new_uom));
    8 p' ~* x. i; J+ A
  45.     $ L$ s! B4 [- U8 \0 {
  46.     printf("\nAfter UOM was created...\n");   : B9 W! f& [/ u% u' v
  47.     ITK_CALL(UOM_extent(&n_uom, &uoms));
    # y( u5 m2 k! c
  48.     for (ii = 0; ii < n_uom; ii++)
    0 I0 Q# i4 N5 T0 D
  49.     {
    + @- {+ @3 N- G# R
  50.         ITK_CALL(AOM_ask_name(uoms[ii], &name))
    " F6 W9 |* A( r( x% a1 }  ]/ T
  51.         printf("\t%s\n", name);
    5 H7 l8 H0 C* ~. @
  52.         if (name) MEM_free(name);
    2 g* [2 o2 {3 E2 |1 a! ?
  53.     }
    ) b6 B$ w. {, G% Y& j9 a
  54.     if (uoms) MEM_free(uoms);/ Q9 c1 J+ W3 [
  55. }' s5 g7 f3 _& e8 d" Q

  56. & E7 r# m# k( h+ E
  57. int ITK_user_main(int argc, char* argv[])
    / ^; ]( [+ ?9 w1 t
  58. {- ~) T7 z* V$ n9 A/ ^. C. N
  59.     int: s$ f& e  J6 V0 g
  60.         status = 0; ; A- h" p  }: {
  61.     char) \6 \4 e+ B1 {9 P0 Q
  62.         *message;
    1 s* T4 D5 _7 G5 G! U9 z
  63.    
    $ h  o4 g8 q& I* h/ K
  64.     ITK_initialize_text_services( 0 );# i6 \( Q/ ?- J! R7 S
  65.     status = ITK_auto_login();1 T& s- h2 k# @
  66.    
    / I9 C/ F# Z* w1 l8 H1 O
  67.     if (  (status != ITK_ok)) printf("iMAN login NOT successful.\n");! q& G5 v/ B/ y& w9 |
  68.     else  Z! z- U' |+ S! @8 ?7 n# n
  69.     {
    & K# B0 O! \) p6 \" @+ _
  70.         printf("iMAN login successful.\n");, E' p; p; p  v7 B; |2 J
  71.         ITK_set_journalling(TRUE);
    ; z- J& t# p; ?) D
  72.         do_it();
    : Q$ k" b1 Z, v/ \9 H' h+ ~
  73.     }
    , [: s$ N1 @9 p5 u0 w4 R2 {
  74.     ITK_exit_module(TRUE);9 {+ I5 w; k: y+ X% X7 d- s" t
  75.     return status;( X/ |$ I' n& |7 A. A
  76. }
复制代码
0 f  V6 |4 R' z$ p: Q) v
1 {. z. @  d( k6 n

: O4 n' P8 y  R' U, O' @" q
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了