PLM之家PLMHome-工业软件与AI结合践行者

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();
! h( T& C& i7 o/ Q5 q, o: y                Part *workPart(theSession->arts()->Work());3 {4 `- ?* A6 W; Z/ C: O
                Part *displayPart(theSession->arts()->Display());- j- z6 L) Q% P$ U. n8 ]

& g: v9 H8 W+ D6 L/ T) M1 j4 A3 i                Features::MoveObject *nullFeatures_MoveObject(NULL);$ ^- q3 r# {4 {1 a" x
                Features::MoveObjectBuilder *moveObjectBuilder1;
; w& l& d2 {0 s3 z# C1 f                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);* N5 D) j6 w, W/ G2 W9 K
% L* s) ^; t2 r0 l4 h) `
                NXString angleValueString;
0 E8 e! ^- N; `# ~$ y4 s4 P: q                std::stringstream ssang;
+ ~' m8 ]7 c4 p5 ^                std::vector<NXOpen::Body*>bodies;
% ]5 I/ C0 J. _' n                NXOpen::Body *bodyList;+ M& v6 N5 y- K& ~
                std::vector<NXOpen::Curve*>curves;
# N0 \/ A4 K1 c7 `7 K5 N2 J% |                NXOpen::Curve *curveList;
5 I6 y: w+ [* M( G5 y( z6 H                std::vector<NXOpen:oint*>points;
! S  M! ~" e, O, X. ~                NXOpen:oint *pointList;- c# g8 o4 g) L0 x

$ G" L) x0 t2 {* c                //Get base point0 a, O5 O* i& i$ C% U2 @
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();- W  K) A+ V0 R& Z: \" s+ @
                Point3d point= pointProperty->GetPoint("oint");0 T5 {3 p3 U9 v$ A
                delete pointProperty;) A& y) ~2 m; T: D
                pointProperty = NULL;
1 E5 b$ }* e3 E6 |' Z. C5 o; P( E; j% ]6 O! o4 N( I% z
                //Get revolve Lie value
2 D+ d$ a7 l& u$ `' w                BlockStyler:ropertyList *rValue = expression0->GetProperties();
0 D! d. |$ Z8 t' ^4 n. A                double rangle = rValue->GetDouble("Value");7 y- d" ~9 A1 f
                delete rValue;% p) O3 R0 E$ `1 K
                rValue = NULL;+ ?7 X  n: g$ u% U
( G9 q: R# ?# u/ p
                //Get Rod section Objects
- p/ e; g3 o4 }) P  y                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();2 p& B- r' C: k8 u: D3 |* q
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");, r4 F. n' a( {' O% ~. J9 v
                delete bodyObjects;
* ?* Z5 h5 `* R1 {- R" S  P7 t                bodyObjects = NULL;" V" F5 D" w5 X: {2 Z8 ]9 G6 u: L

5 H/ Q+ g6 M! U; h                //convert TaggedObject to body & curve & point
7 w# I# v' A* N# J                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
$ b$ V/ Q/ W5 ^                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);
8 {0 Z! ]" i! D7 U  [                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);7 v, J. y5 h, s; m9 L9 Y

% j/ q! @# _1 q- z- C8 @+ O* [) \& v0 w5 J) i0 B# B: C( \2 Q3 ]
                //convert values to string
$ ~/ n5 u6 {9 E: g                ssang<<rangle;! X  v8 t4 j9 Q6 d5 j
                angleValueString = ssang.str();3 R& ^" e0 p. R( P' b6 `9 l

3 b: b2 ]- {+ s6 f, f0 B+ |, B' K+ Q0 x0 h% L3 M: x, s
                //create motion feature( E, z9 ?. R* `) F' i

7 |5 o' f8 X" H; v/ ?! j4 J7 ?1 C                Point3d origin1(0.0, 0.0, 0.0);
6 S/ {& _; }6 N: @                Vector3d vector1(-0.0, -1.0, -0.0);
2 |1 l6 S# g2 I5 u: `                Direction *direction1;! x9 P- C( K$ Q! U$ o9 @
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);; E0 w3 ?& [& a- T; n* N
& L. a; c3 @3 E- m
                Point *nullPoint(NULL);: @5 u2 t( M) X# r8 b
                Axis *axis1;
1 M& ]$ X# t( k8 O                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
: ^: U$ R: T% s' r+ _
7 S. ^( J. {" _2 N1 Z0 L. ]                Point *point1;
" K+ e4 w5 r9 [& X, S1 K' l                point1 = workPart->oints()->CreatePoint(point);" N, @$ E% p- u" h9 i3 ~- E" i
7 y0 w/ a& p1 \5 f3 |: S  ~" v0 }
                axis1->SetPoint(point1);  
1 \% v2 m8 s' L; J4 s& P7 S6 s# T                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);! D1 P! g3 @7 x/ N
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);  g6 ]4 y7 q- t  ^8 @# t1 W& z
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);( e% J2 a% }( l: {- a
                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
3 V8 `% W; N0 Q% T# s                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);, z/ ^/ t9 `/ v! T4 K! F8 }
                moveObjectBuilder1->Destroy();
' S5 @4 P9 v( ]0 E2 [* [3 D$ q" P
7 A% }& w& L) {- \; I调试没有问题,执行的时候,总是后报错,还请指点一下:+ \1 ~9 G) i$ y

2 q% ?- b6 L4 C# i                               
登录/注册后可看大图

# S! _% b/ w* l$ D1 Z- w0 t) H) d; H0 t' ~+ e5 {/ E8 s7 Y" N

+ g, F& Z$ q6 w5 E' Z, I( C/ W1 I% c4 J2 H  W
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
+ F: e/ U  ~; ?' h2 _, aNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
5 Y3 d" h! z7 L! X% u+ W
没见你commit吧
- e3 Q' _- N7 P! ImoveObjectBuilder
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了