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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();( V, B- P! G; E  x. l
                Part *workPart(theSession->arts()->Work());8 u. h  l( @- A/ D# d' H
                Part *displayPart(theSession->arts()->Display());5 X$ e% C+ |2 v$ n7 ]

6 H$ J" G2 [: O5 q                Features::MoveObject *nullFeatures_MoveObject(NULL);' M0 F" M" X+ _' P# T: }
                Features::MoveObjectBuilder *moveObjectBuilder1;- k% X5 E9 d) f5 \
                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);9 D+ P, k) z) l. S" [) r; n7 h

$ A" M1 V$ n* v9 l6 {                NXString angleValueString;
+ ]$ G9 Q1 N% q4 N: d                std::stringstream ssang;2 b) u+ R  h; q8 Y* j4 n, q+ h8 I
                std::vector<NXOpen::Body*>bodies;" m2 F9 Y1 l: c) ?+ J+ N2 @
                NXOpen::Body *bodyList;4 c3 G( }3 M2 r, I
                std::vector<NXOpen::Curve*>curves;+ }& W0 n& @. T9 r% N, M
                NXOpen::Curve *curveList;. j0 @. x. s. u2 f+ d% s3 ]. s# J2 O
                std::vector<NXOpen:oint*>points;
# ^, k3 K( _1 V5 ?                NXOpen:oint *pointList;
. e# w' V+ s+ Z  L5 t& R
6 z+ f* _7 W. M3 h2 G( O4 P                //Get base point/ W( I: V4 l- s, `; B1 V! G( o8 q
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();
/ K$ h. Z. d6 x, [5 _                Point3d point= pointProperty->GetPoint("oint");
  i/ v% U( s9 V  G( {7 k                delete pointProperty;
2 Y, c! {- A5 S, E                pointProperty = NULL;
5 V( }; w& w% H$ |) O
- E( ~5 M3 J+ U  ]4 L: {                //Get revolve Lie value- _* a# u8 ]- h: I
                BlockStyler:ropertyList *rValue = expression0->GetProperties();
; ~& p4 e! C" f                double rangle = rValue->GetDouble("Value");, f, t1 `* d) s/ N0 C
                delete rValue;+ G1 ~) \! p5 N; D) F
                rValue = NULL;
" _2 {( U2 C1 c4 d4 n( n. A+ \% ]
* B# r* C. u! J! d8 _                //Get Rod section Objects' F! M) i9 y' `- I+ i& Z- D
                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();+ `/ u, r, D# {" Y$ ?6 N
                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");3 m* `+ s2 U9 r
                delete bodyObjects;1 w  C% n6 Y8 Q! u$ q
                bodyObjects = NULL;
! G7 f8 F& `5 D# d/ Y# }! Y2 l' ?4 B
( |5 B8 v# V$ O5 ?! ]- D3 Y& A                //convert TaggedObject to body & curve & point
+ o' M0 K6 n! m0 e3 g                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);( |% |0 |6 j5 d( i
                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);0 `1 M5 J" a- x0 l2 i9 d3 Z% ~
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);
7 o9 c; \4 n' r! U
+ d- m. f% g6 p5 k2 K) g# f
, f( i' r- h4 ^' o8 s) _                //convert values to string
$ j) q/ |6 B& Y6 Y                ssang<<rangle;
) V# S+ D% r; ?& E; S                angleValueString = ssang.str();  U( ?' N( Y9 O5 g" o! n0 }

5 ]# z  ^7 i# W* c4 z8 [# T4 B/ d9 l6 r; n  R6 h
                //create motion feature
# b. Z: _, r( l# j5 P' b' Z" G- W! @5 a, B( O1 I; U, r$ ?
                Point3d origin1(0.0, 0.0, 0.0);
! L" B! y2 r, a% ?; G# H0 f% f: H                Vector3d vector1(-0.0, -1.0, -0.0);' b* x: L8 d! ^- p* u9 O3 t
                Direction *direction1;: {4 |, _: i2 ?+ S
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);' B6 M8 ~+ @4 q
9 ~4 ]. y1 n7 D1 O# ^5 S. |1 i
                Point *nullPoint(NULL);4 m/ j3 b( Z7 c& A6 E* R
                Axis *axis1;
- X' X+ _4 W4 v! g                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);
0 Y9 S& e9 S9 s5 q' Z$ b  d- l4 _( I$ [5 Y, q! K
                Point *point1;
/ G: a( A5 X, O6 J                point1 = workPart->oints()->CreatePoint(point);
; t8 ?$ M4 U! j# M5 X0 v
( T8 Z: h$ J* B                axis1->SetPoint(point1);  - V/ Y5 }4 Z, x+ j* Q! N
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);
. e( [2 v: ]  b                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);0 r. H3 B# o# [
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);
" ~) |) u) e, G' m5 _0 Y, K; M                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);
; W6 a- i, S9 ^% ?% q                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);
* @- N8 V) z8 d* [) z                moveObjectBuilder1->Destroy();
; P5 {; n7 T/ V0 n2 H# u1 r7 Z+ N" C6 F- f& o4 D
调试没有问题,执行的时候,总是后报错,还请指点一下:5 d0 o( }0 ^  |& J, D% C; K; P" i
4 d* k# y8 o- Y8 ~; f( K/ }
                               
登录/注册后可看大图
7 ]4 L( I3 ?0 q. Z- N: c
0 x3 |- a1 _1 ~' H4 k
3 d4 K8 ~2 q$ H& ]/ z
8 F4 w' ?3 ]0 E1 D8 u0 z5 `
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# N2 b$ V: V" I/ |. N# \, T
NX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态

% {' u* X3 W6 j, \) g没见你commit吧
6 z7 A( L- ?0 y- t6 \, EmoveObjectBuilder
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了