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

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

[复制链接]

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

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

admin 楼主

2015-4-20 19:42:50

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

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

x
6 s+ l# o& P5 E" n2 `  E
一些关于使用ufun进行CAM加工设置参数的简单函数示例6 ]6 Z) q8 {  ?* |% d. }
可以参考下,常用的方式!. f) b& {/ T( O, y. M4 i  g
! p1 x8 x4 N' ~% ]9 c8 |
static int set_tool_param( int jj, tag_t toolTag )
( k  v5 X' W8 \) z0 P{
; a) A+ I/ O' ~8 Y1 s" @    double toolDia = 0, toolRad = 3;
; v1 h  E9 t" T" w- f/ T5 r9 c$ d7 a2 E$ @7 L
/*                 Modify the default 5-Parameter Milling Tool         */7 X" K  N+ t, K& p/ e
+ _) f! a5 U; j+ D  b: p
        swiTCh( jj )
8 y' Z8 d1 V& H" a* Q" I/ h        {
5 M7 g: l7 ?; t7 E- I/*                               Tool No. 1                            */
6 ^- h# u" S" {/*                             Add a 3.0 MM crad                       */0 u5 k5 S4 b7 u1 s
        case 1:; o* P3 R: X6 B3 w* D' Y. I
            {
9 @4 y" M7 k2 d/ D1 j9 t; E            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );
" v8 S1 t7 x+ I' h! b1 k            break;
" M8 m( s: \- ^+ d, Y            }
  q' @) n- R$ z7 }0 N( R+ z/*                               Tool No. 2                            */7 p' N' K2 O! {% g9 y) }4 V3 o
/*                             Make this a Ball Nose                   */
/ H1 P6 @7 [6 [. A6 n" W        case 2:5 l/ m3 z3 ~. t! \* u5 g
            {* u' c+ K( C9 @1 q4 ~
            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );; ?: o! d2 p6 O. @; ?
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );
1 i# T- q5 A3 v            break;6 U7 u% o% R- _- T4 H1 v
            }
/ x4 N3 W8 |5 Q& g6 H/*                               Tool No. 3                            */
* i3 W; I1 ?0 F3 y4 g/*                           Define a smaller Ball Nose                */: t8 [) @# W0 ^( v, N& C+ M( y
        case 3:
- Y0 P" A( Z, N) k$ Q. F            {
- g9 @  W4 z1 x7 X$ ?% N            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );
8 d$ S2 y- H' G            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );; g* ^; Q0 o  _& J& k
            break;
6 N( E2 o: I' I! k            }! v2 `) X; A" d  N" e
        default:
! i; C& C* ^4 S8 Z9 _& F            {4 }; N  d$ z* Q4 `1 u/ R
            printf( "Default...\n" );3 ^: i3 L  m6 y1 L6 Q% `# `
            }
' w9 z3 }+ W; |8 ?9 |% `        }! _' s8 F: n6 U4 F
        return 0;
9 Z' g8 w3 M. \3 S7 ^5 f) h# v}9 t7 p( P/ e0 k9 D; a6 d- o

9 t5 Y: @* D9 E- _) [5 Istatic int cav_mill_param( int numop, tag_t *operTag )
/ j! g5 X- Z1 T& T0 |{
% F: V; n. O- `; Q" S8 M8 n; j& W/*   int    numop;*/
& I+ V+ T4 k) {; g   double depthPerCut;
' K4 c' R5 b! M1 e   double stockPart;
, ]* L( @+ I$ G: I
8 P; z# H9 K/ S    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);
# l3 Q0 `; ~/ ^! c# s" w; i" J    printf(" Depth/Cut default is set to %f\n", depthPerCut );- H' B% a$ L& z( p
    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );& i1 P) v/ Q) S! L+ B0 ^/ V. B
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );
# ~9 }: L' v: Z2 r4 @4 {8 Z    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );
" f8 Q8 f$ J: g, @( F- F
3 x$ @8 d3 L7 N3 K1 C9 m' Q    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );
# g+ h* w. M: O7 A5 I8 L; f7 h    printf(" Part Stock default is set to %f\n", stockPart );
# {7 ~- X$ z: N* O8 P! Y& }    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );% r: [! `3 ~+ n6 U
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );: K+ i; ^$ W5 L. q+ B5 j
    printf(" Verify Part Stock reset to %f\n", stockPart );- C+ I- I% S% X$ A* z) @# E, k$ b

8 T$ Q2 A/ x2 O# E- V% R8 \+ ~    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );: B7 a: K  G$ A; `
    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );
* |8 [9 O4 a( H- P; m$ J) L. \! L, R' n! G' F( ^9 }
    return 0;
( G  [6 u  A0 D" o/ ^7 z" Z}
' F6 c0 O1 i" ^# f/ X
+ K- @; G/ q- o9 S( Ystatic int flow_cut_param( int numop, tag_t *operTag ), k2 f$ x  f5 R" v
{7 @" i" M% A  E5 g; l
    UF_PARAM_disp_tool_t display_data;
0 ^. P: h: l8 d: ]8 Y. l6 c    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */
9 S* J. A( t. P5 [: B) m  V0 D    display_data.frequency = 10;8 L1 D6 `( d4 w/ k9 n( H$ g: n, E

0 L6 ?+ q8 F1 e# }7 y: V3 d    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );( n+ U3 P" A$ H
    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
5 M5 o. L: d+ q: V    printf("Display data for tool type returns %d\n", display_data.type );
6 f* w  Q. m, S) h! v: f& `. Q9 V    printf("Display data for tool frequency returns %d\n", display_data.frequency );# X: f( s( o6 a9 k- K+ o
% b! R8 @" l6 |; P
    return 0;7 L+ w$ n+ w: _6 w3 }8 H
}8 \/ T( H. _2 K9 w2 P% {3 \
( B4 y8 ?; o* ]" r' _
static int area_mill_param( int numop, tag_t *operTag )5 o- V! E& u0 D& Q2 u* @
{
5 u9 U0 ~! Y6 M( e8 J; s) A4 l- C3 h
+ m! d" w$ j+ ]- Q0 i    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );
, L+ C$ V. ^3 E0 h  r
3 o. m8 |. C2 M! ]0 g/*                                           1 = Warning, 2 = Skip, 3 = Retract  */   N- o  R+ v" E' ?# l1 ?

* I! x3 h7 b& {. M    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); + O" S! }+ e  t2 ]1 `# Z
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );5 ?7 V" ~. x/ Y* y% T5 ]

( E0 o5 ~! S& X8 `+ Q% P" e    return 0;4 n' F( a' {4 Q: E. k9 e
}- K7 D  |% N& B6 ?7 v

2 q- ~. U' F6 M# f# o
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了