查看: 3194|回复: 0

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

[复制链接]

7

主题

9

回帖

228

积分

培训VIP会员

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

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

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

×
本帖最后由 秋爱 于 2015-11-27 00:27 编辑
8 D* X. B1 U- N! Y1 {$ Z
* X6 Z2 w6 g4 C4 L$ U请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:
/ r# M% x) `2 O7 g$ G            //两点创建直线
& F6 A. Z* X& U/ G* {; {) Q
           + B6 J9 x, t5 L; m
                Session *theSession = Session::GetSession();
5 O4 c. W4 v% X/ {& e! w& I/ `+ o) i                Part *workPart(theSession->arts()->Work());
( h* w3 K7 s9 o# q) I                Part *displayPart(theSession->arts()->Display());
1 _6 f5 _$ G! j
# Z2 G  z, }  u4 X                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点& h0 |- S3 C  h. \$ V9 T0 Y/ x5 u1 v
                TaggedObject * p = pp[0];
9 \2 @7 o$ {# L4 ]                Point * getpoint = dynamic_cast<oint*>(p);
- u# t3 ~% u" ]1 C( c5 y+ M, s5 \+ F

0 D3 ^# X  }1 G                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点, s, J! K/ y* l5 g: w, _" j8 M
                TaggedObject * p1 = qq[0];6 H+ B' p; t1 w+ X7 x- ?
                Point * getpoint1 = dynamic_cast<oint*>(p1);  6 N; `; K9 l% K- `9 B3 s  |5 S

0 f5 e0 o* p, [4 V/ n

* D' H# \" M1 |& Y' @5 R6 q                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);
: @& Y7 V9 T6 J/ Y2 a2 w                Features::AssociativeLineBuilder *associativeLineBuilder1;8 i- i, j% A  a/ g  N% y
                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);( x* K7 m9 N  ?

, k/ b& X2 L8 w- @$ g4 C! R

. w+ j  S7 S# e( }. R9 d, j                Unit *unit1;+ q/ M% V0 K/ t! T
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();
9 n8 O1 T; }5 i1 f( {                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");
. n7 d% u1 _# ^4 ?4 \                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);
" X& v" K/ H/ B5 U9 \
! X. Q) C' G: S, W; `" ]/ u
. n4 D  b" @" L6 C0 g& `
                associativeLineBuilder1->StartPoint()->SetValue(getpoint);
7 P0 E) s/ `; r' j) e; Z                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);' Z, Z& y( p- V  C3 D  Q
                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);3 o6 L/ g8 {' [1 J! \
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);1 Z' `8 _7 g* S
                NXObject *nXObject1;( i2 g" _# Q* q4 N' {: z4 G
                nXObject1 = associativeLineBuilder1->Commit();0 x. ^! c) ]1 f) e. U. Z1 N; m0 H
                associativeLineBuilder1->Destroy();3 E: O( P) Q3 a# |! M
" l" I" O$ Q; F9 v$ U% n' x7 [! w

% J$ [" A9 l- _) o3 P               
6 z4 {0 Z3 _- N6 c/ K                //uf部分
) U; u% U# E4 G9 G                UF_initialize();' b& z. J1 K% v# D6 v
       
/ a# y  j; X" o" E  M4 b                tag_t linetag =( nXObject1->Tag());
+ [: D$ I# X5 G6 `                uf_list_p_t path_list = NULL; 9 n- M6 [) V5 W& c; W
                char * limit [ 2 ] = {"20","0"};. Z: q  ~% I! k% f1 h0 ~) Y; x9 u
                UF_FEATURE_SIGN sign = UF_NULLSIGN;9 N7 u. j; D/ j; }. I# p
                tag_t target_body = null_tag; & `: f1 T2 z& i7 r: E
                uf_list_p_t  feature_list = NULL;! E% X5 O9 P1 {- u
               
4 ?) R% }  A; j1 q) p                UF_MODL_create_list(&path_list);
. m% h# e1 w! T: x& n8 w               
; I& H" V1 B4 w' _5 ~% g                UF_MODL_put_list_item(path_list,linetag);/ c1 n: ]3 z: K- [# ~
        : L; g8 F# E1 t
                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);
! Q/ Y8 z' T9 q) I               
: ?* _" V$ e& U$ r1 k8 y                errorCode = UF_MODL_delete_list(&path_list);
9 b' o5 H# L% d1 c' t                UF_MODL_delete_list(&feature_list);; k5 E5 q' {" ]
                UF_terminate();: R1 X  |! G7 d; _
                associativeLineBuilder1->Destroy();7 K; d1 _4 U6 u* o: F

" x( L) }/ h! Q. J3 k
a.png
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

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

本版积分规则

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