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-国产软件践行者

[二次开发源码] NX二次开发中有关表达式的操作代码分享

[复制链接]

2013-11-27 10:03:27 3450 0

admin 发表于 2013-11-27 10:03:27 |阅读模式

admin 楼主

2013-11-27 10:03:27

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

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

x
NX二次开发中有关表达式的操作代码分享
0 z- R+ q7 o" f ( q: G* I- r. ^: O# X6 r
  1. 6 m  i- ]& V! e1 W* e7 S8 m% t
  2. <p>static void do_UGopen_api(void)2 G2 Y1 H2 z* q
  3. {7 u: ^& v) H- y6 |9 ?: X; y5 I! l
  4. // create block 1% L1 W2 l: Y0 j4 O! k. V% [
  5. double coner[3] = {0,0,0};
    9 z" k4 }4 [" i
  6. char *edges[3] = {"l=100","w=100","h=20"};
    $ V( U. X! {1 |( @
  7. tag_t blk_tag;
    9 ~6 e# F6 }: B# Y! H$ }; n: h, F
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);7 G# k: u8 J" P. g: T
  9. // create a hole
    2 N, {( D- V- J( ^8 F2 r( @
  10. double dir[3] = {0,0,1};
    2 J0 _+ H4 ?. f7 q3 v
  11. double coner1[3] = {50,50,0};
    - N: p6 r; M( Z( C# U
  12. tag_t cyl_tag;
    3 }3 ^. K( w8 V/ b7 `
  13. UF_MODL_create_cyl1(UF_POSITIVE,coner1,"h+30","50",dir,&cyl_tag);</p><p> /*
    2 D8 [0 Y2 Z9 x) v7 @- B0 ?
  14. create expression and delete it
    , e6 Q' b  l1 y, E8 @6 A3 Y0 d
  15. */
    " }; a; Y4 H6 }7 m, i/ N
  16. // create expression
    % K& c* m! a/ k5 e
  17. char *exp_str,*str,*value;* c# J7 p+ v' o9 Z7 I+ c3 Z7 [
  18. exp_str = "new_exp= 100";
    - G) z6 q. Q. m+ F8 }- w
  19. tag_t new_exp,old_exp_tag;7 a9 R, W# W. I- r& J  r$ |5 d1 }& t
  20. char *str_exp,*str_old_exp;0 t* `. e/ n" T" L8 C
  21. int nums;
    # b4 X/ P1 @( p  I9 `' p
  22. tag_t *exps;
    6 A( ]( I) D" m! S5 Q* ^& a
  23. // before create the new expression, we need check if the expressions have been created or not
    0 W' D) Q; a, N
  24. // if having, we delete it8 F, d/ Y3 w; U9 w8 G
  25. tag_t part= UF_PART_ask_display_part();
    7 ^3 f( c( K6 Y' g6 |/ m
  26. UF_MODL_ask_exps_of_part(part,&nums,&exps);
    + |1 ~# b! N! y5 j- {# b# y( g0 u6 S  G# g
  27. UF_UI_open_listing_window();
    1 E3 i4 i/ M! [5 `# u
  28. if(nums != 0 )9 A4 H4 R+ Y; m) L8 ~7 A( V
  29. {# `* i% o; n* _4 J
  30.   for(int i = 0 ; i < nums; i++)
    8 A1 w5 r; S2 X( o$ c
  31.   {! j  e1 _' a/ T  z* Z
  32.    UF_MODL_ask_exp_tag_string(exps[i],&str_old_exp);9 c* M9 Y5 M9 X( O' s/ t. P1 I
  33.    UF_MODL_dissect_exp_string(str_old_exp,&str,&value,&old_exp_tag);- ]+ ?  t: t6 \
  34.    if(!strcmp(str,"new_exp"))' T+ X6 e; v/ |; G
  35.    {
    ( i' c" i. }: u! ?2 L% l$ ?
  36.      //UF_UI_write_listing_window("we find the alreay expressions ==> new_exp and delete it \n");8 |5 n( ~4 G0 |  F7 W$ [* U) d0 k
  37.      //delete expression
    - h9 g) X$ L0 y5 V5 b( x
  38.      UF_MODL_delete_exp(str);8 q, o3 I6 T* c/ L; L6 {
  39.      UF_MODL_update();
    6 c; b* a0 d, Q( E
  40.      break;
    & W5 p4 ~* F3 p5 Z, O
  41.    }! x) s& C5 ?- e& |6 C- F% ^! S
  42.   }
    6 j& d& c( U# h/ @+ m# |
  43. }" J. K- |; A# F
  44. //UF_UI_write_listing_window("we can not find the expression ==> new_exp and create it \n");& E" u7 m4 i) L
  45. UF_MODL_create_exp_tag(exp_str,&new_exp);
    3 K) p6 b" V  z6 W# s& O7 t
  46. UF_UI_write_listing_window("The new created expression is : \n");, y5 t0 X# V- \* ~# E
  47. UF_MODL_ask_exp_tag_string(new_exp,&str_exp);
    + ?6 N" y* k$ R6 `
  48. UF_UI_write_listing_window(str_exp);1 X( d/ u3 C8 O( z! O8 Q' J% L) t. @
  49. UF_free(str_exp);
    4 q3 P* H& M# w. T6 f
  50. UF_free(str);3 ^* M" m4 o! v+ G/ R' H
  51. UF_free(value);
    ( k" O: ~5 C2 i: G6 B. V
  52. UF_UI_write_listing_window("\n");</p><p>}</p>
复制代码
+ W8 k& x' ]. N3 M  |- m
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了