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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();
% E. ]  C/ d$ V                Part *workPart(theSession->arts()->Work());- ~7 `( a8 S2 O
                Part *displayPart(theSession->arts()->Display());
- S: {& |5 K  B' O8 G% r3 _$ Q0 j) q+ r% m; e. d; |9 J' ?$ u
                Features::MoveObject *nullFeatures_MoveObject(NULL);! g5 w- C, s% U% Z
                Features::MoveObjectBuilder *moveObjectBuilder1;- H( B/ e1 l% H) K' m
                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);4 [, g, Q0 z2 x! y+ P0 L' r
( r+ j# v1 y- J. G! u
                NXString angleValueString;  ]! U' r% ^. k( t
                std::stringstream ssang;
7 b" H) o- V! o" }                std::vector<NXOpen::Body*>bodies;
" y! O: Z/ g0 |1 `$ U                NXOpen::Body *bodyList;
  e# Q: p2 K' R, q# Q* s" `                std::vector<NXOpen::Curve*>curves;6 B1 |, ?* P# ]3 c% t& ^2 Z" E( e
                NXOpen::Curve *curveList;& @; A" R, y( n2 Q' |* k- H
                std::vector<NXOpen:oint*>points;
% N. S1 B# w# R+ M                NXOpen:oint *pointList;, y; Q$ N9 |# X4 {- q, v) c
: X0 X/ g3 w1 [% N! s2 e/ K
                //Get base point( E' z# D* E8 q  A0 N+ t. l
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();# E, A, P; W) m, ?
                Point3d point= pointProperty->GetPoint("oint");7 u, Z! a6 d" k7 q2 d
                delete pointProperty;1 Y& V( }$ P# E6 u2 S- M& `
                pointProperty = NULL;
2 |4 W2 {: B: y* Z$ d% D! B1 A& H$ e: g% y: e4 Z" G
                //Get revolve Lie value$ ]* T* F: v7 B" r/ t) }9 l3 s
                BlockStyler:ropertyList *rValue = expression0->GetProperties();( h8 A6 F2 n3 h
                double rangle = rValue->GetDouble("Value");
8 b7 x: B9 i, s                delete rValue;- _7 K9 D* }$ e5 V/ b$ A6 W# M
                rValue = NULL;6 ]: k' ^% `$ R; p) H) a# ^. @1 t
6 e( h6 k/ Y8 a6 `' U5 o
                //Get Rod section Objects
9 S+ k; J. {! v8 W! \. p# k6 B8 D, i                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();3 z" d1 d6 y& M( `) P
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");" b4 s4 x+ b5 r! S/ u/ R: X* y
                delete bodyObjects;
2 e, C7 o! [- B' d                bodyObjects = NULL;. C1 K3 f0 S. N! V1 B4 l4 Q
. `7 k2 {8 Q6 z9 F# R3 T# P+ ?
                //convert TaggedObject to body & curve & point7 j4 q/ a  C* N
                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);! \+ q& o" k" j. |5 k
                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);; O6 C, {* ]0 W
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);
. Q8 M+ h$ q  I9 [4 R$ b3 O" I* u1 s: i/ f+ a
$ V4 v* C% `' @. ?7 n) d! e
                //convert values to string, k/ \" k- t6 x5 `. s
                ssang<<rangle;
* \4 Q1 t* Y; X  G- n4 y- ^                angleValueString = ssang.str();  D) L. j* i) O% B, h9 m7 u8 U
+ B/ N: d& R, |& P5 L

; Q1 h' c* i5 W& g, w                //create motion feature0 f7 W! ?) Q$ @: c0 i" ~1 o0 D" S- V

% H, Y! M( l' z( e) J" L1 `                Point3d origin1(0.0, 0.0, 0.0);3 R& i( X) Q7 k, _$ Z0 Q% b0 |6 {* f
                Vector3d vector1(-0.0, -1.0, -0.0);
$ }" a) [2 j  \7 V/ M                Direction *direction1;
" `8 P$ N  |0 N! {. N                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);
' _6 Q# C" @: A' j3 h) p$ s: d! ?3 M% i
                Point *nullPoint(NULL);
8 {, p; v% s# G" l9 Q8 v7 H                Axis *axis1;
3 l) n2 B6 R! Z                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
. N6 O* _( R) e  D! g; b
  b/ }8 N: {9 ]1 Z                Point *point1;
, q# k$ p$ B$ I                point1 = workPart->oints()->CreatePoint(point);
4 f" C  T# Y- A
% x  N: o9 G5 Y- _$ z. ]3 l1 }                axis1->SetPoint(point1);  " a' V; P: V- h
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);
. J9 S. m' q4 A% r, u$ ?                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);
7 Z7 G  @8 M( ?) f5 ^8 Y                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);8 z1 l3 m- F: c- u: `$ g
                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
- i8 `  ?( O/ Z                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);% [$ J( u; B" N
                moveObjectBuilder1->Destroy();+ }6 H8 y$ r% Y5 k" a; z

" {' W- ?8 [7 f  v5 M0 p- o调试没有问题,执行的时候,总是后报错,还请指点一下:4 X0 x* e5 O- E$ _1 I! w

' J2 Y- h8 n, A! u9 y( a                               
登录/注册后可看大图
. s/ q8 j2 L/ i' s& ^3 \; l* R8 L
$ m* O. P; _7 \. L% n
& z5 @% N" [  a; F7 C# g

( N1 x: y( c2 B2 E- P
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- p3 }9 Z1 E# U
NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
: A8 x: N. F( ?8 R% r0 p+ ~' X" k
没见你commit吧
: `0 W8 ?" B1 Q; H5 e$ i+ P. [moveObjectBuilder
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了