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

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

[复制链接]

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

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

admin 楼主

2015-4-20 19:42:50

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

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

x

/ Y! }* N5 Y% t2 i( P/ C/ I一些关于使用ufun进行CAM加工设置参数的简单函数示例
9 ?. n% _: H* z& Q5 I可以参考下,常用的方式!
+ a  s* h" _- ^4 [( x; e! C
& j! a' s" @# b7 _9 U# Y9 L0 ~static int set_tool_param( int jj, tag_t toolTag )
& [) s, j) v0 j1 J{
, h3 c) K( F/ l/ s* _1 k    double toolDia = 0, toolRad = 3;& C& g5 @! ~' c' L  ]& L  Y; y

1 ]# M- G( c$ f: J. J8 F1 D+ N/*                 Modify the default 5-Parameter Milling Tool         */
9 h2 T5 j! w# r+ @9 P& X: @; y
( ^, O1 ?* z% U9 [0 v        swiTCh( jj )! e' f+ t* I: b! o% r
        {
- _- C9 p5 [6 [' E2 u0 b5 ?/*                               Tool No. 1                            */
5 V4 x- D, S; M# H$ u/*                             Add a 3.0 MM crad                       */% F4 e8 k. R4 k0 R& U* a
        case 1:
/ J+ w7 Z  N9 O            {
7 I$ e7 r. R2 t' M- X            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );' g5 k( i: k( c3 n" x5 @2 b, I
            break;, N2 n- S3 L  k1 C6 W. z
            }
7 X3 t2 K3 L2 c* T0 d8 m6 R9 \/*                               Tool No. 2                            */2 l8 l2 \2 H$ R" C0 s
/*                             Make this a Ball Nose                   */
0 _2 V! x+ A2 l% G2 y' p# g$ o        case 2:
/ N: I$ T4 \6 D5 A2 A  J            {
+ h* o+ _# R  s" ?* w            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );
6 B5 u) O! |( y0 A# }            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );1 n; Z$ U. x  g/ L4 ]
            break;
6 k2 W5 I' G5 h, [. S            }' H. b6 d& x% q5 y
/*                               Tool No. 3                            */
2 V' c! Z+ x- @" o: u! a; y/*                           Define a smaller Ball Nose                */
( f7 S/ o; E* Q        case 3:
2 t: ~. K' `7 b' [( ]8 x            {0 U$ ?" G1 i: D
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );
& l5 P+ C0 g9 B6 c" _            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );* e5 H$ `8 ~( l0 @% s; ^
            break;
/ f. M* i6 k0 i8 D% [2 l            }4 c$ D9 X! d1 Y5 Y; Y3 H
        default:
  t  U& N2 R9 Y: _. G            {
3 F' w5 |- l1 N5 R            printf( "Default...\n" );2 V/ J# Q0 x5 Q" {) p/ ^) R5 C  ^
            }
) L6 Y7 t9 w* s; Z( T, {6 L        }
" q! w- h! L) D( S        return 0;
. s6 h+ b0 @- u" I6 }5 v}9 O) M' }0 V2 |6 Q  y: A
7 C1 H: j" s* P4 o2 D) J
static int cav_mill_param( int numop, tag_t *operTag )
! A% @! j3 v! n{
  U2 l2 [& Z8 C- E3 q' V) P" @/*   int    numop;*/4 m8 J) _4 e; o1 B& d4 P
   double depthPerCut;
0 @" y8 c4 ~/ M9 q( E2 C" a   double stockPart;
' ^  I- w/ B5 X4 ?1 v* q! S& e" I- W$ Y4 z5 _
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);
/ o! P7 O2 A) d0 i- R" N1 u2 O    printf(" Depth/Cut default is set to %f\n", depthPerCut );
9 b, Z+ W# Y6 A$ r    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );
( e7 `% C! k5 s( ]0 p2 l/ e    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );- R' j8 _# T, Q# u' Q! |& H2 \
    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );. A/ Q! I; }3 c0 [  l

1 g% d5 |& o; R4 w6 [    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );( `1 m5 C6 Z: h4 p
    printf(" Part Stock default is set to %f\n", stockPart );0 g: l1 h$ @  W
    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );
9 ^- |, }0 _4 s: d3 L" t- f    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );
& I7 C9 C  H. v9 Y/ d    printf(" Verify Part Stock reset to %f\n", stockPart );
9 g6 U8 a. [) C& {' c. ^  e- g- m, l
    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );& Z% ^1 l+ l" d! m2 H  r6 S
    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );
2 E5 c& m# F$ Z* x& G% I' A( O  f- a1 `$ D& |0 S
    return 0;2 H! X( m! s; a
}. o) z4 k* N, l" _8 J
( C$ [' {5 D5 K
static int flow_cut_param( int numop, tag_t *operTag )
5 T+ A$ D  C2 A$ d9 j% o5 x* F{5 {. b3 E8 S! r; r
    UF_PARAM_disp_tool_t display_data;
; ~" [% I4 H1 d4 }* ~' m; a/ g2 w, M    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */
1 [0 @0 Z  u# ^9 l) ?" W* A    display_data.frequency = 10;
5 Z, M: R& K# f1 x$ X% Y4 t  ^" U7 r9 Z
    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
$ O9 V4 j+ j. e  s4 v    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
8 G; @4 l0 Q# p) |    printf("Display data for tool type returns %d\n", display_data.type );$ X, T) y- i2 J" e2 B
    printf("Display data for tool frequency returns %d\n", display_data.frequency );
' `1 n8 N$ o0 o# h. Z( ~0 B  h" D. E. H+ y; `( a* [8 \5 z
    return 0;
- l: Z, t) H+ r0 g}
' }" P" ]: J  m" Q$ j! c% c! G, M' \9 e) p
static int area_mill_param( int numop, tag_t *operTag )
) n% s& F" \- t, K8 p1 n{
; o2 }% \0 p9 [( e9 g  ^
7 @: A" o4 Z9 z( ]# f. \: K8 G. i: k    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );
8 c% M" j5 Q3 ^1 z5 N. l
9 i5 L# c; }; W& D/*                                           1 = Warning, 2 = Skip, 3 = Retract  */ 5 a/ b: c5 F" e* u

. _" a. u: _% ?    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); ; m! z; _% M4 Y0 B. m! Z' _* B5 \# U
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );
5 s/ ]+ \8 b; m2 y" @0 W4 @
6 G: x* X9 o  @- `2 ^    return 0;2 W) B5 h2 ^& w5 n- f# F
}# @: m. X" S- [- v% c* [) d

; m4 Z' @- q2 k6 ?) E8 X( x2 n
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了