PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

[二次开发源码] NX加工开发源码分享:移动选择的程式到其他组

[复制链接]

2015-1-4 20:20:10 2756 0

admin 发表于 2015-1-4 20:20:10 |阅读模式

admin 楼主

2015-1-4 20:20:10

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

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

x
这段代码比较简单,但是你可以学习到如何在CAM里面进行二次开发,比如如何初始化CAM环境,如果查找CAM的程序对象,如何获得加工导航器上的选择结果,如何将对象加入组中。! V3 }5 l: }  ~# P  N, x, f$ s1 T  e

/ S# G" q( \  q  `% Zstatic void do_it(void)7 l5 U$ N" y) i" I1 W
{
" E! C4 z( o" g: L# F, H7 a    char reason[UF_NCGROUP_MAX_REASON_LEN+1];
! Q9 q! s+ |: H# U3 n' K( U8 P0 n    char msg[MAX_LINE_SIZE+1];- f! F7 H* D- S; [& t
" Y  O! b5 @0 |4 a7 g  f# z4 N
    int object_count,
0 O& u# w7 y# o8 n        type,2 d9 r! C, }) s# `' {8 k  Z% R  n
        subtype;0 p4 V9 }7 }& ]3 @6 u3 }) o
   
$ H; M: S# l! m2 s2 c; g* u    tag_t/ i. I/ \# |- q" U! a3 o
        setupTag,
% {- d% l# J  [3 h        *objects,
+ u! W2 V( r9 ]1 \6 p        prog_root_tag,, r. O" i0 U. ?8 l- c, l
        prog_tag;
8 P, O9 l6 ]5 K6 ~/ q+ c
- W  x* ^& R  W+ F# l8 z# e    logical  is_initialized;: x, T" [+ I: h% B& j; [7 ]
    logical answer;
6 q& V$ }5 I( n5 z, g4 t2 U& m" }% u+ r6 y
" x& e9 h) C2 r" x
    UF_CAM_is_session_initialized(&is_initialized);
+ t6 A7 Y$ r& x" z2 |
3 S8 O8 h( T2 R' b. f! o+ S3 x  u$ V# ~8 u- C' P: q) b! G+ q( {
    if( is_initialized == TRUE )  `" y* A( L" k
    {   
& {3 H9 G7 O4 B9 ?        UF_CALL(UF_SETUP_ask_setup( &setupTag ));
, ]. k+ R# C& }' ]) ~0 T        UF_CALL(UF_SETUP_ask_program_root( setupTag, &prog_root_tag ));
  q1 X4 R2 s5 s; r# ?* j5 Q! X  |5 `  ?8 _9 k2 u, P  @+ `
  // Find the pre-existing geom PROGRAM and get tag
- e' l4 {2 Z, F' B4 U. e6 Y        UF_CALL(UF_NCGROUP_ask_object_of_name( prog_root_tag, "PROGRAM", &prog_tag ));* X. d* Z' c* Q5 j) f

+ [' R$ x$ ~+ N+ v" {) N/ K- ]/ `     /* Get the highlighted/selected operation from Navigation Tool. */' a- q: B1 G3 [7 b
        UF_CALL(UF_UI_ONT_ask_selected_nodes( &object_count, &objects ));
. R. k: ?$ b2 E! @6 V) D! U
; D+ ^9 {# q. n' _* s        if (object_count == 1)3 N, Q' z9 y' k
        {  ]$ ?: ^- F# }% A
            UF_CALL( UF_OBJ_ask_type_and_subtype (objects[0],&type,&subtype));) @8 z: x. X5 k% t; u

! I1 o! W$ D* e4 x8 B            if (type == UF_machining_operation_type )! o$ |4 |$ A9 d) X6 i! a. i5 w% d
            {& T2 `9 S2 z! j- i+ d, ?) `6 T
                UF_CALL(UF_NCGROUP_can_accept_member( prog_tag, objects[0], &answer, reason ));, e/ q( a) s+ L' A) E
                if( answer == TRUE )
6 t& P) B9 \1 I$ T. a                {
, T% n8 |! c7 b# m                    UF_NCGROUP_accept_member( prog_tag, objects[0] );
: i* i4 G6 }( Y  ^, w9 A6 s  C                }
* G' U3 O, D8 T7 \                else
# Q* k) K8 q# V) p7 @% w                {
, ~9 b' [3 v$ B1 v+ [  w' b8 [' u                    sprintf(msg,"program group can not accept operation");! Y" b+ U2 v' }; O) j
                    UF_CALL(UF_UI_write_listing_window(msg));! t$ m8 J- A  F; R1 y& m+ l& b$ K
                }
$ N0 v. X! Y3 j            }
5 p* h/ @0 N) K( x5 d            else
( k2 _. A! W7 E+ p( B            {
6 n- F# |2 B' j7 d                sprintf(msg,"object type is not UF_machining_operation_type");
; d: r  ?# E4 t                UF_CALL(UF_UI_write_listing_window(msg));
7 @0 n0 N/ o9 R6 L            }
+ p/ e5 n: `; F0 Y: j        }$ o9 W2 `7 J0 A1 M! h1 B7 F
        else& z* F+ V9 Z, Y1 @) T6 t
        {8 T. m2 I8 c' i& @& F9 F
            sprintf(msg,"Nothing highlighted");
5 u7 _% P" B9 X  N  P6 V) a0 x            UF_CALL(UF_UI_write_listing_window(msg));. k' A6 t9 `! i2 k0 @
        }. |8 W. ?% ~5 {
. p8 ]+ V( M/ @4 M8 A# R
    } // end of if init9 ]- V5 {  q  e
}
% m3 ?7 v1 j, G
: K' T7 x5 I5 U- n+ W5 `
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了