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

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

admin 楼主

2015-1-4 20:20:10

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

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

x
这段代码比较简单,但是你可以学习到如何在CAM里面进行二次开发,比如如何初始化CAM环境,如果查找CAM的程序对象,如何获得加工导航器上的选择结果,如何将对象加入组中。" j3 z/ v1 `) k* m, a* R3 C7 S# {
: X6 y8 T2 y9 l
static void do_it(void). y, j/ r% ^; m* M8 c+ U
{
9 p+ H# {3 U7 ~( I$ S# X5 F. y    char reason[UF_NCGROUP_MAX_REASON_LEN+1];
( \8 i0 Y- j; Q; a- D6 |4 |    char msg[MAX_LINE_SIZE+1];: `3 E, }5 t- H# Z

; [# v) n4 D# E+ A/ Z# q& a    int object_count,' T. S5 p6 P; B. X4 W* Y. _
        type,9 E' H6 h) G4 ~& k2 h% |) ~
        subtype;
3 x0 j1 ]0 I: T  X2 Q0 k   
, ], Y2 x6 R% U    tag_t
& ^! H( S* l% Y$ n        setupTag,- F5 R5 \( I, ?" L9 V, D
        *objects,
0 a2 b0 g$ d1 G& X        prog_root_tag,
4 P* g1 J% j/ s. c7 r        prog_tag;8 ~& ~8 \" G+ ~3 H7 m/ l9 Z
: q. ~6 X2 k+ h% y; |
    logical  is_initialized;" K& Z( J+ d4 F  ^
    logical answer;8 r* I4 w, @3 ?3 ]

* f1 a$ x: ^4 B7 r' [; U6 e8 n/ F; _8 L# f: I( U% d; {- d& d
    UF_CAM_is_session_initialized(&is_initialized);
4 V! A! C* _  W( K! c9 a
# }9 w; M4 j( j
/ d) I9 C. y* d0 \2 `# e    if( is_initialized == TRUE )- G+ J2 y  M& `. T  I  r, l
    {   
$ ~1 {- Z& w9 `% g! B3 }% N6 g3 z% n        UF_CALL(UF_SETUP_ask_setup( &setupTag ));
! i* D  Q; h* Z# t        UF_CALL(UF_SETUP_ask_program_root( setupTag, &prog_root_tag ));
2 ]: e8 r7 g! b5 q
; x& D( F" A" f  // Find the pre-existing geom PROGRAM and get tag8 O5 J  ^, A  `! b
        UF_CALL(UF_NCGROUP_ask_object_of_name( prog_root_tag, "PROGRAM", &prog_tag ));
- ^9 Q4 U& ]  h, C3 T: @
% H2 E1 e+ N% U) p5 ^4 Y& [     /* Get the highlighted/selected operation from Navigation Tool. */, B: F& X& _% _) M1 o$ T& O
        UF_CALL(UF_UI_ONT_ask_selected_nodes( &object_count, &objects )); # z- P; F8 ?  d' f; b  B
& w( L5 i' n" Z! X
        if (object_count == 1)/ V" V+ f9 g  h7 ]# v9 P3 ?  L: v
        {! ]" X: B6 m& z* c9 e" p
            UF_CALL( UF_OBJ_ask_type_and_subtype (objects[0],&type,&subtype));8 a0 c% ?# f6 B) F1 C3 T) L  L% T1 D
  L. ?; m: J1 G! s8 p' `
            if (type == UF_machining_operation_type )- W3 Q" B8 j% U2 K$ }# y' q, J) x
            {
3 C2 {$ o. e6 @! z                UF_CALL(UF_NCGROUP_can_accept_member( prog_tag, objects[0], &answer, reason ));% y9 l' E; Y6 \, }: C9 X
                if( answer == TRUE )
0 K; G8 c* j; P7 K* f% n. N                {, g7 F) T* z; s5 a& R( S
                    UF_NCGROUP_accept_member( prog_tag, objects[0] );- d/ Q* x) D5 b5 C* c9 e3 h' D
                }
4 t$ ^6 L. e6 g5 W. y' A                else 1 T. o. J% m# i3 F% N/ N
                {  N6 \" Z0 O, w) l$ w7 E$ K
                    sprintf(msg,"program group can not accept operation");( g* y# T1 }3 z  `; ?
                    UF_CALL(UF_UI_write_listing_window(msg));$ D0 u9 F3 {4 R* g8 b
                }
& g* ~  p. D+ m  A9 l0 }" |            }; Y: t  k9 a! L$ `
            else. h7 A4 V5 m: b3 B7 ^
            {
) l( `* s5 k( P' [3 }                sprintf(msg,"object type is not UF_machining_operation_type");
: t" P( \8 a" {/ ?8 Q                UF_CALL(UF_UI_write_listing_window(msg));5 k) y9 M9 E& x9 Q* i' v
            }- n( \( S: c  s$ a+ J$ Q
        }4 [$ A( z+ O% S( [) @! k) n
        else
0 V2 T4 u  d: a: P        {
3 A( w6 B4 M  p/ \            sprintf(msg,"Nothing highlighted");( `) _" E- o4 n, E7 Y
            UF_CALL(UF_UI_write_listing_window(msg));* C/ r  ?7 R4 G# j; t
        }3 _0 {. K8 Y' C7 E5 v

! H1 l3 ^1 ], D, p  R    } // end of if init) E+ S# c* N! `
}  |' b' r: j$ R& w

/ g8 k4 B0 H% 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二次开发专题模块培训报名开始啦

    我知道了