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

[求助] Move Object 中出现报错

  [复制链接]

2014-6-30 09:59:52 4167 2

eda 发表于 2014-6-27 14:52:48 |阅读模式

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();. Y, N6 v2 a6 V, \
                Part *workPart(theSession->arts()->Work());$ S7 |) }" T8 v. z
                Part *displayPart(theSession->arts()->Display());
9 l5 n: S/ `0 e5 ^; x; P; H* _4 v4 }
                Features::MoveObject *nullFeatures_MoveObject(NULL);
, J! N0 ^+ |' G) x' w                Features::MoveObjectBuilder *moveObjectBuilder1;
" o0 U2 m7 W" T' Y                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);
2 K' c  C- C6 l& _, t- u( _6 G; g) G( J: C! p8 A$ ]9 Q! h
                NXString angleValueString;1 S( D5 k5 W5 B6 h& C6 p
                std::stringstream ssang;
$ w% p2 f$ d! b! Q* k                std::vector<NXOpen::Body*>bodies;
( p& _) r9 o) B* M                NXOpen::Body *bodyList;6 M5 M4 U" p2 I6 p- ~
                std::vector<NXOpen::Curve*>curves;
$ _) g" @; X% F: }# B8 u1 V7 a                NXOpen::Curve *curveList;
" J7 n' ~. g9 F* [9 Y& C                std::vector<NXOpen:oint*>points;
( W, k# J: o6 [- E4 T3 _5 o/ o                NXOpen:oint *pointList;5 x- J  d7 ]+ O  ^$ n  v, W! F

! g; Y3 L% n& x7 X" F) E" u                //Get base point# v; m2 c; l' h+ W# e# R7 ?
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();7 i/ D3 d/ H0 x* @' o! W7 Z
                Point3d point= pointProperty->GetPoint("oint");
$ d3 j- u' a; Z/ s- t8 r1 ^                delete pointProperty;& D5 a# \# Y- t2 k  g6 a# I; x; g
                pointProperty = NULL;
' p. X3 q& J, b% J
/ Z' L. w5 H# E, n0 h6 R                //Get revolve Lie value/ a8 K7 T9 z5 C: e
                BlockStyler:ropertyList *rValue = expression0->GetProperties();# U  C' a" N) @9 _
                double rangle = rValue->GetDouble("Value");
& d9 b( e0 B7 V5 ?% b/ E                delete rValue;* q3 L& t4 ^$ R* N
                rValue = NULL;
! Z* l( i" i/ E# B7 Y5 |9 o0 c6 Q7 z
/ K- a, r+ G& C8 B0 c1 ?                //Get Rod section Objects
$ f7 `& m* {- Y- f% G/ _                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();
- S$ \1 C" f; [+ w+ r0 I                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
* n, y0 n& s6 V7 P+ ]                delete bodyObjects;
0 N8 D4 y5 Z& i3 e) ?                bodyObjects = NULL;
, }  M. B  h9 k+ x6 K% k9 b
2 R9 C7 R  d( ^5 R, ?  Q) H                //convert TaggedObject to body & curve & point- ~4 [/ A' t+ S8 R$ O
                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
# u  U% `1 Q3 ~                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);6 h+ H3 ?, O3 h, m* |5 x
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);& a7 y) v3 e7 J; k  s

9 R+ X+ m) z/ g) I0 p; ?# n7 x' F( |, B5 ?  i, X
                //convert values to string8 v& X+ D) Y: Q7 p5 x. Q! v( X2 m9 Y
                ssang<<rangle;
8 E% w6 `  E2 o! S, H& ^                angleValueString = ssang.str();7 J1 L6 M# X$ R* w
3 |8 N% B( e# V( d  o3 ?4 e
3 a6 c* S2 r) E, [
                //create motion feature( l4 M; T8 t& L
+ N$ D4 k0 z. ?, [+ z2 n* F$ F
                Point3d origin1(0.0, 0.0, 0.0);
& m, |% M. |% d" F! _: F$ c3 B( K1 a                Vector3d vector1(-0.0, -1.0, -0.0);8 t) ~2 {, {8 H& F# v& U# [/ Z% F. b
                Direction *direction1;
9 Q* j2 g* Y7 f; e( S3 ?                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);% _$ V4 ?& S. w1 _) u. X. ^& _4 V

0 _# W; r. t$ D                Point *nullPoint(NULL);
) G8 c  B: a: K$ h4 |0 G2 Z. {                Axis *axis1;4 d  |8 h4 y4 x  ~4 x8 n8 f
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
4 q7 \' I6 H6 `6 U& n7 k% i* q
* Y' J# j3 s. Z6 |7 e* W; P                Point *point1;
' W* j8 H2 V; b% }                point1 = workPart->oints()->CreatePoint(point);
( V$ [( D$ }2 j  h( B/ p
0 e! x. i' M2 b; G! f7 `+ C                axis1->SetPoint(point1);  
: d# o* a* }0 v. \                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);
2 J' j$ ?; r4 e+ |  g1 ^1 P, k7 }                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);
, X* r3 B/ e- o                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
) {0 p$ z7 T3 u0 |/ ~/ n8 a( q! f                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);+ D. ?7 g! r, J: J! B5 |! }& C! j# W
                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);! e4 i4 z4 U: f: t# ]2 H. F
                moveObjectBuilder1->Destroy();% n/ Q9 b* d# ]3 T( q/ A9 w" o, u4 H9 _
4 b/ l% {. y$ Q4 c  F+ E
调试没有问题,执行的时候,总是后报错,还请指点一下:+ N  o2 r- Y# ]. A' U* P/ L+ d
3 n3 a# g- g5 |0 q; h* W
                               
登录/注册后可看大图
3 ]1 l& G. w) y( P4 W' k9 q+ y# t
& g9 m/ V  k# \# G: E( F
! L/ p) y; Q0 C! z0 q2 n2 N4 ?

* s5 J8 f. g& G# |6 d
aaa.jpg
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

eda 发表于 2014-6-27 16:54:23

eda 沙发

2014-6-27 16:54:23

NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-6-30 09:59:52

admin 板凳

2014-6-30 09:59:52

eda 发表于 2014-6-27 08:54) \7 s( b% a+ v0 j
NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
/ f) L3 G% r; T3 v! n
没见你commit吧
, F% @7 ]6 \1 h8 D; D% b+ SmoveObjectBuilder
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了