PLM之家PLMHome-国产软件践行者

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

[复制链接]

2015-11-27 00:24:00 2944 1

秋爱 发表于 2015-11-27 00:24:00 |阅读模式

秋爱 楼主

2015-11-27 00:24:00

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

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

x
本帖最后由 秋爱 于 2015-11-27 00:27 编辑 , Q; \1 h( R! B) g$ ]" s) e2 c

# ]/ b. _6 F3 d请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:7 d% h( h( \* v- U+ b/ |9 U
            //两点创建直线
2 l& a! }# ^, A
           
9 M! V; T$ }* d% y/ Z$ Z                Session *theSession = Session::GetSession();1 f( S+ X) ]6 k1 B. F8 C
                Part *workPart(theSession->arts()->Work());
/ m) X9 y9 j5 Z: d) F6 g1 r9 X                Part *displayPart(theSession->arts()->Display());, T. u; d+ ~* G4 g8 ^
3 b! W' q9 x# b7 f5 i
                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点. J3 y- o, J/ y
                TaggedObject * p = pp[0];: c) w! \& p5 D3 A" b
                Point * getpoint = dynamic_cast<oint*>(p);
$ h* c! ?. O  J, J& b
0 T( `4 @  ]; b8 W6 v% S( n2 c
) G  T, _$ F$ @0 u/ p
                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点
; l2 o5 F& }6 P  z2 U1 e                TaggedObject * p1 = qq[0];
8 t# \( w3 H) R                Point * getpoint1 = dynamic_cast<oint*>(p1);  
& ~( b. D. G2 Q0 K
) B3 d7 F$ h) A' }! F) [

: z# x( W7 M9 [' b  g                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);
! T- i+ J6 T6 x, |                Features::AssociativeLineBuilder *associativeLineBuilder1;, L7 i9 w  f! ?2 p& D  q' s
                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);+ a- b$ B' E, z

4 A" O- v+ y% ]3 ^1 o
7 c6 J& l% j& @
                Unit *unit1;
6 y3 m  S$ S; ?; j6 U+ n! O$ x3 F& l                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();
0 J; Z- i0 h  A0 [8 O                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");7 N* ~" r1 D. b  b  T. W$ o' _
                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);
1 o. h5 s( U( i/ L# A$ s
& }& q- q# ]6 M! b

4 F+ y* e( d1 r% L8 m                associativeLineBuilder1->StartPoint()->SetValue(getpoint);) r. J  m- W# g( j0 p2 n/ F
                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);
- Q2 d/ v  Q) R- j: J                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);
; O+ ^0 g* a2 [  b; Z                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);& c+ J8 T' M6 S# F8 q
                NXObject *nXObject1;/ l8 ~! ^8 a) Z4 ]3 k
                nXObject1 = associativeLineBuilder1->Commit();
& x. |# m0 O3 h- E8 j  ^                associativeLineBuilder1->Destroy();
8 l' R) J# C* I- u% [& w; L/ z# b2 B2 O* @0 B3 I3 }
$ s: n$ `) n$ J3 p3 Q0 V
               
, ]' t: B  @, S9 j& x                //uf部分
: U/ B6 n$ f. A. u& k: V                UF_initialize();1 g* |7 K; H/ h4 A7 Z
       
' P# P% p* M9 l: D                tag_t linetag =( nXObject1->Tag());4 i8 X* I# u& R- u
                uf_list_p_t path_list = NULL; : |& q% M3 I& I9 t
                char * limit [ 2 ] = {"20","0"};
* w- P: t$ z/ L- U9 X; |$ g                UF_FEATURE_SIGN sign = UF_NULLSIGN;$ s9 N* S2 T7 p0 w9 E% M
                tag_t target_body = null_tag; ( `' A/ @  t% i, t  }' A- {8 h& M5 T
                uf_list_p_t  feature_list = NULL;
3 q% Z" @  _, ^% \, n                0 k4 Z* i. G# ?/ A' j/ @  A
                UF_MODL_create_list(&path_list);
( b$ N1 R6 W: R2 G4 i& A                1 g/ ~% U6 H# }  n, H
                UF_MODL_put_list_item(path_list,linetag);8 T" }8 \  ]9 q. B; k0 c
       
5 S" |3 `8 X% x, `8 Y, H1 j                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);- H$ ^% p+ v; a7 D; @
               
: q& d, i+ v: t$ k" Y                errorCode = UF_MODL_delete_list(&path_list);- b  A" X5 u2 X0 j& B5 C" ^
                UF_MODL_delete_list(&feature_list);
1 |5 J" Z2 a$ `+ a                UF_terminate();
" ?7 `7 z7 ]/ @                associativeLineBuilder1->Destroy();- a: a6 I, a- r5 l, ^5 O/ X

) c" a* `$ z6 b
a.png
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复0

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了