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 3720 0

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

admin 楼主

2015-4-20 19:42:50

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

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

x
6 B) n+ a" t) l7 q
一些关于使用ufun进行CAM加工设置参数的简单函数示例4 F6 w) k4 K) \- o0 X: p
可以参考下,常用的方式!
4 F8 S7 Y$ @4 r9 g* Q5 v
& r/ ~" u6 u0 \; Lstatic int set_tool_param( int jj, tag_t toolTag )
) a8 x( p# w; F3 q$ s/ p" m% A" Z{9 x# R7 r' t7 z3 I
    double toolDia = 0, toolRad = 3;
/ _8 p  K& E  g& {
- m- T& ^! \7 e8 n* Q/*                 Modify the default 5-Parameter Milling Tool         */
3 B( z, i9 V# L' U* [, L) y2 o  _. F$ \
        swiTCh( jj )
3 i7 V* m2 t( @6 z  a# y        {# S' T6 U' D( F, ]+ I# V$ q) U( K# S
/*                               Tool No. 1                            */7 J- M9 ]0 s  E: N( ]( V
/*                             Add a 3.0 MM crad                       */+ X7 r7 e& J4 G. d3 {4 T& n
        case 1:
' X9 q3 D" T& ]& T            {
7 r  Y- z! i0 t' C2 u. W4 x: y' A            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolRad );6 _3 g: c' b* ^- k2 z( R$ ~1 h8 {( j
            break;1 C* a* @# k1 T7 o+ D) t1 m0 [
            }
( S( |8 C/ u' B, M1 Z3 l8 D# H/*                               Tool No. 2                            */
0 }; s8 m' Y3 r0 J) P! a" H% e/*                             Make this a Ball Nose                   */0 R! M( c+ m& ]& o  W* P
        case 2:! `0 k9 @0 o6 e
            {
6 g* S  ]# _% t" w6 N8 ^/ g            UF_PARAM_ask_double_value( toolTag, UF_PARAM_TL_DIAMETER, &toolDia );! r% I0 b! Z1 j# x5 i  Y/ a' B2 i
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, toolDia/2 );, b) p4 p; h2 f: U. p9 b* ]
            break;
/ Q6 \$ c" N. k            }
6 R2 g7 A6 Y8 k) g' @/*                               Tool No. 3                            */
1 R4 T  L1 s  _( E/ B/*                           Define a smaller Ball Nose                */: t+ {2 d0 X( j  I6 C- @8 S
        case 3:; \! J4 O5 u, ]7 K3 r
            {
, q; h/ _( X& Y" d5 z3 D* m            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_DIAMETER, 25.0 );$ C3 v6 T" l: V- L9 ?$ c
            UF_PARAM_set_double_value( toolTag, UF_PARAM_TL_COR1_RAD, (25.0/2) );
- j  W3 e) \# T8 [/ \            break;
4 G9 h4 S9 z1 n4 p0 n            }" E# ]; u/ }$ P" t$ ]1 }% }" F. U4 g% u
        default:& U; x. g' _9 C& _# y3 X
            {
% l% ^* Y. @6 O2 [. f5 K            printf( "Default...\n" );
% Q" t  l9 E1 c9 l5 I  w1 {' l            }) n( `6 b, K& b- m5 _
        }6 a, T0 _+ C) \
        return 0;$ i, ^- n; I! t4 R- ~4 G: H  K) T
}
" `) e/ u; [, c6 }9 @8 M7 O3 \2 ?1 H
static int cav_mill_param( int numop, tag_t *operTag )
; `5 i# X. P; f( X" {, d/ K{
7 M2 V8 v/ _( \0 q$ B3 i9 o0 j/*   int    numop;*/$ K7 Z$ f( x4 S% \/ N: ^
   double depthPerCut;. g$ I  X/ d) C
   double stockPart;
6 R1 }+ R3 U( ]7 Z$ i7 j+ g+ D4 |. L  K2 U, V+ g" n
    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut);
" |, P: d9 ?' c! p( z( P3 Q/ V    printf(" Depth/Cut default is set to %f\n", depthPerCut );
; d* T+ T6 v4 q4 y/ r5 `( \3 `    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, 12.000 );
' C9 U9 @9 }- I9 O1 |' V* t/ A) s    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_CUTLEV_GLOBAL_CUT_DEPTH, &depthPerCut );
" d; N' O5 ?3 W0 E, a    printf(" Verify Depth/Cut reset to %f\n", depthPerCut );
1 ?$ ^, n5 D2 f
6 J7 B/ H9 L8 p    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );9 j6 ^" w) L* L8 [5 U! R
    printf(" Part Stock default is set to %f\n", stockPart );/ a; T. V4 G7 y
    UF_PARAM_set_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, 1.0 );
3 x/ G4 J. _; `: J% H1 A    UF_PARAM_ask_double_value( operTag[numop-1] , UF_PARAM_STOCK_PART, &stockPart );
, B- Z8 N% d$ N8 @1 t    printf(" Verify Part Stock reset to %f\n", stockPart );
+ E8 c- p+ X2 Y' Y) L' S6 `; o) l- W# w' s
    UF_PARAM_set_int_value( operTag[numop-1], 327, UF_PARAM_cut_trace_method_tolerant );
' b) A: |1 Z- [. N: w0 `. |+ k5 _    UF_PARAM_set_int_value( operTag[numop-1], 328, UF_PARAM_cut_ctrl_trim_method_silhoutte );* Y" |: v* O" M8 _

) C" Z, x- J3 {' R" p+ f    return 0;
3 w8 d- x) C* y( q" g0 t% K( S}
1 x& m& M+ e2 V" K$ n
/ X" k/ i" ?; z' f- M* F, a9 a5 y3 e  T( Nstatic int flow_cut_param( int numop, tag_t *operTag )
% I& `5 m8 W6 o- P) L& c{
7 i. S0 {/ ?8 l6 t) n8 C& d+ \+ i4 N    UF_PARAM_disp_tool_t display_data;
" m- i& L' B6 u9 T# r    display_data.type = 2;             /* Type = 2 produces 3D tool display in tool path. */
- o1 b: o5 P! i/ c    display_data.frequency = 10;) N2 N5 n9 s) U8 F; o
! s  ^- i! z2 m, @
    UF_PARAM_set_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );) s' v) B, p/ V0 q$ g7 U7 L
    UF_PARAM_ask_subobj_ptr_value( operTag[numop-1], UF_PARAM_DISP_TOOL , &display_data );
1 f% N4 f8 f* ^7 Z# |1 s7 H    printf("Display data for tool type returns %d\n", display_data.type );
  i% x8 z; \3 q- X' [: R6 J, L    printf("Display data for tool frequency returns %d\n", display_data.frequency );, \5 o6 N6 y, k$ F: v' ^& K4 I

9 m& K; Q9 O$ T% K( a+ J    return 0;
* a! o* e: R) i" g% j) g0 y' A}! H7 K+ u+ a0 l8 B2 @' w) f
+ b9 k: L+ p7 C* \: i8 w( @
static int area_mill_param( int numop, tag_t *operTag )
2 m* O/ L# T' f4 a1 K{, @5 V! D7 V) a" K
! d6 S/ a/ J+ q* T; x9 A" l; W
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_EDGE_TRACE_REMOVAL,UF_PARAM_edge_trace_removal_on );
; q* r5 [5 I8 _" {! k
2 f1 e. D1 j6 F- H( I/*                                           1 = Warning, 2 = Skip, 3 = Retract  */
0 S# A! F2 q1 i/ x/ H' h  p$ l8 X! o) Z+ L' T
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_AVOIDANCE,UF_PARAM_avoid_stepover ); ; {: E7 D4 k: t4 ?6 v
    UF_PARAM_set_int_value( operTag[numop-1],UF_PARAM_CUT_FOLLOW_CHECK_STATUS,UF_PARAM_cut_follow_check_on );( M9 `0 I* z0 R7 p" S

7 |& m- t2 T% p* @, S4 n: c; W; `( y    return 0;+ I2 L! a! h' C4 I7 I1 x
}6 K* z% T* T) R

; p  M4 \* k2 ~/ E
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了