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二次开发中,CAM加工的一些属性设置和查找

[复制链接]

2015-3-2 10:38:13 4340 0

admin 发表于 2015-3-2 10:38:13 |阅读模式

admin 楼主

2015-3-2 10:38:13

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

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

x
1,查找刀具属性
5 r! _% e4 ?( ^+ ntag_t tool_id=NULL;" Q* a3 G. C" c2 S& o9 _# Z
double tool_diam=0;
& R+ O9 ]6 a$ |, x1 t/ N: |        UF_OPER_ask_cutter_group(oper_tag,&tool_id);; y5 L3 F( \2 t* b) d
7 C7 \/ I* D3 y* V; v9 Y* j8 j
UF_PARAM_ask_double_value(tool_id,UF_PARAM_TL_DIAMETER,&tool_diam);//查找直径
: z7 P( V; F& K; N; n- w4 A& M. _# s) z. j$ D
char tool_text[133];( i% p  Y& {/ i
char ch_s[10]="", ch_f[10]="",*ch_p=NULL;0 f9 z( o5 I3 M+ D( ^- r; P
double tool_s=0 ,tool_f=0;//主轴转速,进给
- s6 ]& H- l# J" ?, I7 I. C" Q                  
3 I, I! y# z" Y* _8 U( ^* T! k! ]( `4 s# `( C$ \: e% P4 _5 b
if(UF_CALL(UF_PARAM_ask_str_value(tool_id,1158,tool_text))==0)//属性文本
6 w. T9 k$ o+ ~& Z+ c. ?) m{
/ H* M9 _/ ?. W, _* M. R- a, W, q        ch_p=strstr(tool_text,"S=");# Z1 t4 e* K' h: R7 l2 f
        * q' ]: o+ \( i. h2 v
        if (ch_p!=NULL)
5 t! [8 V# A) P9 A1 ?. W' e* ?8 J8 {        {
- v: o! b; \+ v' ?% S9 p. U& l+ e                int i=0;
" v* J: Y$ q% ^* {3 O6 Q% [                ch_p=ch_p+2;
( e- X1 A7 U0 {5 u. ~. r9 c                while((48<=*ch_p&&*ch_p<=57)||46==*ch_p)//当指针指向为数字或者小数点$ _' D# S9 T1 e
                {2 g8 @2 {0 \4 _2 s, J! \4 x5 ?8 K( S
                        ch_s[i]=*ch_p;
- F5 v2 ~6 h# j- R( c                        i++;/ \: U; T$ N0 e0 ^, e* Q+ Q
                        ch_p++;1 ]) P1 x+ {* ^% n
                }
& a3 d' h) [( N1 ]                % _6 k$ @" P" f
                ch_s[i]='\0';7 g& _. e6 f# k- Z: @* {
                if(i!=0)
2 y$ @) _; B5 p7 ?& `& l                {
, N! @; N5 l$ |- [0 A& F                        tool_s=atof(ch_s);9 @! _3 R9 v+ R! ~0 j; ?% R/ Q- g3 ^
                }* n9 M- N+ t4 _8 \( ?8 k
                //  uc1601(ch_s,1);
  _$ f! w1 e! V) e9 L! z+ e        }
9 O9 s8 |1 U% B
3 V' c9 r, b6 B9 W        ch_p=NULL;! `2 c8 P- e% ~
        ch_p=strstr(tool_text,"F=");
& o$ v" W: c2 C: M1 b% L& `( Z0 y$ x$ w0 \% u: y1 A) S# X/ g
        if (ch_p!=NULL)+ `$ M1 U6 @0 i$ _
        {, l2 n7 ?5 w$ R9 {' v1 {
                int i=0;
" n( {  U) Y5 G( I! e% t9 H                ch_p=ch_p+2;8 g; V, s8 T9 I) _
                while((48<=*ch_p&&*ch_p<=57)||46==*ch_p)//当指针指向为数字或者小数点
+ d( C+ G, _( {' @$ b" q* [. B" g/ K2 d9 Y# J' C, J
                {
# |# H- p) ]1 a, S4 ]; A2 }                        ch_f[i]=*ch_p;* R0 H% r( E' i. L6 h: B  `7 ~1 I
                        i++;
" W5 I! M" @! a/ i  y                        ch_p++;& A# r% C$ j9 {& y
                }
% [4 C1 X4 Z& N4 r3 J                ch_f[i]='\0';
# t+ `7 A8 w- T$ ~, W) @6 o                if(i!=0)
' S" N- o* p1 h! a                {0 g( I4 q. a* T8 N) l. I
                        tool_f=atof(ch_f);- [( B6 n9 q8 P; @, t1 m
                }
/ \* ~* m' W' V5 b                // uc1601(ch_f,1);
& G( ~7 }8 V5 r( K        }5 R) W* w! P% C) ]: i% E
       
% D7 V2 [1 d" V4 e$ M$ {; m}+ S6 X+ P. W9 g- i$ ?0 N( F
  E, v  y- Q4 j& z: k+ }2 I
2,
, C3 r: p. N+ t# l8 C1 n- C* V9 Y7 V//主轴开' h9 R; h1 A0 K4 P! q! s
UF_PATH_spindle_on_t spindle_data;% j, y8 z- a* U% y5 j
spindle_data.speed = tool_s;
1 u" b6 d/ F; i' D& M3 X' W9 Lspindle_data.maxrpm = 10000.0;5 U5 p; U  J: V, y6 ^* F
spindle_data.mode = UF_PATH_SPINDLE_MODE_RPM;
  l7 q, Q( \+ R$ W1 R) v, vspindle_data.direction = UF_PATH_DIRECTION_CLOCKWISE;
7 p4 Y6 T7 a: X4 pspindle_data.speed_flag = TRUE;4 L% Y5 R! T$ J. }6 r% g
spindle_data.maxrpm_flag = TRUE;0 f5 C3 o  _8 n. c' {" F
spindle_data.range_flag = FALSE;
& G; k- ^% K9 d5 i5 _' YUF_PATH_create_spindle_on( path_id, &spindle_data, NULL );
2 E  b8 \& b! V! w3 L//主轴关
1 ]1 m+ a5 G* R. x3 JUF_PATH_create_spindle_off( path_id, NULL );
5 x  D! k& m; H) \2 k! g
2 v: ^5 ^' y0 U1 ?3 z  ]! C) K' ], g( u6 Y, G0 W
3,//打开刀具补偿: `5 a9 v; Y" c
UF_PATH_cuTCom_t  cutcom_data;
+ p, a) x6 _1 v# R. mcutcom_data.cutcom_mode = UF_PATH_CUTCOM_LEFT;
3 V+ e: r7 D  x& _# f. Kcutcom_data.plane_type = UF_PATH_PLANE_TYPE_NONE;
1 u. G8 {5 |3 S) ?cutcom_data.cutcom_on_status = UF_PATH_CUTCOM_ON_BEFORE_ENGAGE;
7 B1 B8 ?. C0 l* r% wcutcom_data.cutcom_off_status = UF_PATH_CUTCOM_OFF_AFTER_RETRACT;5 E5 A1 T) a8 @* a+ l& S
cutcom_data.adjust_register = 1;' j- C" n( t- a7 [/ w
cutcom_data.full_cutcom_output = TRUE;: Z' @0 k( ]# w0 Z3 }: b) l# E" c
cutcom_data.adjust_flag = TRUE;4 V9 f, F$ X( l7 c" ]" p
UF_PATH_create_cutcom( path_id, &cutcom_data, NULL );
1 b0 y$ e$ N+ @7 k' ~3 J* ?/ L1 ~/ f8 ?* {; d. G* J
//关闭刀具补偿" q9 W8 M6 {$ Q8 X- h
cutcom_data.cutcom_mode = UF_PATH_CUTCOM_OFF;
9 v0 `: H4 m& z8 u  u' ]UF_PATH_create_cutcom( path_id, &cutcom_data, NULL );6 s. O, ]2 W0 D3 i+ B" @) n

8 u, J! ]- R6 }' w( q" x1 f. R: \/ U& S8 _: J
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了