查看: 4694|回复: 2

[求助] Move Object 中出现报错

 火 [复制链接]

3

主题

22

回帖

367

积分

中级会员

积分
367
发表于 2014-6-27 14:52:48 | 显示全部楼层 |阅读模式

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

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

×
                Session *theSession = Session::GetSession();
, H" i6 ]1 ^) K0 r8 A                Part *workPart(theSession->arts()->Work());
7 @1 F4 f  T( [3 \) _$ y# V+ l                Part *displayPart(theSession->arts()->Display());
6 I. K0 O8 y* f- g6 i4 Y
3 ]2 M" v5 D& `5 x' C# [$ T                Features::MoveObject *nullFeatures_MoveObject(NULL);) w( R( ^  S* l4 z! \
                Features::MoveObjectBuilder *moveObjectBuilder1;0 N1 V6 }" o, [% S! ^
                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);
1 U% D$ W5 o3 |+ `
' f4 A7 K% n' T( h                NXString angleValueString;6 d1 W! o1 V2 N( o- D
                std::stringstream ssang;* v8 [5 i  T& |6 |
                std::vector<NXOpen::Body*>bodies;" ?+ ]9 k* L# d) ~7 J; \
                NXOpen::Body *bodyList;
" o  W4 x3 V4 K. D( [# d                std::vector<NXOpen::Curve*>curves;
; N* p2 O! E& p) V/ A7 j5 ^% Q' E                NXOpen::Curve *curveList;
6 ~0 L2 j" ?8 p! k; y                std::vector<NXOpen:oint*>points;+ @1 F. X5 k& T: Z7 U9 I/ q* v# j6 U
                NXOpen:oint *pointList;
+ d) F) x' u) X/ e% e" D* P5 ]
% `; t2 v4 e6 V' d5 F! |/ p& t                //Get base point+ p8 v$ g/ s; J: g9 L, \9 G. K2 k7 [
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();
* ^# M" B- ?% _) w$ b. m                Point3d point= pointProperty->GetPoint("oint");
0 t1 d, _4 I: B( b. b( ^% t                delete pointProperty;7 K8 ?* X* `" K3 v7 H; N& ^
                pointProperty = NULL;
5 U2 y& d5 a( J6 i2 E7 m
0 K- V% @+ }# A6 G. V  n/ v                //Get revolve Lie value
1 h3 M: N$ e. M! ]/ b! U                BlockStyler:ropertyList *rValue = expression0->GetProperties();9 J& Q! g) z' V: J! z9 }  ?4 p
                double rangle = rValue->GetDouble("Value");$ d- J8 ?6 b+ m4 p9 o8 D3 k
                delete rValue;  u* Q# }) b" _+ P
                rValue = NULL;! U5 c' J4 B: C  t4 G2 S

% S" O. {- s. j; ?7 ?! \                //Get Rod section Objects: u& Q' y" `* D2 i% Q0 f
                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();! z) Q8 I1 K& N* {0 t) J* C3 \% H) P
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
4 U1 Z0 G# }/ x6 r, h; R: B; u8 V! M                delete bodyObjects;
* ~( _& D1 F9 n- N, l2 q                bodyObjects = NULL;
6 `, B# @: L9 k8 M
- x8 a# f3 D5 L                //convert TaggedObject to body & curve & point  k2 X3 c' b/ a- F  J- k
                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);) T& n& K6 U; B
                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);( m0 N4 V8 r& @* ?' m1 W
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);1 u5 Y( R: b1 ?! v8 k* Z
6 `8 d& h" R+ k6 J% t) N# b  f
$ ~5 i" c2 I1 ^, K6 X
                //convert values to string! ~) p  m5 j$ I& ?" F9 \6 M0 _
                ssang<<rangle;
% x$ ^# K" c3 S9 {                angleValueString = ssang.str();
1 r! k# a# n8 r
$ M# }7 ?/ m4 L* ~5 ]
) d4 T$ D, z) e                //create motion feature" T8 }! w2 Q) M

* O1 z  o4 x: E2 N                Point3d origin1(0.0, 0.0, 0.0);  d, E, k2 ?$ }( o4 A0 z
                Vector3d vector1(-0.0, -1.0, -0.0);
6 c; [- c8 v6 j. E( ]8 w                Direction *direction1;
7 q( {1 S% U% y: y- u0 z                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);
1 F% P  c! d7 A% a
1 f1 c. p6 F! q7 h                Point *nullPoint(NULL);# y- ~7 O3 \7 o: C  I3 w: @, d
                Axis *axis1;& ?2 n. p- C2 D4 Z* E
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
1 E) h! G7 Z7 L  F! m
$ V0 W2 V6 J; c- B  M- j                Point *point1;
4 Z- G" M: c6 {; j+ Q2 ?9 R7 i                point1 = workPart->oints()->CreatePoint(point);
& P$ B8 f0 q/ B& O- u
! q3 F0 a0 G* s" I' ^                axis1->SetPoint(point1);  3 x, z  Y! V7 x3 b" w  V- N4 Y
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);/ |  ^: _( S5 ^1 ^
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);7 B: [7 x% S" S" ~5 K$ m- }1 l
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);: w1 R3 g6 P4 ]2 Z: ~' i: [
                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);( i' V) g2 {4 b5 r  S% R
                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);* N7 q6 h  U1 N! o% [: u
                moveObjectBuilder1->Destroy();
1 L3 ]4 N1 k% ~. W0 }( J- ?$ D% d5 Q. c* m
调试没有问题,执行的时候,总是后报错,还请指点一下:/ [5 v7 `% a" B( Z
& L* I5 m+ |/ {
                               
登录/注册后可看大图
8 G- b& X/ a# }9 s3 o

3 C, \9 w# k* q8 w5 k  p3 R9 K. B' ?6 o0 Q2 R8 K

+ d0 I3 X: G9 g- C6 I/ p
aaa.jpg
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

3

主题

22

回帖

367

积分

中级会员

积分
367
 楼主| 发表于 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.doteam.tech
回复 支持 反对

使用道具 举报

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2014-6-30 09:59:52 | 显示全部楼层
eda 发表于 2014-6-27 08:54
  Y+ O% J: m& m/ C' Q5 @% Z1 y  qNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
2 D! I/ _- ~) l1 G: d- f# r
没见你commit吧
7 L, `" E! y% O* \0 e2 ImoveObjectBuilder
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部