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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();3 Z$ \5 t- I3 }. {, Y, ]0 l
                Part *workPart(theSession->arts()->Work());* ]/ s6 C$ a' \' k! @) h
                Part *displayPart(theSession->arts()->Display());
$ {1 L$ q' M+ o0 n8 X% n- K
0 J+ u0 K; B# I/ V% B1 l9 l9 t7 {                Features::MoveObject *nullFeatures_MoveObject(NULL);& Y4 r0 N/ @. G7 h& C/ v
                Features::MoveObjectBuilder *moveObjectBuilder1;
% O2 w& d# G$ q& r                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);
( ]: \, Z. r" h
$ A0 {3 U- B/ \! y0 F& V2 P                NXString angleValueString;
! f& f% E4 E# }' h                std::stringstream ssang;/ j: \5 g* T' d
                std::vector<NXOpen::Body*>bodies;
3 T. q8 X* v  w3 \. ^& w                NXOpen::Body *bodyList;
/ Z$ C) m" }% @0 q8 H# Z                std::vector<NXOpen::Curve*>curves;0 h5 t( d7 [7 ~2 N' ?% C6 D* M
                NXOpen::Curve *curveList;
9 I# Q: Z- c" [1 n: a: o! a                std::vector<NXOpen:oint*>points;
: h0 T1 T3 d4 c: T: @: L& C                NXOpen:oint *pointList;/ B! w- \8 _. ~, W$ }: {4 J0 j2 }

8 R" a& N4 z9 y& x                //Get base point
2 C3 b9 Z1 O: T                BlockStyler:ropertyList *pointProperty = point0->GetProperties();
, ^8 D+ }0 ~; A8 C( h% R3 T                Point3d point= pointProperty->GetPoint("oint");: z( o, l; H& ^6 H. S. X
                delete pointProperty;
; O  C: k0 B& k% p6 y& W* K: I1 ?- l8 q6 I                pointProperty = NULL;. \2 o  C; L3 ]9 \! N5 Z2 R, n) Q
- d/ J& A. `! c6 y& `; T
                //Get revolve Lie value
& X; u! c- F/ J9 v9 C4 h                BlockStyler:ropertyList *rValue = expression0->GetProperties();
. ^$ S* r8 J1 Q+ l/ o( ^) `" _7 m                double rangle = rValue->GetDouble("Value");
6 `* H' ~! a9 B: \1 r4 r                delete rValue;: A# n! k+ b1 N/ E- S
                rValue = NULL;
; ^1 R! n8 L. m: B
4 @4 Z6 F8 [7 ^7 |9 S                //Get Rod section Objects' @, D& g* P) c) V; j! K
                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();
, v" B) b  x( x2 W8 O1 t5 [                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
* L1 t. ^0 e# d; Q                delete bodyObjects;& Q, j& P$ \5 M6 `% v5 H; q
                bodyObjects = NULL;
0 H: i8 B$ B& W) U1 U! a8 L1 j  e) L  W# y% l, Q) h+ o# a* U
                //convert TaggedObject to body & curve & point$ Z2 u2 ]- M9 L  \( E3 f' I
                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
* h, n( Q( q; p$ y; G$ d                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);& \; D9 t( u  X4 \7 K; l
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);5 d  \' Z8 t& V8 }' W! @

# g  J8 @% b: {& f. x  K1 X6 Z* A8 \6 N: O3 W# R  L, T
                //convert values to string
: t+ N# w& N( s. ]/ p                ssang<<rangle;
' _! Y9 P, N  b8 [4 n6 Z; E- c                angleValueString = ssang.str();! _* u$ E8 U# w
' w) T9 o3 Y' A4 r! h/ h% ?4 S

0 E0 u6 J6 N& b" H                //create motion feature
9 h* p& Q9 b2 v& x; M3 c5 o: ~3 M) M# x9 y4 E9 c+ O* W
                Point3d origin1(0.0, 0.0, 0.0);
1 `& O3 I* P5 \" ?/ j0 e                Vector3d vector1(-0.0, -1.0, -0.0);- F6 S% Y' z' n/ R, s2 [
                Direction *direction1;, C, J5 G, d( T/ p" Y. E
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);
0 U  c1 y9 e) u$ L% v8 N- ~
& \( C8 c) O1 e$ M. F* a                Point *nullPoint(NULL);
9 c; z5 E" O  U, W/ z2 ~                Axis *axis1;
9 k) Q, s& B# F5 w                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
3 y: @8 U+ q; k) z: `& X2 t5 R6 q" u' a% F0 X2 |
                Point *point1;7 |! m3 j) D# K! J6 p2 m' N
                point1 = workPart->oints()->CreatePoint(point);: T3 e' [% {' }# I

1 O, j( ]; v+ `5 e7 |6 c                axis1->SetPoint(point1);  . C& ^- h6 I+ W" m8 a( c, t
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);5 ~& ]/ I; _" I$ U
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);+ J6 ]1 T# |' J. n6 p
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
' \  `& q) Y( d& z: N' |                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
) b, U+ s# _& |2 v! v4 F; A                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);' R$ _) f; ?# q, y# V
                moveObjectBuilder1->Destroy();
2 K! Q* w+ T) R0 v% @3 P  ~  l4 p7 a* l/ b
调试没有问题,执行的时候,总是后报错,还请指点一下:
6 k" v1 ?! H. t( X% ]  _. c3 \  |
0 d1 B% d( i7 Q# d# \
                               
登录/注册后可看大图

7 n# `& c4 s0 \4 _3 _% y! h* y" E4 H; v0 e$ P0 p& L% ?2 `
# y+ R$ k( S8 v8 @4 Z; U6 B

3 |8 o# n# E* L* [( g4 J% f' N
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
) i1 I5 M% c" C; R3 [$ K" ]: nNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
- H4 z5 A4 J- h+ u/ k
没见你commit吧! R& O1 l" `/ W7 g
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二次开发专题模块培训报名开始啦

    我知道了