查看: 3193|回复: 0

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

[复制链接]

7

主题

9

回帖

228

积分

培训VIP会员

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

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

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

×
本帖最后由 秋爱 于 2015-11-27 00:27 编辑
" K+ j8 M+ H4 U$ ^, H! z% Y( `& G" a$ C8 W3 X, f
请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:
0 }# _2 H4 B. N5 [8 U4 [( K            //两点创建直线
8 w! X  T8 D0 j
           
' R2 K3 a8 U1 N6 I# ?                Session *theSession = Session::GetSession();
: j8 ^% a0 H' M" H& i8 @                Part *workPart(theSession->arts()->Work());
+ [  |5 V& F% Y1 T! a: y6 z, y                Part *displayPart(theSession->arts()->Display());, l' \& R; E* O

# Q7 l0 ]" T4 c  q) I                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点
0 P5 c  m! e6 O7 Q- q                TaggedObject * p = pp[0];$ a" A1 G: K% q. ?; W9 Q
                Point * getpoint = dynamic_cast<oint*>(p); , g, d0 Z4 a3 S/ R+ m; |) _/ k

, w/ F- {6 z: Z, e5 _2 ~
# u: Z3 t% {" Z
                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点
  g" ~1 J9 }- Y% i) d. ?/ f                TaggedObject * p1 = qq[0];  H9 o. A6 a  q9 P9 v, J7 F
                Point * getpoint1 = dynamic_cast<oint*>(p1);  
' A; K' ^' B, c' F, d. }6 i$ }- ]9 }" y2 w, p. j2 W3 S

0 o% m# l0 k4 R/ D                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);
( V! H4 ^$ s6 k                Features::AssociativeLineBuilder *associativeLineBuilder1;+ r- ~$ f) ]" j0 S% q
                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);; r* e+ S! r4 D
7 g9 x8 ^( |' D. J

! q, u, V; s% N4 K2 |0 o" b. k, D                Unit *unit1;: Y$ S$ \6 _. B' \0 ^- t. K% h
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();
, z2 g- N% c% R7 \" c5 A  N) Q                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");. r; a* f" _3 t; I
                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);# E- @; ]8 [# O9 {8 b

/ ]0 D! b- T& }3 y$ I
+ V# S8 R- Z& g0 J( x
                associativeLineBuilder1->StartPoint()->SetValue(getpoint);+ ~. Z  f$ z# J5 G
                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);4 O* w" ~/ p$ ~: X/ w
                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);+ ?4 I8 h' }2 {9 [' [
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);
* [# p0 t: |9 Q7 w                NXObject *nXObject1;, x6 b% g( j& C0 h5 G
                nXObject1 = associativeLineBuilder1->Commit();; L$ k4 V: q! {0 N! R; w
                associativeLineBuilder1->Destroy();
( p: ^! Q% z3 H8 R. g/ j! n0 F( ^. j% [8 X; |% [" x

: k2 {3 O$ @- }8 x, m' X& M" s5 D+ L                3 x- y. t+ i2 q( s: u$ ~% m7 g
                //uf部分" V3 M5 z2 c, {
                UF_initialize();$ M9 J6 _" Q& Q5 t! L: g* @
        : h; ^" Q8 U4 r$ f0 r# C# ~8 R
                tag_t linetag =( nXObject1->Tag());; ?' u4 m3 v$ S- ?' U" n
                uf_list_p_t path_list = NULL;
4 }; b, t' Z: C% m& e; T0 j- N                char * limit [ 2 ] = {"20","0"};6 ~# X' v+ T% _  G1 }# _4 |. I9 N
                UF_FEATURE_SIGN sign = UF_NULLSIGN;
. L+ p! k8 E% S8 f                tag_t target_body = null_tag;
5 N" p* q. `/ `) X: j' R                uf_list_p_t  feature_list = NULL;: R- }1 m, V# N4 [8 P+ f% j: J
               
/ @/ m+ Y7 K2 A1 F$ R0 ]0 ?                UF_MODL_create_list(&path_list);* _0 r3 c7 Z; ?3 R0 o% ?
               
  v) B. w# Y+ H6 p# M                UF_MODL_put_list_item(path_list,linetag);
! P2 T  I' f" O( `' H        + t( r( D; N9 I9 h1 S6 Q& t
                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);* L3 t6 H( b% s: u- k- M
                9 T; i+ D6 a: O3 O# O
                errorCode = UF_MODL_delete_list(&path_list);' [0 x9 `4 S6 E1 q
                UF_MODL_delete_list(&feature_list);
2 S& b& Z+ z; O' M) \1 @1 M1 K                UF_terminate();
, b) @' }* b+ H1 R3 J+ `                associativeLineBuilder1->Destroy();6 S) v7 g* Y) q/ y/ P) f: j% B
& y: Q/ C, i8 w9 B2 ]) u
a.png
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

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

本版积分规则

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