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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();
2 a4 e4 t+ [. y7 P                Part *workPart(theSession->arts()->Work());
0 w% d) P) M! j( W1 P. A                Part *displayPart(theSession->arts()->Display());
7 ?( {1 N0 X; h. u" S% n+ i8 k: k- P  v0 `- f4 s7 x7 P, Y" G( g
                Features::MoveObject *nullFeatures_MoveObject(NULL);
* q' F$ a1 y6 M3 b                Features::MoveObjectBuilder *moveObjectBuilder1;
- a' y; `1 Y4 P2 V' Y  i                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);+ _; C+ J, n4 c) L7 b3 Q
9 z6 u! U+ y; n3 d& f% l- @
                NXString angleValueString;
1 m2 q, y) S0 ?: g9 B                std::stringstream ssang;
1 c- _& [- d9 T' W! G" i                std::vector<NXOpen::Body*>bodies;
' R/ c7 c6 @, q9 M7 r& h1 T" t                NXOpen::Body *bodyList;
$ j) C- ?5 E1 {. A                std::vector<NXOpen::Curve*>curves;
. P; M0 w7 U3 X4 C                NXOpen::Curve *curveList;4 R3 C  d) [) _
                std::vector<NXOpen:oint*>points;
1 {, d& K' @! v% [0 _3 a& r                NXOpen:oint *pointList;1 S; H$ c, Z' a* v8 N( v5 F
* c  j" {9 z. h* W9 F: _
                //Get base point9 S! l- U! i+ l2 P/ W
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();
: N2 w$ J* t+ `4 a( V                Point3d point= pointProperty->GetPoint("oint");6 j& y" a1 w. O; @4 y
                delete pointProperty;
8 e/ J& c8 P& V* {* |  u* P0 C                pointProperty = NULL;& M$ H! C: I- l4 s: s5 r& Z
: o4 h' I% Z$ w3 t( r2 G2 K0 f/ O
                //Get revolve Lie value
) h' b: [- Q5 f% L8 v                BlockStyler:ropertyList *rValue = expression0->GetProperties();0 X0 c+ J# {; I( a4 F
                double rangle = rValue->GetDouble("Value");: }) X! p* A: [) H
                delete rValue;
1 x. v7 r% a7 ]8 X  ^% b                rValue = NULL;$ {+ X6 E4 x9 u9 R2 k& i. P
. m0 S; F' \# R# f% X+ q
                //Get Rod section Objects4 y2 \* {$ a7 x: a3 B% r
                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();
5 [# |4 L0 v8 ^! n% W0 Q* L                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
9 Q0 q& v& a( E; l9 g. S' C% K                delete bodyObjects;
! _; |2 [; B( T. ~                bodyObjects = NULL;' H3 p) W: ?) i% t# ~- Y0 Z* |, G7 n

( U% B# O+ g0 Y4 X                //convert TaggedObject to body & curve & point
3 q, I' l, m& u# Q' G: [6 m) G                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
+ ]4 V+ p: ~  i, }: g                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);
8 A% L3 p) ]. Q                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);) V0 [* R  @% ^+ f2 I0 T

/ S  K# d3 @( J, J/ I& @5 V5 g8 @1 x1 H9 }
                //convert values to string
  |  P, w" u' P2 J2 B                ssang<<rangle;
" L7 L' L& ]5 b                angleValueString = ssang.str();) O6 F3 s" w0 [1 n4 |& W; D
4 C' Y; e" h6 Z5 d7 r) F) ^! F; g
3 z: r& x1 X& g$ r( n4 A! ?% O+ E
                //create motion feature
; Q# [6 a8 F/ X# _! Q7 ~: k: h# l
" F8 H1 b' h# @% d1 Q- c                Point3d origin1(0.0, 0.0, 0.0);
% T3 i$ D0 |) f6 G8 R5 y8 j) p4 m                Vector3d vector1(-0.0, -1.0, -0.0);
" T; o+ {6 Y7 m8 q. f" |                Direction *direction1;% m6 m! p! S! Y$ j. G
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);" T, r& V& F8 o; [& S

" s3 J5 t# d) _: P. e                Point *nullPoint(NULL);# ?: [# z+ r- Q8 I6 ~7 p4 G8 C
                Axis *axis1;% h2 I1 j4 X1 k' ~6 w
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
) E! e+ `( K* {+ l4 ^# Z
1 \2 z7 M3 v5 {' ?9 I9 T0 T9 g                Point *point1;
% P4 n2 m* i0 s$ l. v, O8 q8 S                point1 = workPart->oints()->CreatePoint(point);7 V) n! L% C7 d1 K

+ D- W  {* m! l9 B1 T. z& J+ O$ F' k                axis1->SetPoint(point1);  
1 `9 a/ Z! {6 K, y" k                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);8 s2 Y2 k1 x( ~2 B
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);- Z; P! Q2 N2 s, T0 Q
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
6 Q- u( R, ~; R3 R2 Z                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
9 t  E3 Q. F4 h9 ?                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);
3 v# g+ {4 u  ^                moveObjectBuilder1->Destroy();
  [4 g' S$ Z9 w/ b: x  {, s# F
. N3 u2 Y. H7 y& C调试没有问题,执行的时候,总是后报错,还请指点一下:* e* |2 R+ A7 s. S4 j

7 v+ T8 _* \6 W                               
登录/注册后可看大图
/ p8 @9 w5 h/ L% }# B0 l
" x1 a; V) h. ~
  ?- j3 c! H, A; ?
0 T8 |9 K" H9 `/ t3 ~, `# k
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# J' ~+ y) W# Y3 b( ^7 S' n; R6 n
NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态

( L* e( L7 t) F没见你commit吧
6 m+ `2 {" i1 F3 o% [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二次开发专题模块培训报名开始啦

    我知道了