PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

秋爱 楼主

2015-11-27 00:24:00

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

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

x
本帖最后由 秋爱 于 2015-11-27 00:27 编辑
2 ?+ ]" N1 n0 e: }6 K  {" ?
2 d$ @6 Q3 Q2 Y6 n' A" W请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:
; @8 i" C3 ?' q) v* q9 m            //两点创建直线* w7 x9 C* u' Z* a+ }: E- |
             S) @5 r# T% o) Q1 @* o1 L
                Session *theSession = Session::GetSession();. R5 l  t& W0 x0 S. c; ^7 t; V2 ]
                Part *workPart(theSession->arts()->Work());  a- \) _) c$ `5 }) f
                Part *displayPart(theSession->arts()->Display());
, ]9 [9 Y2 Q7 F; \; ~+ E! N0 g& i. @; T; e* z3 I
                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点' ]) J- e6 X: r  u
                TaggedObject * p = pp[0];+ r- O1 i3 w% T/ ]
                Point * getpoint = dynamic_cast<oint*>(p); ( c7 u! Z' h9 T9 |6 s( b. o- N' o% w
/ Q' Y( x. Z" t: o* L) \; w
4 v# f1 ]* x6 S$ J# I' H9 n
                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点  _  z( ^2 D- t, U4 e" O1 C" |
                TaggedObject * p1 = qq[0];5 ~0 |7 T( P' L
                Point * getpoint1 = dynamic_cast<oint*>(p1);  
' R4 t& D, M; r7 }# ?7 q& d& w' w# X

4 j$ n* n( `6 n! L& u# }6 _) y7 E                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);5 Q1 f6 }, _6 H- e) E+ `* ]
                Features::AssociativeLineBuilder *associativeLineBuilder1;
4 w+ X7 u, e& Y+ t( e                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);
3 S! R6 `$ f, Q/ k6 E
1 L8 H  y- n/ k3 x2 R0 H+ I/ S

% u- B  {+ e. B# p7 ^, P) |. r                Unit *unit1;, J9 Y$ i- h, m: _- }
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();
, h" U/ I- q8 A  U! ]                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");
0 |; n5 ?" T! N9 j                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);
9 ^4 K! R1 V' `) O" p8 J( f5 P7 I. M+ b) V/ [  q

! J- U8 I; K- x3 a                associativeLineBuilder1->StartPoint()->SetValue(getpoint);+ J$ O/ \) K- N  K
                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);
. U; E& m6 z, D- d: W  S- V                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);1 w6 y6 n+ y+ Z! P9 j; b# v
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);
  X. d7 M. `& P5 W7 k* \                NXObject *nXObject1;
, z; L$ C* l& P4 l, H                nXObject1 = associativeLineBuilder1->Commit();; ]5 w- D- q% _% y) U; A, l
                associativeLineBuilder1->Destroy();2 o2 q0 a  s  m4 E7 w6 B$ |
- M) i4 O$ i' m6 @
: M$ x. f- g- X0 ~  s9 O0 J
               
1 T8 ~9 S, A; g" w6 |1 d, _                //uf部分+ d& G1 e7 y/ L; Q" U2 o; P* y. r
                UF_initialize();
3 T6 Y+ J  K  I: U% t        2 e, b6 F+ o" c; n/ x
                tag_t linetag =( nXObject1->Tag());( ^7 U3 ?3 t% M+ ^8 f" q
                uf_list_p_t path_list = NULL; - N# D0 ], {7 O1 i8 S' M$ }
                char * limit [ 2 ] = {"20","0"};( I0 q9 Q' Z% c
                UF_FEATURE_SIGN sign = UF_NULLSIGN;9 i  B6 _" f6 M9 G
                tag_t target_body = null_tag; : l' L- M# q- x  Q; W3 K) j6 e
                uf_list_p_t  feature_list = NULL;" ~# a$ e4 l8 S5 G# G
                ' A0 M4 w' X8 E/ {0 e0 ~
                UF_MODL_create_list(&path_list);: e6 ?& |+ f/ \3 o' B4 W& C& z
               
" q# P$ }+ I! w6 @( w0 @' O2 q                UF_MODL_put_list_item(path_list,linetag);/ s1 y1 N; C! G- k' T
       
- T. L9 a/ l/ z6 S                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);+ O  o# h# c8 {6 z% j( ~) o& E
               
0 [: L& d) A+ i  L# ]                errorCode = UF_MODL_delete_list(&path_list);
( ]8 F7 O& i3 D# t, L- t                UF_MODL_delete_list(&feature_list);. V$ i* A7 x) h- I' ^+ c. T
                UF_terminate();
& N9 s) f+ W) p! ?                associativeLineBuilder1->Destroy();
2 b+ e) m3 `  t, V0 h" \0 e: W; ^6 a
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二次开发专题模块培训报名开始啦

    我知道了