查看: 3116|回复: 0

[求助] 结合中遇到的问题

[复制链接]

7

主题

9

回帖

228

积分

培训VIP会员

积分
228
发表于 2015-11-27 00:24:00 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 秋爱 于 2015-11-27 00:27 编辑 ( [- r* e/ f% C4 T& P$ J* x; g
: ~9 |3 }+ u; F
请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:$ h7 b9 ]9 r5 D* {
            //两点创建直线; Z6 q2 \* y: b1 p
           0 S4 L7 M3 [7 f0 L/ J
                Session *theSession = Session::GetSession();
. R5 D3 l2 |3 u2 m, V. h                Part *workPart(theSession->arts()->Work());
: V* f3 G8 b/ h1 B$ F                Part *displayPart(theSession->arts()->Display());6 V, I0 h9 R. e6 f

0 c4 ?  c' H0 D" c7 L2 @                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点# \& x* C# b/ j4 s& @1 k
                TaggedObject * p = pp[0];& w7 k; G2 X+ h$ K
                Point * getpoint = dynamic_cast<oint*>(p); 3 i$ {& o: b8 @6 r* r. a

2 v. ]0 N/ ^3 g! ^9 C+ i+ S9 p4 k

2 E, j; g5 f+ I/ [! X! A" V                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点4 ?0 P' A# [" ]; @
                TaggedObject * p1 = qq[0];
+ w. p; M- W7 l7 u+ i* z8 ?                Point * getpoint1 = dynamic_cast<oint*>(p1);    U- r) U0 L# G* N7 N0 J0 U; i1 ]
+ ^% j! j/ ^% S: `3 r

# S) q: B  l, F% K3 n% |: R6 z                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);
% z9 q9 E2 R4 f( g                Features::AssociativeLineBuilder *associativeLineBuilder1;
* K& O, I! N+ B6 n                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);
; V9 D5 n4 b* J8 [& w& b
" [1 Q8 v* d' i0 l
# h$ F& a( I% p- H3 h/ ~6 {) X
                Unit *unit1;5 K! r3 F) z! a4 s
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();0 R2 W: U" E8 [. s6 t, E! U" v( {
                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");
8 {4 Q$ ~" L1 B" l% v3 d                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);( H3 J9 `3 a' |6 t- C
0 {5 i% e4 ?+ h9 G
7 a/ q$ p1 n% }% K. ^
                associativeLineBuilder1->StartPoint()->SetValue(getpoint);
0 n9 T0 I$ e9 I+ V- N7 g# H& e                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);
4 G  V' W. h8 V# L7 ~" ]. y( c                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);' j' s& u7 R6 k0 S. i. p
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);4 J1 l! L& V, D+ M) T
                NXObject *nXObject1;: r; r8 N8 R$ R2 R( m
                nXObject1 = associativeLineBuilder1->Commit();
3 i; N  H" F0 ]: P- ^, O& n  I                associativeLineBuilder1->Destroy();
) O* d( ~2 e9 ^+ W: @! o$ i% ?4 c# ^' X% n8 o7 h

" H: B9 C& ]! g+ c' k) z! y                - X( N1 F9 ?( ^- k( Q5 ]8 x
                //uf部分
! d6 O- I, B9 |& Z2 U9 W( N6 V, r1 F                UF_initialize();, t/ M; N* a! @* E
       
/ c, ]- \% R- Q7 f9 z/ F1 _                tag_t linetag =( nXObject1->Tag());
% F' t/ j6 A5 v4 z, u. F' S- D4 K                uf_list_p_t path_list = NULL; ! }. V4 M- i% x% k
                char * limit [ 2 ] = {"20","0"};: k' b& W) B$ }! d' d4 }! u
                UF_FEATURE_SIGN sign = UF_NULLSIGN;
  d3 H+ S8 l/ T6 ]! D% X* z                tag_t target_body = null_tag; 2 s9 ?7 a# o; e" O" i  C
                uf_list_p_t  feature_list = NULL;
' r1 k' c4 h$ u3 }* w               
3 h& w4 k6 m+ v. W                UF_MODL_create_list(&path_list);
- B5 A8 B; ?' w5 D               
7 a5 L3 M' h1 t; s  j                UF_MODL_put_list_item(path_list,linetag);: l  H5 t* A0 Q" a; h
       
' L& A0 h- P+ I; c' K& R- Q                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);
2 X; s2 r! j8 D8 w! c                0 C) I, j4 h; C# a6 v  l, g8 P
                errorCode = UF_MODL_delete_list(&path_list);( H9 ~+ r3 Y1 ^
                UF_MODL_delete_list(&feature_list);
" W7 G8 ]: N- z# G  ~& W) |                UF_terminate();/ F, ], Q( B- V+ J. I# s7 z
                associativeLineBuilder1->Destroy();
$ b8 J  B. i' d- J; z, k3 b
  X* \5 A. J" a, G1 D
a.png
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部