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

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

[复制链接]

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

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

admin 楼主

2015-1-4 20:20:10

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

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

x
这段代码比较简单,但是你可以学习到如何在CAM里面进行二次开发,比如如何初始化CAM环境,如果查找CAM的程序对象,如何获得加工导航器上的选择结果,如何将对象加入组中。8 D& u3 n; j# o& u) q8 V
, l' U5 j* x+ `+ t. r+ b
static void do_it(void)
% w, r  @% Y! L2 v  _: w3 a{
8 _) g& W7 E; n" B; C    char reason[UF_NCGROUP_MAX_REASON_LEN+1];
4 N: j, }' P5 r: ^* ^    char msg[MAX_LINE_SIZE+1];
( @# O% q, v0 b" \+ _2 m& V8 }& b9 V, g! s0 q$ h
    int object_count,
1 s8 p7 X! d: E# C" b" a        type,
, N9 B8 Q* A- }/ O) Y+ ?, ]        subtype;
& g2 V4 Y* W( b; j   
/ U0 M2 M; x: g- C    tag_t1 j0 a+ o3 |9 l- [7 ?- o  c6 w- b' ^
        setupTag,( `0 F' v* i0 I5 e7 L* ?
        *objects,
/ |' @+ ~/ F9 Q" O        prog_root_tag,& K- W$ m! e( x& F3 Y* E! Y8 l
        prog_tag;
6 _: q" G" w7 D% Z4 [4 m+ h7 U" G& `% Y  T+ P5 V
    logical  is_initialized;
3 q; Y8 v# X; l# u, `, b: E+ V    logical answer;9 B0 d5 y/ `8 E% m7 @) F- x
7 m  e+ G9 C/ O( \

& _2 l1 I- j) n( Z5 n: i' S    UF_CAM_is_session_initialized(&is_initialized);% r/ H2 Q1 ]7 ~; J1 d* i5 W

- r) @% f0 [7 X: k
8 q6 H' F9 \! w* z    if( is_initialized == TRUE )) X2 r" G1 i# \+ x
    {   
% l1 P' R. T8 V1 q% S, L        UF_CALL(UF_SETUP_ask_setup( &setupTag )); 6 d1 C# H% ]+ K1 O/ n0 F! b5 y
        UF_CALL(UF_SETUP_ask_program_root( setupTag, &prog_root_tag ));
7 p, {. _1 E+ b
4 ?! O) Z: y! c) J  // Find the pre-existing geom PROGRAM and get tag$ u9 P/ I" c7 H0 f( Z  [
        UF_CALL(UF_NCGROUP_ask_object_of_name( prog_root_tag, "PROGRAM", &prog_tag ));2 q" y0 A6 \% ~+ P
- W' g( |+ H0 |
     /* Get the highlighted/selected operation from Navigation Tool. */- k& V/ _1 x- F# B# @/ F
        UF_CALL(UF_UI_ONT_ask_selected_nodes( &object_count, &objects )); . \8 X' Z3 D1 L5 N; _" X- _1 {  E
. C; c7 d2 i# ^1 U# J6 N$ N! H/ H+ F  t
        if (object_count == 1)+ ?' o( d# P+ k/ i; i* |, v7 T
        {$ t4 s4 |6 [4 n$ F* u  p
            UF_CALL( UF_OBJ_ask_type_and_subtype (objects[0],&type,&subtype));# S' F9 g$ A& X7 i  w8 z  g% w
" G- b1 C7 n8 W3 r# k
            if (type == UF_machining_operation_type )
3 D7 R  b  _9 o) g% N            {
8 O) ^* \4 S3 J4 ?                UF_CALL(UF_NCGROUP_can_accept_member( prog_tag, objects[0], &answer, reason ));* x0 y4 p  L  z9 R9 k( w" f
                if( answer == TRUE )( _, c$ ?( ?! \  g
                {
6 ~" }0 X  M6 I  D0 B0 J4 s                    UF_NCGROUP_accept_member( prog_tag, objects[0] );
  T  z% D9 x9 K4 c6 V* y* K, S                }
0 h# j1 F' w* ]" E- s  B3 L  V                else
3 T: p# {- T- [. P3 A& ^3 U                {
  ^. Z+ `; J. N7 Q: ^( x7 P! }                    sprintf(msg,"program group can not accept operation");
- X# j% B9 k' t( f. l4 P7 I; X6 s                    UF_CALL(UF_UI_write_listing_window(msg));0 D+ T, [! {: V  E$ i# T& b
                }5 \) c  h3 g: L; l
            }
6 e, a8 d) V3 r: o& G" V7 T            else7 \  j- h- s7 S# |; K) R6 O8 ~
            {
  @# y8 ?2 s. o3 l2 y- f4 Q                sprintf(msg,"object type is not UF_machining_operation_type");4 a' h; Y9 t+ j4 S# q
                UF_CALL(UF_UI_write_listing_window(msg));! h% L, j7 |" ^9 p+ M
            }
, G4 f( z: q. Y' Z% |        }( m6 W- T3 d: ]: G+ W
        else/ n3 C3 _" T7 W- M
        {  n1 E, h: e" C, U2 o) u
            sprintf(msg,"Nothing highlighted");/ G# y3 W  c5 D( ?3 X) O3 H
            UF_CALL(UF_UI_write_listing_window(msg));
, @  {- q7 M3 W, t( S        }
; V# }- x0 F$ T7 e
6 s( d% ]8 }% O& }/ q' q    } // end of if init: Z% r4 o  K3 y. T
}* j; D* j* a- f  q. |4 E4 f. v6 J+ u5 i
$ K3 y/ Q8 Q/ C- i) h
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了