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 2747 1

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

youjixuexi 楼主

2015-7-13 12:28:41

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

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

x
#include <stdlib.h>
' _2 H9 S1 h" _! V+ {$ w, ^- g#include <uf.h>
* d; Z  ], w9 S& F$ H9 y0 a#include <uf_part.h>
2 e8 b+ ^: v) ]# x#include <uf_modl.h>
3 H- E3 J8 l% i+ l#include <uf_view.h>
; ^* P6 _# ?2 {  K. j#include <uf_layer.h>
, Q8 z0 @1 m1 Y$ k8 W- x7 B7 ?8 m#include <uf_obj.h>+ b" C8 x' ^! l
//#include <uf_modl_types>
2 O7 ^. _( C+ X9 `0 y' T- A
8 T& B' m; s6 C% _2 M5 j0 `! Aextern void ufusr( char * param, int * reTCod, int param_len )
3 {8 Z8 X* j  U. i3 ~9 y7 x/ {7 c{! x8 @. m, ?2 ~4 H! o0 Q

& Q3 \! D6 |: u9 z" F! ~0 G       
) v: o3 \8 R* Z& ^+ w if (!UF_initialize())
# t+ E( L* x% N/ {7 V{2 l! M1 x2 D8 ?
        UF_FEATURE_SIGN sign = UF_NULLSIGN;
8 a0 g/ C5 z$ |* ~5 _! G        double cyl_orig[3] = {0.0,7.5,0.0};8 P9 a- h# ~8 W2 @1 `" Q
        char *cyl_height="26";. a, f- C9 r: b& j! @5 w
        char *cyl_diam="18";) x& O0 e5 K7 F& o9 ]9 m6 v
        double direction[3]={0,0,-1}; - z7 i; @5 H! O' E. [
    tag_t cyl_obj;4 j' v* L3 b& @3 z( }9 y+ L( t9 y
6 |5 B: w; E) b5 G
        //圆柱1的变量声明区: a+ w9 O6 |8 r/ y/ n% F

1 Q4 H+ ^3 j# H9 T, H        double block_orig[3] = {-7.5,0.0,-26.0};
3 ]+ o5 ]- m: E( b8 e2 {" e        char *block_len[3] = {"15","15","26"};
5 [2 O7 r4 h4 E) n* }8 l1 L    tag_t blk_obj;
9 S7 T9 r5 C8 S3 G: c$ o. c        //块的变量声明区
$ M0 |2 X$ R- e( a/ I" s& n
/ |) s, J( n% Z$ m   double cyl_orig1[3] = {0,7.5,-26.0};6 F3 _/ C2 f7 C- s1 _& ~0 L
        char *cyl_height1="8";! |8 B3 h# l4 z5 t/ y
        char *cyl_diam1="18";
+ |6 J% }6 F1 |) E$ R        double direction1[3]={0,0,-1};) b/ V; u6 ?, @' H) j. ^
        tag_t cyl_obj1;
9 T. O$ p3 C+ ~: v        //圆柱2的变量声明区! R; B4 D* f! f

0 Z' e& X" Z& `/ {2 @; i        double cyl_orig2[3] = {0,7.5,-34.0};) l- d# ^( u4 ~4 H! x4 w: F
        char *cyl_height2="12";
4 R: a) B1 y4 [& y        char *cyl_diam2="22";
# C% r! D0 S. Y8 Y        double direction2[3]={0,0,-1};/ n0 H: k/ K$ y+ M) h/ n5 R
        tag_t cyl_obj2;
1 e  a! h( _* R$ z, e, X        //圆柱3的变量声明区! D9 B- p, M( F+ T0 a

% w  e! k( X, S        double cyl_orig3[3] = {0,7.5,-46.0};
! P! t+ n  s- C8 p- l2 D, J& H        char *cyl_height3="32";$ S4 k# M( n* K4 s& ]
        char *cyl_diam3="18";  t2 S! B% v' H5 _" k$ @' [4 p
        double direction3[3]={0,0,-1};
. v) F$ G- \" s5 X( ?2 q* e0 e        tag_t cyl_obj3;/ T! ?! y7 y5 m7 ~3 @4 A+ f
        //圆柱4的变量声明区6 j- \! Q+ K* H$ [
        ) b3 L) |9 f0 v0 s
        double cyl_orig4[3] = {0,7.5,-78.0};1 y6 X+ E9 G4 ]& J
        char *cyl_height4="7";
& m* a8 Q5 {" s  j: |& |        char *cyl_diam4="14";
. Y7 e+ }" J6 x2 `        double direction4[3]={0,0,-1};
; j' h7 t( t" N( k0 H! d8 h        tag_t cyl_obj4;
/ |* _2 k& F5 k5 f2 R- Y        //圆柱5的变量声明区
& B2 L- w5 W& i. W! M* G, f3 p  ?& _3 N3 v$ d
        double cyl_orig5[3] = {0,7.5,-85.0};
, T0 o3 X: x/ E/ O& z" J: H        char *cyl_height5="95";
9 D4 ~9 y. [6 |3 e        char *cyl_diam5="18";
9 C" p* g2 h) y5 B- k# o        double direction5[3]={0,0,-1};, U5 y. V4 _7 k  e1 R$ ?$ c
        tag_t cyl_obj5;
" t4 I' ?$ ?' H        //圆柱6的变量声明区1 W  Z" D* \: N( S1 n

( c6 m" C4 F. m) d, v' a
% Q& Y' \3 j7 h/ Q6 D4 u7 c9 R/ [3 Z* g
        double cyl_orig6[3] = {0,7.5,-180.0};* I6 ]- H) {5 [4 X
        char *cyl_height6="18";4 |  Z! B! m7 J5 C
        char *cyl_diam6="12";
3 Z+ `# A  n' z: j1 B+ b        double direction6[3]={0,0,-1};
5 \6 [, f3 v' w) b, b        tag_t cyl_obj6;) k+ y5 c& K, S* p$ w
        //圆柱7的变量声明区' T! j5 _8 w/ O- T1 D' K
/ Y+ j; w" @, ^" Q2 Y0 ?2 Q' Y
        double cyl_orig7[3] = {0,7.5,-198.0};
3 @$ n7 ?. A( ?& S" Q        char *cyl_height7="20";5 _( R; I- P) {( {8 U1 }
        char *cyl_diam7="10";
. d! S% W  g8 I7 ~' T1 z        double direction7[3]={0,0,-1};
- q3 J1 e6 D: g        tag_t cyl_obj7;/ v/ j: i6 o, b: L0 F, f# N# o/ ~
        //圆柱8的变量声明区; e* l+ O: n/ V: ]
) ?7 t0 ~1 g  i  S* G5 ?7 N1 p6 `8 S
        double cyl_orig8[3] = {0,2.5,-210.0};
, A% l5 {/ [, o        char *cyl_height8="20";
6 W5 s( t& B& ~6 B( S, T) T5 b1 J/ h8 B        char *cyl_diam8="3";
* P3 r: r# _  l        double direction8[3]={0,1,0};
2 s: ~$ n+ [# r) m5 H        tag_t cyl_obj8;
6 `! n1 N! g- b. A        //孔的变量声明区
, b1 c0 Y" _' ?* r. r: A/ h( G# B# `9 \
    tag_t gasket_cyl_obj,gasket_blk_obj;
. |; x3 }* F' k        //创建圆柱的) Y3 D* d& |. l# E# x* s1 h: N! @1 ?

% d) R) B, K" |7 j$ K        UF_MODL_create_cyl1(sign, cyl_orig, cyl_height,cyl_diam,direction, &cyl_obj);
8 `1 ~7 T% \% z5 \7 d! a# e/ v        UF_MODL_create_block1(sign,block_orig,block_len,&blk_obj);2 n0 @. S5 A7 i" L5 [
        UF_MODL_create_cyl1(sign, cyl_orig1, cyl_height1,cyl_diam1,direction1, &cyl_obj1);% m7 |: y" J+ m/ q4 a" W
        UF_MODL_create_cyl1(sign, cyl_orig2, cyl_height2,cyl_diam2,direction2, &cyl_obj2);
+ q0 t& Z( _3 q        UF_MODL_create_cyl1(sign, cyl_orig3, cyl_height3,cyl_diam3,direction3, &cyl_obj3);  n; J$ A% U) N6 |. h4 F
        UF_MODL_create_cyl1(sign, cyl_orig4, cyl_height4,cyl_diam4,direction4, &cyl_obj4);
: o$ u% X( ^0 c2 S        UF_MODL_create_cyl1(sign, cyl_orig5, cyl_height5,cyl_diam5,direction5, &cyl_obj5);  p0 a! M1 c8 v
        UF_MODL_create_cyl1(sign, cyl_orig6, cyl_height6,cyl_diam6,direction6, &cyl_obj6);
! Z* @7 g% w9 s: X. s% T- a; U        UF_MODL_create_cyl1(sign, cyl_orig7, cyl_height7,cyl_diam7,direction7, &cyl_obj7);
  k: y! b+ I3 L  E' X$ O        UF_MODL_create_cyl1(sign, cyl_orig8, cyl_height8,cyl_diam8,direction8, &cyl_obj8);* d; S) Y& K% x1 m) M' h

* |# g4 v7 s! a! J        //圆柱和块的建模函数6 u* r  s$ J. F. N4 c, s# v& y1 E

) c9 _) O/ b- w1 ]4 _! A- A        * ~$ O) ^5 C7 u
        tag_t cylinder, block,*resulting_bodies = NULL;) u1 y! {5 c, s/ h) A& H1 [8 P
        int num_results;! E  i" p; X+ H9 }6 ?/ s
        UF_MODL_ask_feat_body(cyl_obj,&cylinder);//目标体
: g& T& p, ~4 ], l. s9 i9 }! N, f        UF_MODL_ask_feat_body(blk_obj,&block);//工具体
: q) Z9 d4 _, W! y        UF_MODL_intersect_bodies(block,cylinder,&num_results,&resulting_bodies);
8 b. X" S- i9 H- V- W: A        //圆柱和块求交; Y  C0 V' N7 F" }8 Z9 ?

4 ]& i$ P: Z8 G; |  W8 L4 a        tag_t cylinder7, cylinder8;
6 p6 T% V. C4 d- l' z1 r        /*int num_results;*/8 w! w6 S, W8 y, m" R2 W0 z
        UF_MODL_ask_feat_body(cyl_obj7,&cylinder7);' e4 G4 n; z' ^7 V; \! p' e
        UF_MODL_ask_feat_body(cyl_obj8,&cylinder8);0 c# j, y3 N" {- S# R! T
        UF_MODL_subtract_bodies(cylinder7,cylinder8,&num_results,&resulting_bodies);; V; s4 {3 P+ P" j" g8 u2 O
        //圆柱求差,打孔: |0 _- {1 _/ @6 m; u0 B# ^

% D% |" H( h. E3 t) S+ f6 f0 H        tag_t cylinder9, cylinder1;& D( i5 b; _: t3 J) R
        UF_MODL_ask_feat_body(cyl_obj,&cylinder9);
/ p2 J$ U3 y/ B. L        UF_MODL_ask_feat_body(cyl_obj1,&cylinder1);6 K& q/ J9 c- W& O+ s! F
        UF_MODL_unite_bodies(cylinder1,cylinder9);
6 [* L) i$ B* I, Z        //圆柱求和# b9 B$ w0 c- A) e! ?. q

& X7 G% q5 d# O5 V- c    tag_t cylinder2, cylinder3;2 o; b; D5 Y. ^  z9 y, g
        UF_MODL_ask_feat_body(cyl_obj2,&cylinder3);7 p+ H+ j. i' n8 Y
        UF_MODL_ask_feat_body(cyl_obj1,&cylinder2);
: R) J+ l# t! p" Y        UF_MODL_unite_bodies(cylinder2,cylinder3);
7 w$ M8 P0 k% c) v; F: `1 M$ t% o8 |9 J" G$ o
    tag_t cylinder4, cylinder5;
+ G3 [- @) {5 V8 E# f8 o        UF_MODL_ask_feat_body(cyl_obj4,&cylinder5);& _2 @' T; @& o) Y: I! Y' C: Y
        UF_MODL_ask_feat_body(cyl_obj3,&cylinder4);
7 M8 X3 o5 t" a' D: }' h0 q        UF_MODL_unite_bodies(cylinder4,cylinder5);1 X0 C3 B& b2 `, O

& c( U  K3 Z: X6 f" U1 y4 L    }
! \7 f8 `4 s3 o0 R}2 B1 U! G( R* U! h! f
已经做出螺杆,螺纹不会,求教大神
9 f  D. c8 Y* H) k7 j, k( p
3 E* x. U  f7 U0 ?+ x: w
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了