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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();
; P4 o+ l2 ~7 _, R1 a                Part *workPart(theSession->arts()->Work());
) H3 W0 O# d( r                Part *displayPart(theSession->arts()->Display());, d) I+ u+ c/ o
6 L. K$ A' {7 Z
                Features::MoveObject *nullFeatures_MoveObject(NULL);
+ V1 a6 Z9 t! Y                Features::MoveObjectBuilder *moveObjectBuilder1;
. `! W  r4 S. F. a1 n                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);* ]1 v8 x! j9 ~& W/ D" K0 `
3 {- q2 d$ K. D
                NXString angleValueString;4 U( h; r3 w  o" k/ t
                std::stringstream ssang;
/ U7 m& k! U1 S* V( W& P# G' H                std::vector<NXOpen::Body*>bodies;6 f% R' n6 n, v$ n" X' z
                NXOpen::Body *bodyList;5 l2 }! x9 Q5 J+ W
                std::vector<NXOpen::Curve*>curves;) C& ]) z$ q5 j& U( @
                NXOpen::Curve *curveList;
8 k! ^; X0 k7 c+ a                std::vector<NXOpen:oint*>points;
" V0 ~$ r0 X- R5 {0 I                NXOpen:oint *pointList;) I/ j2 f6 }. r% \# D5 ?8 o
% [2 ]+ j' B5 q/ Q5 a
                //Get base point* d- P6 ?4 P7 C, ?
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();8 m9 Z. c% O  ^2 |4 j$ W
                Point3d point= pointProperty->GetPoint("oint");' G3 U1 l2 A! L, S
                delete pointProperty;
: H% G" ]; H- i                pointProperty = NULL;- u) `+ x3 T0 U5 R4 B" H

; s, v3 e+ {! u0 x4 J' n; H                //Get revolve Lie value
5 s4 k$ w5 y2 t# r6 R0 O( T* `6 z                BlockStyler:ropertyList *rValue = expression0->GetProperties();
' \* G7 g6 c% F2 Q; M" s                double rangle = rValue->GetDouble("Value");
. ]8 n; m6 o! h$ _- b                delete rValue;
! r$ Q; G* H  Y7 _* R                rValue = NULL;+ s- p- w; K: F
, q  k1 I( n2 y1 \: |
                //Get Rod section Objects
# t) U, g8 G7 ~6 h- t                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();, n6 D; I4 N2 D/ c: O- M* s
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");, Y5 e: s$ j- X: ]0 O
                delete bodyObjects;4 r+ d3 b" k) C3 w* A
                bodyObjects = NULL;
  y0 x, M% t; [6 M1 e6 D; Y
; s( w; m2 G1 P: X# d3 j                //convert TaggedObject to body & curve & point
& }! J2 m9 E( i! |1 l8 h% D# C                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);5 r1 ^# {" R1 n+ [" j0 r4 }1 f/ b
                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);
. ~, k8 M, o0 _( t# J) y                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);# X4 Q& }/ J/ L8 ]& ]% w: i0 H

# v6 s3 x) w! @3 J0 d! [
, E) a: p; A" [0 t( N2 p$ I4 r                //convert values to string. a, D, |1 k! B3 U* I  R
                ssang<<rangle;
* D0 W" w5 T* M                angleValueString = ssang.str();
+ T8 h9 l9 ~  ?2 j5 [. @
; G3 j7 t& z/ {
4 W4 O: R7 \% W/ r6 _6 V                //create motion feature
0 J; |' b8 q8 ^( \% A. x
3 M' D8 c0 ]5 u2 n5 ?2 Z                Point3d origin1(0.0, 0.0, 0.0);, m* C9 I5 s: u: e0 B' \6 Z
                Vector3d vector1(-0.0, -1.0, -0.0);3 D" ?6 {# N: [- V
                Direction *direction1;1 w3 n% u. }0 k9 e7 V- N" Z1 Y' s
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);
3 [. ]+ c5 ^! {. j: k9 M
0 {7 _- r+ s9 G! ?                Point *nullPoint(NULL);
  p4 u; Q& \1 w" ]/ }! q                Axis *axis1;0 n. c+ B: o4 a+ a/ T4 n( ?( [+ w
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
+ X+ L' D1 E5 O$ N
9 s- V2 i( |' z8 o% W2 h( n                Point *point1;
6 w5 Q4 x8 Z1 X8 E) x5 W                point1 = workPart->oints()->CreatePoint(point);
& J8 x, e+ N, f  @+ d
2 o7 R' r: \9 |+ R! ^                axis1->SetPoint(point1);  
  B* l5 e: K7 g9 ^% o- S                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);6 I! X/ `& I" Z# Y
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);& V. B, L3 T; o* m0 U- J8 b8 R
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
& E& ]; u3 r5 o) d& `                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
( F+ U1 t* S, ?                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);
/ `9 g! E8 l# W9 i  v2 h' {$ y                moveObjectBuilder1->Destroy();# H/ ~' S9 @% G* b3 O

9 H  c; S3 Z7 H5 F( @% B$ X调试没有问题,执行的时候,总是后报错,还请指点一下:' f% b3 N+ n/ ^

: s; |4 q: L' e2 H- y                               
登录/注册后可看大图
  k+ y3 y) ?" x0 O, I) }

2 n# I$ n4 V1 ?$ B+ h6 L* g
2 u0 K* P3 t9 @; r0 W) K) i" U' t- ?
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
% Q4 r. T  v9 H5 p# U7 a7 [NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
+ g4 d8 |; a. B
没见你commit吧5 N# C* u( `& ?9 d2 K
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二次开发专题模块培训报名开始啦

    我知道了