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

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

[复制链接]

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

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

秋爱 楼主

2015-11-27 00:24:00

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

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

x
本帖最后由 秋爱 于 2015-11-27 00:27 编辑 $ i7 F. _1 [8 n( Y  k* c4 I

- L7 o# X/ C0 o+ Q请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:
/ I; ~/ E) Z  ^! f2 J            //两点创建直线+ _. M( o) v: R& e6 z! n, E
           6 U8 k& v8 `7 t6 `+ V; q& Y
                Session *theSession = Session::GetSession();
- X: Y6 Y: [% w+ J8 b3 q/ p                Part *workPart(theSession->arts()->Work());
' ], Y, X# ~: M- V3 C* z% k                Part *displayPart(theSession->arts()->Display());
5 f( Q; P" H/ c0 r. Z
3 w  T+ p* J) a                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点' z, \' D3 }+ A$ [) \3 K2 i9 B/ I
                TaggedObject * p = pp[0];
9 i9 n2 Q' W! D+ B                Point * getpoint = dynamic_cast<oint*>(p);
9 Z1 n" y; V7 M6 [
# E$ T/ ~6 r$ E# [; n) t2 Q2 ^: |
: P) Q5 r0 N; @; Y4 W
                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点
' A4 p# ]8 F0 T' O) R% U! I; s                TaggedObject * p1 = qq[0];9 U9 ^/ x" R6 d# l" w3 D. o
                Point * getpoint1 = dynamic_cast<oint*>(p1);  
1 S* s5 l* b( M2 T
  a' ?( M/ N) Y; h

# ~* e2 Z4 L+ ]# c3 A/ k                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);( k" k! z; `# x( z
                Features::AssociativeLineBuilder *associativeLineBuilder1;$ ?1 R2 M, t/ s1 S. C, ]' R5 L
                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);$ C2 }3 x. l7 m$ z! X4 D
9 d0 [. O. R9 o( ~" @8 ]

& Y8 k: ~! k/ n; L1 D                Unit *unit1;4 B4 ~: s  I' s) s+ b
                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();( V/ N5 P6 i6 I7 B& Z
                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");( k- f) q1 X0 x
                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);; `6 l. R/ P5 H

5 K, `) m6 I" j& C! U, V- _) A
8 j) i, a# V0 f6 E8 x& C3 d
                associativeLineBuilder1->StartPoint()->SetValue(getpoint);
) x6 ^! [9 ^5 j) ^$ D; e( P( J                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);
# `3 I7 j1 o( w5 a. r9 y2 P! T1 ]                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);) f9 ]$ y& Q( v' L: R% B; e
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);
" w% l! c1 k: B% Y1 D: b                NXObject *nXObject1;
0 ?  u5 i0 b# O) a" Z- I                nXObject1 = associativeLineBuilder1->Commit();$ _8 O) b" M0 N4 a1 ]2 p' F; C
                associativeLineBuilder1->Destroy();
' [( R; E% G. L2 C& C6 l
- c. M# i, W2 _. p: I1 n/ N  v
4 L$ c  E: G( t- J3 `
                8 L4 |( P9 W" }9 Y( f* c
                //uf部分  {, V+ v. T# t( K
                UF_initialize();+ O0 @! C; O* P2 H1 `* p8 t/ x% u( }
       
" x8 V/ N! m2 h* ^) r5 m                tag_t linetag =( nXObject1->Tag());
6 }' {) ]$ M9 U$ k8 f: N, c                uf_list_p_t path_list = NULL; 2 x6 Q  z; Z' H% A9 a1 |
                char * limit [ 2 ] = {"20","0"};
0 T9 M7 h" |. ]& q! H1 T# {. _                UF_FEATURE_SIGN sign = UF_NULLSIGN;
1 D1 T/ R& Z- A0 q9 T                tag_t target_body = null_tag;
9 w% o9 J/ W' {1 c( ?+ {. o                uf_list_p_t  feature_list = NULL;/ l7 X/ |9 U6 L, C0 F- r9 B3 H; p( ^" l
               
' {3 c: L8 p" \. `4 @8 g3 M- h: n                UF_MODL_create_list(&path_list);% S( N9 r1 d' K) j3 x4 S
                % J# B  v/ C  E( o/ K4 b% z& ^  j
                UF_MODL_put_list_item(path_list,linetag);
" c, |7 V% e- I, k        - @& d  e: t, g4 Z  X* f8 q8 W8 a
                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);
9 e- M6 |, D; G; @                3 H- S1 }2 x# e! j) C* `: S: }# m
                errorCode = UF_MODL_delete_list(&path_list);9 X0 s% t! A, {$ r
                UF_MODL_delete_list(&feature_list);
6 P9 {9 p# I5 [' W; J/ C                UF_terminate();" E- n! H7 f" E: F0 G1 |
                associativeLineBuilder1->Destroy();7 B) M" P- y6 T3 z+ Q" \

# @% M. J- V% J9 `% k1 S4 l/ C
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二次开发专题模块培训报名开始啦

    我知道了