查看: 3133|回复: 0

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

[复制链接]

7

主题

9

回帖

228

积分

培训VIP会员

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

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

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

×
本帖最后由 秋爱 于 2015-11-27 00:27 编辑 4 S" Q2 C4 ]/ K; a/ g; T5 u

8 K- }3 D$ ?% e/ s2 ?请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:  F) C( s( D' ]: C0 b) q& S
            //两点创建直线# N5 h8 k  ]! j% a: T9 F8 ?" n+ t
           
- q$ Q/ Z& K8 @. q8 d5 B4 x( g                Session *theSession = Session::GetSession();
* P3 |0 d9 }; e4 i$ o/ H% o                Part *workPart(theSession->arts()->Work());. ~$ k6 I, ]" R- ]
                Part *displayPart(theSession->arts()->Display());2 _0 d0 w. s2 l) r: J( b8 c
, n$ n. T  R, @, t# L
                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点/ G, C! @: Y! D6 o0 g
                TaggedObject * p = pp[0];
9 Z# z& ?7 @9 N                Point * getpoint = dynamic_cast<oint*>(p);
' p& E( Z: H4 B# P% \% z: B0 f% z' \1 f/ h$ K; g

. Z) S% ~; O6 }$ j                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点  Q' v8 F2 b- \' [$ A9 X9 ?
                TaggedObject * p1 = qq[0];
. W, G3 N3 @; S3 s                Point * getpoint1 = dynamic_cast<oint*>(p1);  
4 m7 E/ k6 n) D- M3 N. J7 P1 X6 b+ w5 [9 n: \" @
( s) z4 z+ i  C  V; t/ D6 a
                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);
* H8 h. }; }- D                Features::AssociativeLineBuilder *associativeLineBuilder1;' o$ u5 x$ A% B- f: I, G5 U
                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);. Z) J* Q3 V$ N1 j- g9 ~0 |

- o$ ~2 o# r  z3 u4 [$ N' x
' v9 b4 U) {; S9 ]5 z
                Unit *unit1;. c, _: F; o, ^) U6 W1 s. V) }0 m8 h
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();
8 @+ J. @) q/ D) x0 v                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");
/ H! N1 [5 ^0 @6 U3 S! @                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);9 @+ Z* s5 _/ v7 Y, |" c

3 |2 @" V3 P1 X: Z+ o

& s9 ~, B/ j' m; d0 ?3 v+ p7 Y8 {1 z                associativeLineBuilder1->StartPoint()->SetValue(getpoint);
- t1 q2 x  e+ Y                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);
. {; \4 ]9 I- I                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);! R5 N& j4 y" N2 `/ E$ C/ B
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);
& {/ O. p6 s/ m( d                NXObject *nXObject1;
& G; Y( [1 C& E+ B# x* z; j                nXObject1 = associativeLineBuilder1->Commit();
2 v3 \8 |; W2 ^1 W                associativeLineBuilder1->Destroy();
" Q% F, k. f" V, D1 v& J4 V) k7 s! `1 Q) q+ ?. z

0 _1 l$ G( F% a! z4 s               
' \4 z4 @( ]. O* C& O& v* G6 O                //uf部分3 O2 @3 ^" y2 k. ?3 }* w; ^
                UF_initialize();
. Q, u) g; W- ^" P- L/ w       
6 m* ^& M& B8 _* l9 {9 e( M& V! ^                tag_t linetag =( nXObject1->Tag());6 r& [; A* s/ r% W6 g
                uf_list_p_t path_list = NULL; 0 B# K2 \6 B. I4 N3 d% b! H
                char * limit [ 2 ] = {"20","0"};
( M8 v4 w% ?8 c* ^3 q2 ]5 v$ ?! f                UF_FEATURE_SIGN sign = UF_NULLSIGN;
+ P7 p- R! Z* J1 N7 a                tag_t target_body = null_tag;
0 ^: Z* ?0 S5 @                uf_list_p_t  feature_list = NULL;; P# |7 ~" {7 ?/ V# K! a
                : M; h2 d% s! s2 u  k0 _2 l
                UF_MODL_create_list(&path_list);
" q2 F" }; A; G* @               
. |- o* U: W2 d# F0 O5 U                UF_MODL_put_list_item(path_list,linetag);: ?) p7 t6 b1 S% u. H4 w2 j  p- T
        3 r+ a* P4 G7 b3 Y8 `$ G" J
                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);) ]6 \: S, q- d8 o7 Z) O/ J
               
, |( @5 y' y) R                errorCode = UF_MODL_delete_list(&path_list);% N* A+ F& T6 {5 C9 E
                UF_MODL_delete_list(&feature_list);
5 z6 ^/ \8 S2 {! c8 t7 y                UF_terminate();' h/ c% L: x& x) {
                associativeLineBuilder1->Destroy();
1 M- R2 Q3 b! F* l: p
$ H1 P4 J, }9 Q9 f0 {
a.png
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

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

本版积分规则

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