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

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

[复制链接]

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

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

admin 楼主

2015-4-20 19:42:50

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

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

x
) E  \* r$ \9 f  e7 K
一些关于使用ufun进行CAM加工设置参数的简单函数示例* `8 J2 Q* d" d0 D5 T; @1 C
可以参考下,常用的方式!1 }$ E2 e% V; }: R3 Q4 f

6 T' X0 r  ~( Y: fstatic int set_tool_param( int jj, tag_t toolTag )* w2 x1 {  T9 T5 J
{+ j, e9 I, i$ h; L  {
    double toolDia = 0, toolRad = 3;
* K5 h7 U; a, x6 F3 z% |" f5 I" R6 H% t, a: r' o1 D" L
/*                 Modify the default 5-Parameter Milling Tool         */- }+ f! A! c8 U' C1 z: v* }
& M* p1 u: ?; @) {# a
        swiTCh( jj )+ q4 O; ^4 D, A$ K% \, L. A8 S, B
        {5 d7 s- [' ~2 S# y
/*                               Tool No. 1                            */# ?1 b% Q0 f, L' F
/*                             Add a 3.0 MM crad                       *// h) U4 Q3 F4 C/ K3 f
        case 1:8 j( ~! J1 u6 J
            {& s6 e6 a" O* z! f0 Z  ~, w  N
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );
) v* q! {" S  r            break;
1 Y' A4 W$ t% g& T- S  C            }
$ U! ?7 b8 A7 T/*                               Tool No. 2                            */
2 x2 L& n) ~5 P. q4 U! o/*                             Make this a Ball Nose                   */, \) R# p$ K2 p/ }4 ~( ?( |
        case 2:
# P8 ?2 o3 o9 Q! N            {6 `) q* q9 W1 \# s) I
            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );+ N' e8 l/ q# }/ z
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );
# h. O+ `5 U& L2 N) ?            break;9 x' `5 Q) M% E" ^1 m5 r" k( k
            }
/ V  k* U$ ]  M9 N, H3 z& N+ z+ ^/*                               Tool No. 3                            */
% H$ n: K0 w5 G: P' V3 G3 ?" w/*                           Define a smaller Ball Nose                */: n, r0 B# Q: P; [- h
        case 3:, A$ B! z+ R" X
            {; L( {6 N! I& q( `' Y) R! |6 D
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );- k" W9 i% {4 E1 b# @) G! L
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );
1 V) y5 d( R( D: j% m9 v            break;
- s0 M1 j/ c! p* i9 Q9 X  A, f* S5 V            }7 O# _4 e% Y9 Y' m' K  _; y
        default:7 }1 B- P% W( @" [9 `  S; J
            {
. e; t  T5 P2 V+ x5 ^            printf( "Default...\n" );
; h* ?  c- p, r: A+ o1 s            }
5 @& l/ w6 w% j        }) S( V9 ^" X: m. o* ?) W
        return 0;7 _$ J! D$ k# R: {+ x) t
}' J! i* s% c- l4 u5 R

# P) f( g& ~# A7 c* Nstatic int cav_mill_param( int numop, tag_t *operTag )
3 k/ n3 \1 x+ s2 z' F{) k. t- Q3 s( l% O* W  q: P. n' c
/*   int    numop;*/( q4 F: Y: L& w) }9 w
   double depthPerCut;, _5 T5 U6 T# \6 A4 |8 R6 a) {
   double stockPart;0 f% n5 w  p! }+ a; l& h

' M$ a7 r& O; p) D    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);2 G  |% @5 r; ?# E  Q+ R" b& ~
    printf(" Depth/Cut default is set to %f\n", depthPerCut );$ M' B8 b! h6 K1 t
    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );3 R' w+ x6 G- g" o( k/ U
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );9 V* F  ^: W7 V. ]) g, L
    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );1 y9 F) G. v7 B: U5 H4 u& o

# L- F+ K: Y& C1 I) n+ v1 ^1 S    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );! ]) x. w: i' u& e; }+ Y4 J: {! W1 }) y, I
    printf(" Part Stock default is set to %f\n", stockPart );
  r& }! [6 j1 m  z1 H3 k    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );2 Y( r/ t, ]) _5 }
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );
$ K& g6 W/ s2 P% T8 G    printf(" Verify Part Stock reset to %f\n", stockPart );
, N' J& t% P! m% s/ ^. W6 D$ g7 p
( T, Y* i  f# E3 J0 _1 x    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );
# L% s" {  \$ X3 I    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );- `6 U* {% [- L+ ?$ X
8 s0 G0 ~; k! K- u# G0 V" R  f1 |
    return 0;
6 C4 k. L' H: r2 `' ^2 ^/ X}# n6 I; U# r5 S0 V( ?% u

( f% M; f0 L) ]: nstatic int flow_cut_param( int numop, tag_t *operTag )4 l: C+ Z, N% N, C, V4 ?7 b: I
{) r  {; Q- H7 L$ S% n
    UF_PARAM_disp_tool_t display_data;) u8 X# |% G) g4 g
    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */
2 J. O# r7 [* a& A: X    display_data.frequency = 10;2 W& L  U( G: ^( C" m

' J0 X% q  v# ~! W    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
0 [! j( |8 [& ~- r    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
1 P7 C8 L* u) d$ Q3 ]; r1 o    printf("Display data for tool type returns %d\n", display_data.type );0 F4 X; I* Y. t0 A# H% L! ?
    printf("Display data for tool frequency returns %d\n", display_data.frequency );7 U7 }1 m% `  \5 n: n& d7 F, {
# U; P9 e$ {% w. Q. H. k
    return 0;% b: A' l5 {8 X/ p
}; t# Z, S, O2 a$ Z  p

8 w% g1 H  U3 F% ]static int area_mill_param( int numop, tag_t *operTag )
  m; {# C+ {2 Y# W% P5 P' P* O{
2 M, b/ ^  |$ k; u  N. {2 w$ U! O/ Q
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );5 [  h0 G% N& ?1 g
4 Y) s3 ]" O# N/ U
/*                                           1 = Warning, 2 = Skip, 3 = Retract  */
% p3 x7 B3 l3 R3 r' C& }8 @( y+ \' X: f- a; t6 N- V. a
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); - M/ }' D8 J+ f5 e2 e% h/ g* @" E
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );
7 }7 F5 ]' q& _# {2 o( G
" M( x4 c* r, \9 g1 j4 t$ W    return 0;' S$ q1 m% P8 }1 F3 a1 j
}& I/ S" z/ K0 |2 z8 o8 n2 J% D

' R2 h! y! \6 M- w& G
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了