PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82170
QQ
发表于 2015-4-20 19:42:50 | 显示全部楼层 |阅读模式

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

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

x

" k0 ?% j: U8 X2 F6 ^1 G- H一些关于使用ufun进行CAM加工设置参数的简单函数示例9 H# |6 v* x' ~: x! p5 }. O: w
可以参考下,常用的方式!
3 w# _' I: |2 `! w. ]! w; o2 z: b6 j" A
static int set_tool_param( int jj, tag_t toolTag )
& K  i4 S' L3 O3 Q- Y- M{) T6 U1 @7 M( w" ~
    double toolDia = 0, toolRad = 3;" {- j  f7 v2 z0 @
! o3 h. u7 P( g' T4 T- F0 z+ x+ O
/*                 Modify the default 5-Parameter Milling Tool         */
8 Z8 q% z5 d$ D4 F: T& j+ {" H, E( }7 g" _! N; G; y+ P
        swiTCh( jj )
/ B2 G* Q$ L0 h- a. R1 }6 a6 R7 B$ z        {! ~0 R! M; S7 U: @6 G! j$ N
/*                               Tool No. 1                            */. b  l* o1 A5 r2 Y/ e' n  @( ?
/*                             Add a 3.0 MM crad                       */
" `  G/ V+ _* F$ x+ F        case 1:
8 `+ ]; n1 M7 z( M0 B            {7 q. g' {" N4 c: ]- s. H1 `
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );5 S8 Y7 ^7 ]" y* }. g/ U! n9 W
            break;# K  m2 r( }% j
            }% `0 r( L0 U& n
/*                               Tool No. 2                            */
8 i8 a0 R* }8 K# R/*                             Make this a Ball Nose                   */  W% _* Y7 {, d) C7 ?
        case 2:
) u. A: `5 f5 s$ s/ O: A            {6 g# U! N. ^. {% w# F. n
            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );. |4 P& t* l7 E1 V
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );
2 @- j8 Y. M0 p2 q! E! ^+ \            break;( K  K) ]+ X9 \4 m  J5 a/ F
            }+ y! L) M& K2 z$ q0 @
/*                               Tool No. 3                            */2 L* v' q$ s0 c( Q3 L- n
/*                           Define a smaller Ball Nose                */
! X+ W! g2 y$ L* }3 V3 k  j5 m        case 3:7 h% O. i; H  b  _! t- e
            {' I, G! C: A) t6 w  K2 ~4 ^0 H* q/ Q
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );% P5 d, T1 b# V( H! I& e" ~* f
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );
' S; k$ Q: H. v) Y+ Q2 V            break;
, m+ T3 P0 [, ^' y            }" I" n( W6 i8 B; J: Y0 p* U$ ~
        default:" }2 [8 Z$ }7 y6 s/ B/ D$ i
            {
' }+ f9 E: p; v) n1 c; b/ R# ~            printf( "Default...\n" );
& B  j# g7 ^" f6 I6 i, q. G- s            }- C2 m8 s, L3 |, m3 w
        }/ v  k3 P# w( y
        return 0;& v; w7 Q1 {: C% N; O2 Y. a' ]
}
0 V8 [. [/ D4 L: \
" u8 z9 @8 s8 Wstatic int cav_mill_param( int numop, tag_t *operTag )
' L1 o* O5 a9 B0 @3 y{. |9 \0 G1 M/ l) m, T9 v
/*   int    numop;*/+ Y* R6 C3 G9 ?# E2 U
   double depthPerCut;
8 T) ?- c' w  z  P$ G& ^   double stockPart;" f3 {+ f+ ~! w# R) F) ?+ v0 a

' t. p) i4 T* }8 C. l    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);! Y8 e2 i# e: E/ u# N$ N: R0 U
    printf(" Depth/Cut default is set to %f\n", depthPerCut );
/ W; W% ^+ k$ ~1 K    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );
3 E% D6 b( c$ r3 W" X. G- ~    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );
7 L: s8 I2 T  B( v* f7 N+ q0 A    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );( f9 l7 ~0 q; P$ |! r# ?

" W  b1 e! @% H9 ?) }9 J    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );
; Y3 l  L+ E, H, ^/ x    printf(" Part Stock default is set to %f\n", stockPart );
0 t: j' o0 I% ~6 ?$ `+ F    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );# l8 j0 ^. G0 {+ w/ n$ \- N
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );3 g, U. `% S, a% d( @
    printf(" Verify Part Stock reset to %f\n", stockPart );' ]) G( U% b3 _9 P3 w* }6 ^

5 P8 `; ]! O1 V5 O$ o* [    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );/ w- L* q. o1 ]8 r- U2 U; H
    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );' G8 Z& s6 ]7 Q
/ t# J( a& Q: ^7 g
    return 0;9 [  r8 ]: h% |8 p/ X0 ~$ y& P
}2 F+ L0 N7 j! S  @  G! f8 h

+ e5 ?! a2 \+ L  }+ z# u: {2 `8 f' astatic int flow_cut_param( int numop, tag_t *operTag )1 F' M& |9 [2 `# _$ _3 v
{
0 C! }$ W8 y) [2 M' |9 u0 z    UF_PARAM_disp_tool_t display_data;
, s9 x9 g  y6 {* P0 @# G/ H# s) C    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */4 A2 b/ j8 w! X) N) m+ P
    display_data.frequency = 10;
9 \4 @1 r2 j6 W4 |2 E4 ]/ N! R! s' d7 g$ g& ~+ j! r
    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
# U7 i1 F7 I" `8 J6 z    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
& p  y9 g( O7 a4 J0 d, A+ I    printf("Display data for tool type returns %d\n", display_data.type );
. K% ~! z' A; j0 k    printf("Display data for tool frequency returns %d\n", display_data.frequency );
" J/ r+ K/ `0 E4 M3 v0 Z9 R% s% e  i+ g8 a% m1 O
    return 0;
) t" I# `) W- ?/ G6 n. j4 k}
4 f) x7 c% R" x- k) Z
, I6 Q+ V$ Y3 ~% F4 ostatic int area_mill_param( int numop, tag_t *operTag )
2 M9 l$ }" k# ]{8 I' j0 k  ^( v6 P  P3 Q
; _7 y" Q! J, `# A0 N! u/ m3 f) f: l# W
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );
6 T& ?5 j, F" @, E
7 Q# h& l. @, z8 F/*                                           1 = Warning, 2 = Skip, 3 = Retract  */
) a0 F' l. V% T$ m3 Z; P
- {& L) `# R% k    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); 8 a* q  p; H, d! l
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );9 B# f" G9 k7 N5 ^- s" v

& c+ p7 c1 `4 b! Y- X    return 0;8 e+ J7 m4 p/ m) T8 e
}: s4 Y/ d% {2 ^6 c

$ ]' r% B/ H7 s2 b% A0 V# I
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了