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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();7 ?) g! v6 k) R. D& }9 ^7 @
                Part *workPart(theSession->arts()->Work());
  z: }7 y5 C" k+ ]/ \' G6 J                Part *displayPart(theSession->arts()->Display());+ Q; v1 S7 n( o
. s  z; L+ g9 @6 q( l1 f, z$ _7 z
                Features::MoveObject *nullFeatures_MoveObject(NULL);( i4 k+ C4 Y# `) \$ e& H. j
                Features::MoveObjectBuilder *moveObjectBuilder1;! G% s) o% z% {; V
                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);
' z7 k% ~, i; U
+ S/ j0 \2 e& x                NXString angleValueString;
  y1 h$ ^$ S( b5 ?. ?5 |# d5 c! j0 S0 o                std::stringstream ssang;7 w& n( ?1 y4 [: n& p
                std::vector<NXOpen::Body*>bodies;
, V0 B% p+ B& \6 Q7 J                NXOpen::Body *bodyList;
" M6 K# j  L9 j                std::vector<NXOpen::Curve*>curves;
5 ?# p5 D0 z' U8 g                NXOpen::Curve *curveList;. ]. G- C- E3 Y3 {$ {
                std::vector<NXOpen:oint*>points;* W) x* W' j/ g) r/ J" D
                NXOpen:oint *pointList;
& j; I/ T7 c* w! L0 q. o& ?4 K/ E: P& R" ~8 ?
                //Get base point
5 p  E( {- r+ V1 Q                BlockStyler:ropertyList *pointProperty = point0->GetProperties();) m% {, {) O7 Y# K; N
                Point3d point= pointProperty->GetPoint("oint");
, y2 x7 D+ @, X3 J                delete pointProperty;
1 h' I$ t8 ?- k. q8 R5 Y                pointProperty = NULL;
- K" Y9 y, i; K& n/ i
3 L( x0 Y" u5 V2 B                //Get revolve Lie value
8 K( d( e6 E- R7 u                BlockStyler:ropertyList *rValue = expression0->GetProperties();7 @# k+ C8 l7 j2 Y( p' K* e$ B2 F
                double rangle = rValue->GetDouble("Value");
5 b5 v; t& O, W" S5 c( M                delete rValue;8 n' k0 i; `- n9 N8 k: g0 Y, Z- d
                rValue = NULL;
0 P) D, B& C# \0 J" G+ D/ k1 K5 N4 D% D# v- A6 b4 M/ r* j
                //Get Rod section Objects
: b# v' B  }' F                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();' l* O* e9 {; J9 s- ?; O: z( v6 |
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
( c4 \$ w% J0 G                delete bodyObjects;
7 ~5 e$ c- d6 y) Q6 G8 _                bodyObjects = NULL;
0 r$ e+ ]3 |( {- F7 w2 A: z) L& n0 `0 [* ^9 M' J0 o: O+ d8 Q1 y
                //convert TaggedObject to body & curve & point
6 u: g# N" `6 X6 u                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
" o/ G1 Q; N) `% x                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);
: M+ O8 U4 e2 D2 M0 T7 H  ]                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);
2 u$ s, T- X% @$ Q0 X( {' @
: Z8 g$ r0 a% q4 j3 r7 W% s& ~3 V  w* U4 h0 l
                //convert values to string
$ K3 g% j' b  X                ssang<<rangle;% V0 v3 r4 k$ c8 P  R  i
                angleValueString = ssang.str();5 N% ?2 n2 ]* N' d: ~( P# v, a( `9 i

: d) f- }0 _6 s) }2 t. W3 P4 M! e# j4 i
                //create motion feature
$ H+ c5 |  k2 ^. S, I6 s$ y
# i  C* x7 h& Y2 H7 I                Point3d origin1(0.0, 0.0, 0.0);4 E  O1 h  _. O* v
                Vector3d vector1(-0.0, -1.0, -0.0);
/ r; I5 S6 Q# {7 E+ A, W                Direction *direction1;
& C( s6 b1 ^* v% n0 t. Q                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);
$ Q5 y5 p2 }) W# y8 @+ H# y( S& `+ _0 i" J! g8 }) A0 H
                Point *nullPoint(NULL);
8 x! r8 @# d) ]( ^  ~: H" [                Axis *axis1;- Y' p( l4 S6 C" I
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
; K; g7 B; D. L, `8 y5 J/ o$ d; v% Q+ B  Q( U1 y1 T7 V2 K2 K
                Point *point1;  Z, ?8 h* J7 u2 c: Z, U
                point1 = workPart->oints()->CreatePoint(point);# d& @( }& d& z  h0 q4 ]4 k

4 r8 q; w1 r/ T                axis1->SetPoint(point1);  
8 ?8 x& I! [1 C; l9 R  _$ l6 l                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);- A; D6 ?- J- x, u1 s8 G
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);
) b6 S) O9 u% D9 f                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
' R, s$ x, m4 B# K* u                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);+ J4 `- B$ I0 i: F, L
                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);" U, P; v2 G; w% t
                moveObjectBuilder1->Destroy();
3 J9 D( Q; @3 M" O' Q5 a
9 @: d$ Z+ ]1 _; a调试没有问题,执行的时候,总是后报错,还请指点一下:
# B9 ?9 m  v. C/ C, a1 P
% M- p( |% y  p+ j- G) ]1 |
                               
登录/注册后可看大图

1 e$ C* q$ D0 ?% m! \' o) c9 \4 l. k4 a& S3 f; ~* M" R

1 D7 R7 A/ v% I4 d* k% S& |+ M4 k7 |: i. R
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
$ V% s  n4 q* U1 N$ S, p" B* ZNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态

" j& Q1 I- h5 _5 t/ f没见你commit吧
4 O, c( i" Y0 y' c! l3 H$ hmoveObjectBuilder
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了