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-国产软件践行者

[求助] 螺杆的螺纹代码始终不对,求大神帮忙

[复制链接]

2015-7-13 14:59:43 2748 1

youjixuexi 发表于 2015-7-13 12:28:41 |阅读模式

youjixuexi 楼主

2015-7-13 12:28:41

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

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

x
#include <stdlib.h>
3 a) C+ r* J& D& X7 {8 x  k3 Q#include <uf.h>
3 N' Z; e& B3 j0 R+ ^! \/ V#include <uf_part.h>
% d) ^3 W6 t+ y5 ~9 @$ L7 r1 ?#include <uf_modl.h>
( r; a- L* O1 u#include <uf_view.h>
  g5 Y/ y7 X: j' @( o' H#include <uf_layer.h>
6 Q7 O: _' v0 J0 U# _#include <uf_obj.h>
. X2 z. M8 z/ K6 r2 `//#include <uf_modl_types>4 h/ u4 o; Y8 n
) A* a  L: C! S0 ^5 ^5 W& ?
extern void ufusr( char * param, int * reTCod, int param_len )# x7 v3 s7 k/ V5 v+ I
{
1 J" i9 G) w% z# X
# F4 B( s8 |6 f* Q       
- N7 R' I0 n2 E: K: w! d if (!UF_initialize())
$ V8 V+ V2 f9 Y. Q1 r5 s# `$ u{$ Y5 g3 i* M( D" K5 F6 u, ?1 C: }0 y
        UF_FEATURE_SIGN sign = UF_NULLSIGN;$ C6 u$ a* g5 O/ m/ C; A' ]& i
        double cyl_orig[3] = {0.0,7.5,0.0};* S/ h3 m1 E3 B( i* d- L
        char *cyl_height="26";) l1 p* U) ^8 p  e$ L
        char *cyl_diam="18";
5 R9 n+ r+ z" e6 f        double direction[3]={0,0,-1};
2 H9 I, Q' n2 U- V7 k- f. ]    tag_t cyl_obj;5 B8 ]: }: L+ Z0 Y' u7 |
8 ]0 n. w7 a' [1 ]5 A/ ?
        //圆柱1的变量声明区0 m  n4 R2 _5 e0 c9 j3 ?% ]4 o: \

! `# ^+ S6 t: F$ v3 G. e" j        double block_orig[3] = {-7.5,0.0,-26.0};
+ \% h. ?8 C7 q* A& h2 d        char *block_len[3] = {"15","15","26"};5 L: U7 d: i6 O/ k
    tag_t blk_obj;5 `6 d' R% ]9 [0 N2 p- N
        //块的变量声明区( ]& b- o& Q, [4 v
3 D7 w; O* i/ u" u4 D5 m
   double cyl_orig1[3] = {0,7.5,-26.0};2 L1 }: T) ~1 H0 R, b
        char *cyl_height1="8";: I  S4 }- F! e5 p( `( Q; T
        char *cyl_diam1="18";% c9 X. P: t- U2 v* R( F
        double direction1[3]={0,0,-1};
! I) K4 n7 f8 ]. k        tag_t cyl_obj1;
2 P0 k; d5 [. k8 h2 e        //圆柱2的变量声明区3 V+ d' O$ L+ v* Y

, f* Y* R; r5 w7 b9 E$ f$ F        double cyl_orig2[3] = {0,7.5,-34.0};+ o. l' K8 H9 ?4 Q
        char *cyl_height2="12";
! Q2 o2 z# i6 y( S4 q& O        char *cyl_diam2="22";% ~5 i; a( C9 n5 O$ [1 `
        double direction2[3]={0,0,-1};
8 u) F. Q" ?* @        tag_t cyl_obj2;: O/ c8 d" C" X: M# d6 @. S
        //圆柱3的变量声明区
5 |3 N* d4 K5 }9 Y
# {( u7 p- h; A9 c; L        double cyl_orig3[3] = {0,7.5,-46.0};
4 `+ M  t. T: n  c, F        char *cyl_height3="32";
4 w# c: [% C# `* ^        char *cyl_diam3="18";/ ?* g8 Z& F! d8 z7 n
        double direction3[3]={0,0,-1};# Y0 t( N2 J$ |
        tag_t cyl_obj3;$ ]" y1 K9 p5 L( a" o8 i' c
        //圆柱4的变量声明区
$ z. {5 d' L: |1 K        9 ^/ _" s( T( h; M4 r1 @
        double cyl_orig4[3] = {0,7.5,-78.0};. m8 }; M5 L$ F( A8 ~- ?  f
        char *cyl_height4="7";
. x! Y1 }, R# m. S- O0 F        char *cyl_diam4="14";
" h" |1 ^, K: {# E! B! F2 U( u        double direction4[3]={0,0,-1};; I( h7 N" [- x( F! l: ^7 f
        tag_t cyl_obj4;
; ~' J: x" @; |$ s        //圆柱5的变量声明区0 n& H# H+ C' Z- h0 l6 x

) Q8 c  B# k* R9 O        double cyl_orig5[3] = {0,7.5,-85.0};
+ V, q; R1 j* J5 J6 q        char *cyl_height5="95";
/ v$ \2 \; w, M3 o# @: a; L) u3 |        char *cyl_diam5="18";6 x" ~% ^7 _' J* C% v; R# E
        double direction5[3]={0,0,-1};
6 Y' N% ~8 z: H+ K" a5 X1 v        tag_t cyl_obj5;
% J0 r8 |, f1 }) X4 u- ?/ U7 B' i        //圆柱6的变量声明区9 a& C, Z" m* i9 M* b3 }8 y! {) _

2 k+ {! f: Q# E4 {* ^2 I5 C1 ?* ~2 k3 h4 P% k( k! h9 [- u

" s6 G( t- D0 @( o. v9 u. G% ~        double cyl_orig6[3] = {0,7.5,-180.0};
- S' d2 J! `! H6 s( ]: c5 N        char *cyl_height6="18";# m# I/ Q: ]( M8 N9 `
        char *cyl_diam6="12";2 `: m' u' ?) F7 ?# f
        double direction6[3]={0,0,-1};/ m$ m* E7 [# X, P3 Y4 o0 a
        tag_t cyl_obj6;5 B9 U- X  G  L/ V$ u) s
        //圆柱7的变量声明区, a$ ]- q  c1 J

6 Y/ q( g  L( g; ^$ Z8 q6 p        double cyl_orig7[3] = {0,7.5,-198.0};4 M7 s) K6 j2 p
        char *cyl_height7="20";. W! i) L  S# Z0 ]9 Z+ j! \; j6 X
        char *cyl_diam7="10";
; n6 C" n4 D- z! t        double direction7[3]={0,0,-1};$ W4 m" e8 G5 {# P
        tag_t cyl_obj7;$ |7 L7 H& X, M1 B2 ~4 T( B( p
        //圆柱8的变量声明区$ R$ A, V: p2 d

5 |4 t$ z$ Y3 J9 U* V        double cyl_orig8[3] = {0,2.5,-210.0};
) p; v- N4 _, T        char *cyl_height8="20";, G" U! b: i$ d1 m* f4 T
        char *cyl_diam8="3";
( ?2 n  u  n& X  J6 a* j. P        double direction8[3]={0,1,0};
# O* ~" m) Q8 R! b. Q/ I* P        tag_t cyl_obj8;8 B- m9 C: C1 L- o& [! U, J& j
        //孔的变量声明区
% a) `! C6 ~3 m" E: ~/ d: r' S" ^9 v9 ^# B. W' e" P
    tag_t gasket_cyl_obj,gasket_blk_obj;
- r: e  p, ?" k        //创建圆柱的. ^3 [% L; ]0 w# \$ O4 _% u# J# A
) r: a! ]- G+ `9 P- k
        UF_MODL_create_cyl1(sign, cyl_orig, cyl_height,cyl_diam,direction, &cyl_obj);
: e) D5 H1 u7 k' w        UF_MODL_create_block1(sign,block_orig,block_len,&blk_obj);
8 W4 Z4 d+ X! G9 _- ]" _; g  D* Y        UF_MODL_create_cyl1(sign, cyl_orig1, cyl_height1,cyl_diam1,direction1, &cyl_obj1);
5 I0 Z" _: K* u& y- W! g7 s% K        UF_MODL_create_cyl1(sign, cyl_orig2, cyl_height2,cyl_diam2,direction2, &cyl_obj2);
; y9 v, M; J- [: f/ d        UF_MODL_create_cyl1(sign, cyl_orig3, cyl_height3,cyl_diam3,direction3, &cyl_obj3);
# b% v& ^9 W: }3 U1 U9 v( z& B        UF_MODL_create_cyl1(sign, cyl_orig4, cyl_height4,cyl_diam4,direction4, &cyl_obj4);% g1 `, i. U9 F2 G
        UF_MODL_create_cyl1(sign, cyl_orig5, cyl_height5,cyl_diam5,direction5, &cyl_obj5);
1 k) W1 O8 P0 e1 w0 l& i( W        UF_MODL_create_cyl1(sign, cyl_orig6, cyl_height6,cyl_diam6,direction6, &cyl_obj6);
/ a2 X. u, Z7 c$ q: M( ?' z3 Y        UF_MODL_create_cyl1(sign, cyl_orig7, cyl_height7,cyl_diam7,direction7, &cyl_obj7);
$ {& z1 d& O) s. F% O( A        UF_MODL_create_cyl1(sign, cyl_orig8, cyl_height8,cyl_diam8,direction8, &cyl_obj8);
/ H! d" M! x+ e
& X) ?+ c7 D; @" m        //圆柱和块的建模函数( b- D% B3 {8 i, d; @1 Z5 `$ ]

3 [0 t4 u  G' ^6 a" T6 S! T9 Z        + k$ n* E- j6 l8 j- g. _
        tag_t cylinder, block,*resulting_bodies = NULL;
( x# `( L! S: f. V, ]        int num_results;; h: f9 w& u7 C$ ^% o8 T# y
        UF_MODL_ask_feat_body(cyl_obj,&cylinder);//目标体
$ U6 k3 d% F' {& g/ T5 o        UF_MODL_ask_feat_body(blk_obj,&block);//工具体3 y; {" [9 R% X+ S
        UF_MODL_intersect_bodies(block,cylinder,&num_results,&resulting_bodies);$ j8 E1 N; t& F2 }. t5 o
        //圆柱和块求交% B4 G9 L$ k% ?8 Q2 k

( A0 V8 a, v/ Z        tag_t cylinder7, cylinder8;+ Y/ h$ Z0 W2 z2 ^8 d( a) Y
        /*int num_results;*/& I, ]) W% \4 q3 C; `" N
        UF_MODL_ask_feat_body(cyl_obj7,&cylinder7);6 M  P$ R# \; Q; Q* l! g
        UF_MODL_ask_feat_body(cyl_obj8,&cylinder8);# \/ h9 z- r7 y9 k# o6 Q
        UF_MODL_subtract_bodies(cylinder7,cylinder8,&num_results,&resulting_bodies);
9 ^4 M9 d" w$ ]+ B5 i' T        //圆柱求差,打孔
' G5 V, C( K  i3 r2 v7 J) c
' E9 B2 z( _  d, Y        tag_t cylinder9, cylinder1;
2 `0 M" m7 \5 j        UF_MODL_ask_feat_body(cyl_obj,&cylinder9);
' ], k2 V  t) U2 \4 o        UF_MODL_ask_feat_body(cyl_obj1,&cylinder1);* K& {: E5 J/ a' n. W8 m
        UF_MODL_unite_bodies(cylinder1,cylinder9);
- j0 N6 p* d9 `( z3 g7 I0 K        //圆柱求和0 Y# f/ t  ]$ u4 v& m+ U8 x
! @9 d3 F& \* V
    tag_t cylinder2, cylinder3;
- h  ?; w( r% U9 V, W        UF_MODL_ask_feat_body(cyl_obj2,&cylinder3);# A# L, ?( V/ B7 F1 [- e
        UF_MODL_ask_feat_body(cyl_obj1,&cylinder2);# U0 s4 \+ E/ j1 t
        UF_MODL_unite_bodies(cylinder2,cylinder3);* d+ s% i8 g1 ~2 W$ X

& x) V8 _6 s) a    tag_t cylinder4, cylinder5;
- X  f8 L6 I! i! u$ N& S8 V5 I  M        UF_MODL_ask_feat_body(cyl_obj4,&cylinder5);- }$ f+ T: k0 i$ @* Q) x
        UF_MODL_ask_feat_body(cyl_obj3,&cylinder4);
5 H3 V* d1 k2 Z        UF_MODL_unite_bodies(cylinder4,cylinder5);
' |& m+ a$ P5 z  f" L- I! H# _7 D6 z; Y, \: S
    }: ~( P7 ?+ [4 F
}. O5 ]0 f0 V* m8 G
已经做出螺杆,螺纹不会,求教大神
- Y. `& C* x) ?) p$ v/ J$ y: H6 W% A  p& G. d" u# `
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

admin 发表于 2015-7-13 14:59:43

admin 沙发

2015-7-13 14:59:43

UF_Modl_craete_symb_thread看这个函数,有例子的啊
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了