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

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

admin 楼主

2015-1-4 20:20:10

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

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

x
这段代码比较简单,但是你可以学习到如何在CAM里面进行二次开发,比如如何初始化CAM环境,如果查找CAM的程序对象,如何获得加工导航器上的选择结果,如何将对象加入组中。) q7 m: J* `- T( [
/ a; Q$ A0 B0 ~1 r! V
static void do_it(void)
1 J7 O5 h6 r2 D6 f1 n6 d{
$ b5 L; q; b: {" V1 l# N& i    char reason[UF_NCGROUP_MAX_REASON_LEN+1];# S) f3 m* Z$ ^3 g. o2 m
    char msg[MAX_LINE_SIZE+1];
* J5 L  l9 X# w& x3 J
. L- i. _4 n, ~1 o' W: \& H    int object_count,
0 D: @3 p' y, C  s% ^( C        type,* p; k/ |4 ]( O
        subtype;5 j+ p: a7 L6 a
    . P, ^& G5 Q: r) M, h
    tag_t- g# U$ H: U; l& C; B5 {" `
        setupTag,* _* t. G& T; ]9 m& q* N
        *objects,
2 W. }3 P1 ^9 l        prog_root_tag,8 a/ F0 e+ G5 u: d$ |. ]- L
        prog_tag;
5 `: C8 ~: O! l0 I; B! z, ]% }! p2 {- D/ m+ T" e
    logical  is_initialized;4 P; y- o! @% A" Z3 Z
    logical answer;
/ i6 f9 t% s: U, {! I
) G- {3 f$ c: k8 F
" s1 y* Q2 F4 f1 i% Y2 ?    UF_CAM_is_session_initialized(&is_initialized);
0 V: h' G! {% J: |7 S
' A3 @7 |! c/ `0 i% w" o0 @" ?* @3 Z1 H" L! J  Z7 S
    if( is_initialized == TRUE )* p' C% C- I+ n" _  @; F' b
    {   
  Y0 S/ l9 z3 ]" o  r' [        UF_CALL(UF_SETUP_ask_setup( &setupTag ));
5 T( J: t6 j% a8 |, s' a% G! K        UF_CALL(UF_SETUP_ask_program_root( setupTag, &prog_root_tag ));) l3 R+ t* K" b4 a; M2 v2 O) [! O

2 d4 w" J8 H! `+ _" q  // Find the pre-existing geom PROGRAM and get tag7 L3 b& y/ {0 d2 c3 S1 {) @
        UF_CALL(UF_NCGROUP_ask_object_of_name( prog_root_tag, "PROGRAM", &prog_tag ));
  G4 H0 z) N/ \# h0 ?2 g' a. ?. d
4 w9 \5 T* [1 g* @# b4 s     /* Get the highlighted/selected operation from Navigation Tool. *// o/ ^; p/ ^: ]: z, x4 m. r
        UF_CALL(UF_UI_ONT_ask_selected_nodes( &object_count, &objects )); ( o1 F+ e$ g1 {9 [( M8 L, T' m2 Q- o

: z1 v; p8 E3 k! c3 K. e        if (object_count == 1), E% L: `0 {7 `/ D* U  g: L
        {
9 C/ Y* _+ V6 A# O            UF_CALL( UF_OBJ_ask_type_and_subtype (objects[0],&type,&subtype));" p: W8 R4 ^# v' n
# A+ B6 h  f5 m4 J& ~: \# `/ S
            if (type == UF_machining_operation_type )$ m" M( s' h' h2 c
            {
4 [  U) \! p, W7 k! {( F                UF_CALL(UF_NCGROUP_can_accept_member( prog_tag, objects[0], &answer, reason ));
5 R0 a3 M- @5 \- t3 ]  Z( b                if( answer == TRUE )
; Z5 `$ l- [0 l3 m+ W+ ?                {$ J' P& D: I. i, @/ J
                    UF_NCGROUP_accept_member( prog_tag, objects[0] );
- \  z4 s- \0 v8 w5 i( {& F                } 0 }9 {7 c( j" F9 ?7 N5 E
                else
" S9 y- o/ g- |% J5 l                {
7 M- e  K; }, O8 W* X3 e9 u3 k+ P2 a                    sprintf(msg,"program group can not accept operation");
% v6 F: C4 A5 {6 H0 z                    UF_CALL(UF_UI_write_listing_window(msg));" S/ C; k- r& W. I! h
                }$ F4 e" L- x! Y* V5 s7 I1 z
            }
0 ~# C% U' y) Z            else( @% c7 D& _& x5 Q0 X% ^& t
            {' }# d8 f" i/ v  q1 {1 X' Z
                sprintf(msg,"object type is not UF_machining_operation_type");' |% l; Q& U4 b1 K
                UF_CALL(UF_UI_write_listing_window(msg));8 ~3 S, Z, S3 P; B. l3 H( P
            }
3 [* P: v/ S( e8 R- w        }
, \3 P  Q  s: U$ }        else/ x1 y3 c0 _+ a+ c; k
        {& g% w0 B4 }/ |( U' }8 V
            sprintf(msg,"Nothing highlighted");9 H! \+ y( b! k" ^8 A
            UF_CALL(UF_UI_write_listing_window(msg));+ V: u. ]: ?) O# ?
        }2 o4 @2 Y& |. b% @
9 H8 O' z1 T! A/ d, @
    } // end of if init" ]5 t$ F7 ?; @
}
3 Z* w4 r- J, B. B) U: D& }6 C  B  X+ z6 \$ e: h7 t' \; m. q) r! A
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了