PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

秋爱 楼主

2015-11-27 00:24:00

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

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

x
本帖最后由 秋爱 于 2015-11-27 00:27 编辑
, Y3 ~4 f. s4 z6 b
5 Z9 q; i2 A+ h6 t% c, P# e请问怎么把NXOPEN创建的直线用UF的函数生成管道呢。我在界面上能获取任意两点生成直线(nxopen实现的),把直线转换成UF函数里边的参数后管道不能创建,请求帮助,代码如下:
0 |3 F+ a/ r5 \7 v" [# N7 g7 T            //两点创建直线5 y- {* J3 ?! u" a
           
6 G1 V/ I* m7 c( _9 ]0 R- u9 L                Session *theSession = Session::GetSession();' D: B8 A& I  }. k# _9 k1 e
                Part *workPart(theSession->arts()->Work());0 V0 v; p, o' M
                Part *displayPart(theSession->arts()->Display());
+ b6 s/ n5 u* ]: }' U
, k' O' B- Z& H: b( `; ^: w/ ^                std::vector<TaggedObject*>pp = point0->GetSelectedObjects();    //获取选择的点7 Y- G% U, J% J" c9 @5 x% s$ k
                TaggedObject * p = pp[0];* B1 s3 z5 |8 ~" F
                Point * getpoint = dynamic_cast<oint*>(p); ; n0 ?- \8 V9 s7 p: c; B) e" l
3 o5 x! o3 M, c7 A0 L; u: d

6 s: ~4 z) w+ h% O# R( o                std::vector<TaggedObject*>qq = point1->GetSelectedObjects();    //获取选择的点
8 l$ V. E3 ~! k8 D                TaggedObject * p1 = qq[0];! {3 X  p/ Q; b
                Point * getpoint1 = dynamic_cast<oint*>(p1);  " {/ r( d8 t/ P: \
; @, g# s' j2 h. ^# Z# z
0 @' y* T" F; V0 k" W7 ]4 N
                Features::AssociativeLine *nullFeatures_AssociativeLine(NULL);% c7 f% s, |% V+ K5 C
                Features::AssociativeLineBuilder *associativeLineBuilder1;
( |6 I# s5 r0 h7 _' @5 ^                associativeLineBuilder1 = workPart->BaseFeatures()->CreateAssociativeLineBuilder(nullFeatures_AssociativeLine);' Q: T6 o. V3 L! Y2 z3 ^

3 Z) i7 i2 o: J- R

( `4 ^4 i+ w0 _2 m8 O# V5 V$ E                Unit *unit1;
& i' |  Q# K7 u) d+ S+ v                unit1 = associativeLineBuilder1->Limits()->StartLimit()->Distance()->Units();4 D. H7 z  {  u  q9 l
                associativeLineBuilder1->Limits()->StartLimit()->Distance()->SetRightHandSide("0");
/ `% N1 M4 I9 B6 @7 e7 E9 j                associativeLineBuilder1->Limits()->EndLimit()->SetLimitOption(GeometricUtilities::CurveExtendData:imitOptionsAtPoint);! E: ?1 X- y& u; b+ Q: p7 l

# z# |" B* r% R& q
! \' p: F  ~& u% F2 x, ^( Q
                associativeLineBuilder1->StartPoint()->SetValue(getpoint);6 G9 j( C2 p% g  |$ f7 ~1 L+ }
                associativeLineBuilder1->SetStartPointOptions(Features::AssociativeLineBuilder::StartOptionPoint);  o+ ?/ A4 T2 \7 k% v
                associativeLineBuilder1->EndPoint()->SetValue(getpoint1);2 B2 R2 }3 t2 e% f: g
                associativeLineBuilder1->SetEndPointOptions(Features::AssociativeLineBuilder::EndOptionPoint);
7 ~, o+ E) m  N7 }4 M                NXObject *nXObject1;+ o! C$ w8 ]0 g6 V. T3 {" U
                nXObject1 = associativeLineBuilder1->Commit();4 N9 u$ C8 a3 y  s- _1 i
                associativeLineBuilder1->Destroy();! L* S6 k. Y6 R" @) B- b+ V2 S) U- s

; H' b! y4 D8 V$ y' v
! V9 g* ]% `6 o$ _: O
                3 X0 e: r( B2 y; N0 o% u2 M
                //uf部分
3 F9 T/ h; U+ z                UF_initialize();
3 L5 W# r4 }3 Q" U5 h       
) ^! X7 q' T; X0 }                tag_t linetag =( nXObject1->Tag());
9 `( o/ Q6 m- X8 ^, Y8 S                uf_list_p_t path_list = NULL; - X& V0 r" C2 v8 I( e6 V3 [2 _& ?5 |
                char * limit [ 2 ] = {"20","0"};& c2 R- s3 j& b* K8 J/ s2 M
                UF_FEATURE_SIGN sign = UF_NULLSIGN;
! p- F4 i8 {6 S- ~& m" z+ {                tag_t target_body = null_tag;
0 J7 E: v- L- k2 U                uf_list_p_t  feature_list = NULL;
7 F$ J! S5 K' l* D, C5 [, V               
! U* E+ y2 i# Z1 Y8 u* d% C                UF_MODL_create_list(&path_list);
; P& a0 b8 \$ f) H2 p0 _# g                7 E( b# I5 R" v4 z
                UF_MODL_put_list_item(path_list,linetag);- W& ]% p* w( f3 e9 Q, Z! V; v
       
) \3 R  J' I9 x/ `" Z1 ]                UF_MODL_create_tube1(path_list,limit,sign,target_body,&feature_list);
9 m6 t7 l7 ~* X- t) Z7 O                $ I0 g2 n. k3 l( R1 g
                errorCode = UF_MODL_delete_list(&path_list);$ ?1 [3 w1 B/ c+ C9 t$ Y5 o
                UF_MODL_delete_list(&feature_list);
5 A9 x6 }+ V2 Z1 M+ x0 j                UF_terminate();7 }" ^1 \7 @7 L1 h
                associativeLineBuilder1->Destroy();; g: N4 J. x& u7 I' }/ [

; g- W* H6 z" ^5 C- D
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二次开发专题模块培训报名开始啦

    我知道了