PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

[资料分享] 一些关于使用ufun进行CAM加工设置参数的简单函数示例

[复制链接]

2015-4-20 19:42:50 3744 0

admin 发表于 2015-4-20 19:42:50 |阅读模式

admin 楼主

2015-4-20 19:42:50

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

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

x
5 {# j$ c- P6 L9 a2 C
一些关于使用ufun进行CAM加工设置参数的简单函数示例& @& Y9 B; W) s$ `& ]
可以参考下,常用的方式!' [% S' F9 H# Y$ {$ l$ M& {( `: ^
! j0 b- J- A. B4 B3 d  N
static int set_tool_param( int jj, tag_t toolTag )
5 E. [6 g) m  w, |{
' V  M  O% ^/ V/ Y- t/ B    double toolDia = 0, toolRad = 3;
( R9 d8 G0 y# O& T- l8 U
/ r- s# @0 J$ O* p: B1 Z; m/*                 Modify the default 5-Parameter Milling Tool         */) q: ]( J2 y& t' u" o7 p/ [
) X# a- y# r; o5 s" p4 s: ~
        swiTCh( jj )1 c4 s4 A5 L2 y
        {
; b/ j- z1 T9 x0 R/*                               Tool No. 1                            */' O; v; H9 V" h* i
/*                             Add a 3.0 MM crad                       */
) I  a1 E* Q; |" o1 X9 |        case 1:
$ w- f. L' K! b- k# Q% M; ~            {
' ]) }7 x# b# N1 O; F& P0 ]            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );, a' m$ i5 C9 R% y. Q  v9 a1 V) B
            break;
: U8 G) @/ o$ h, R$ ?3 V* [' g9 Z            }
- W# O4 K* A; W  }$ j* U7 y7 v/*                               Tool No. 2                            */
0 |* S& Z1 n' x0 }3 `3 @/*                             Make this a Ball Nose                   */
7 T7 D/ n+ t& O        case 2:" t) w9 g5 N# m  p
            {
/ K. H/ \: x9 w            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );& @0 l2 ?5 T' V
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );
+ @0 `: q! q9 K2 d: X! [' V, e# _            break;
6 C/ z  a+ d$ i+ w) x( b) A, e            }
0 K+ l" M+ o3 Q/*                               Tool No. 3                            */
, \8 E' ^6 S5 I/ N* ^/*                           Define a smaller Ball Nose                */
) _4 U: i) O+ G+ S  {5 }9 S- ?        case 3:2 L3 B# N5 K. R2 Y4 R
            {; H! o4 o# R# l/ `, S2 a% Y
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );4 x, a# R. ]& j' ^0 p
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );& W+ B* [8 y( i5 x# b; I
            break;
8 c; V7 D( j4 u/ k3 u/ ~, s            }( z0 j! A& b! l4 d% u5 U7 p% i
        default:
: B7 S9 ^3 j1 G4 |# B7 J3 Q            {
4 c( N7 }* J2 D, |" I9 n: ?. p            printf( "Default...\n" );
' w# e7 T! p8 H8 W9 V. ?- z            }
& l" i7 \) H# ~4 N, h. a8 K, A        }
2 a/ ]" G# z- Z) @6 t# w        return 0;
! z5 d; N+ q2 m+ n: e' K. Z}- O5 D2 I$ y5 C- K9 m# D  u3 X& ^+ z
3 Z* D2 ^% `- ^5 s" F$ P
static int cav_mill_param( int numop, tag_t *operTag )/ A! \, q2 V& J+ H0 _- @6 H
{
' t, Y/ \4 S9 U* b$ T/*   int    numop;*/
1 y; n' `$ o2 \! i: q   double depthPerCut;2 K/ `* p4 ~  Q& J7 i7 n* C: k6 q
   double stockPart;7 d$ N5 A  l0 `) u5 [2 B# j$ _

; r6 o+ Z% p8 }9 r" b    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);
/ {1 g/ J. p; i# B/ ~9 y    printf(" Depth/Cut default is set to %f\n", depthPerCut );
6 d4 v# M) c2 J, Z' s2 G    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );
% c; K# ^; n" v6 a    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );
0 x! Z9 ?2 s6 a& ~8 w- K    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );
5 |" }( q9 k% [/ Y! v  r2 N) O8 _1 \7 s( ?7 V  r6 ~- o* s
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );) g% I4 V1 r* p5 J( S) h
    printf(" Part Stock default is set to %f\n", stockPart );, F2 S% P$ m8 }- ]5 ?3 j
    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );7 y( {+ H: j3 M5 x) Y
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );  L% }$ t6 y2 C/ {  W5 T$ R& A# G
    printf(" Verify Part Stock reset to %f\n", stockPart );
2 g$ w8 L. \6 D/ ^3 I" }% Y. t) Q( H
    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );8 V2 o; H6 V) [& L# h
    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );! G( T- K# I' Z+ k$ ], E) H: Q
0 z, w! L8 Y( k) |5 k
    return 0;& Y. b- a8 e; Z+ T# ^0 t' Q
}
( Y# z! l- b7 s4 T
4 O' R, ~1 E; [static int flow_cut_param( int numop, tag_t *operTag )% j3 B) J. p' M, Q* O
{0 |6 v  y" ~! w7 |2 J* A
    UF_PARAM_disp_tool_t display_data;+ O0 l  ^$ I: @  ~& Z% t" M/ k
    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */2 ]$ P/ d2 T( a
    display_data.frequency = 10;. V' K- C1 h& ?2 _$ y4 @

4 x: G& V. S( X5 Q; F4 `. m1 D    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
- X1 w. R: Z$ b6 P    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
3 [! X( z* P# O  c+ n: [: Q& _. a; i6 {    printf("Display data for tool type returns %d\n", display_data.type );* |) o2 ~; u% ]4 E& o1 J5 S4 r  u
    printf("Display data for tool frequency returns %d\n", display_data.frequency );. _+ N0 y7 v3 E; C

5 X& M& k3 t# G3 q    return 0;# ~! V: T8 o* J
}$ d* z8 S5 a+ a3 x% m" Z) M' v
7 V3 ]! ~7 A: ]4 u0 @  |( k
static int area_mill_param( int numop, tag_t *operTag )0 Q, S6 |; ?0 f
{% h0 L2 q% x7 n$ j2 ?

3 y9 E1 ]6 X1 d0 g# z1 u! V    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );
7 N. Z! k6 a& s8 ^3 k* M. G+ X9 U# ]
/*                                           1 = Warning, 2 = Skip, 3 = Retract  */ / g3 ]  ~( o6 ~
2 T  i: A/ H& E- C- k
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); $ A  g9 n1 M/ A' R- I: |
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );2 @6 Y+ l" _3 s1 T/ ^. |: z# W7 @3 P: I
* |. p) l& h$ \
    return 0;
- {# Q$ m$ {  X1 v}
5 y; a7 {4 K. b- `* R  ]0 T0 J2 ^- E2 N) {# d: Y" K, D# E9 \
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了