PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

[求助] Move Object 中出现报错

  [复制链接]

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

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();
/ i6 _+ Q) F2 {& @. `% r2 ~                Part *workPart(theSession->arts()->Work());
8 k) A+ _* M! q) y                Part *displayPart(theSession->arts()->Display());
7 ~$ f- K. |, L6 t$ p1 D. B2 @$ S4 t
: t9 l$ G& f0 `6 [                Features::MoveObject *nullFeatures_MoveObject(NULL);
( ~" h% R  ^, C5 \: J. `1 F                Features::MoveObjectBuilder *moveObjectBuilder1;
! M6 Q; [7 i6 i; ]                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);
9 G7 ^# L6 J* e8 M+ N: o3 @; }" P- u4 f$ q- m: Y* F  y% ~
                NXString angleValueString;7 ]0 r3 z5 {$ J' A. @+ R
                std::stringstream ssang;
4 F0 b; G% P, C3 U$ q: e/ |                std::vector<NXOpen::Body*>bodies;
( b: m  ]1 M6 R9 A6 \7 u8 X+ m                NXOpen::Body *bodyList;
6 f) ^- G' Q2 z& }                std::vector<NXOpen::Curve*>curves;' y1 U" ]$ _1 h/ q% b$ u2 _% t
                NXOpen::Curve *curveList;
2 e; w  M3 t9 |% \# y                std::vector<NXOpen:oint*>points;
0 Y8 K2 p7 t3 [& I5 L1 W5 e                NXOpen:oint *pointList;
5 n  }8 m. K6 c% ]* i7 C! k
7 G6 `. ]- S/ t% U' s0 J, H                //Get base point' e- `& D" v7 n  Q+ Q# y# s4 h
                BlockStyler:ropertyList *pointProperty = point0->GetProperties();
. Z$ p$ L6 e" V* W2 K                Point3d point= pointProperty->GetPoint("oint");
+ K& ~; q$ Q& V                delete pointProperty;# R2 y% l7 O4 T* q7 k/ x0 ?4 w$ D
                pointProperty = NULL;
7 e( Z$ Q' c9 g( u1 a$ e. S4 o! o0 X! F0 c' s) a0 N- V: F2 A5 B
                //Get revolve Lie value
/ T# l* w$ C& x, ^* r' Q                BlockStyler:ropertyList *rValue = expression0->GetProperties();* s/ E) q3 s; q2 |/ d$ @4 K! l
                double rangle = rValue->GetDouble("Value");
# O: }) d( Q/ |9 l                delete rValue;
( N& ^: J9 {8 A& z- K- d                rValue = NULL;
$ o, Q+ o' S" m1 b2 O" x- {' x# b
2 z( p, I% [* p9 \                //Get Rod section Objects
! W- |6 {. y. T                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();
% q) [0 V! b2 ^3 {! D) I5 n                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");7 O1 E8 G5 B; j* K2 b
                delete bodyObjects;
# ^$ {9 o* M( L  ~                bodyObjects = NULL;8 {' r+ n* e# n$ U! A
! |, y+ v) w! d, H  C
                //convert TaggedObject to body & curve & point
' B  _3 N3 Z! C+ Y                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);
  A$ E3 N% _. O6 L  j* T2 ]                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);! g' n8 V, {' `9 h2 S
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);
9 @' x- D# h7 H) u0 K+ l3 V( J& `5 ?  L- r

2 l% b: N6 j7 f# \% w. u# y                //convert values to string
  f: G0 w0 z( B                ssang<<rangle;! z3 u, q- M. ]) k
                angleValueString = ssang.str();- X  a* \$ [5 _) c8 p' w% }% Q( s

& l3 y* d9 I# W- ^* d, c1 x0 t* _9 {6 n+ {7 }1 T# a
                //create motion feature
7 y: }/ A% b' |" w
; {2 J4 Y! G- u9 u: v                Point3d origin1(0.0, 0.0, 0.0);; T6 p; P) ^( c8 d9 {
                Vector3d vector1(-0.0, -1.0, -0.0);
4 O3 \" I, h- G- U6 Y7 {( G                Direction *direction1;/ H$ ~( c+ M5 {7 L5 R
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);# @( N+ G  v* }
. [" s  C; u  S8 r
                Point *nullPoint(NULL);) L9 [: K/ _9 B. o' Z0 w
                Axis *axis1;4 _+ w+ R6 e; {" }- a
                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);8 d, G6 ?5 ^- I& H
+ G. C2 K6 x9 l2 ]. j5 y; @# o
                Point *point1;
! h* R2 }  a- Q. |; r                point1 = workPart->oints()->CreatePoint(point);& w/ v! [+ i! E0 n9 D4 d8 l2 F3 t
- j! _( y9 X( x0 S3 \8 ^8 T& ~2 A
                axis1->SetPoint(point1);  4 N, x. W  z( Q
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);
+ y6 g+ F3 q% J                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);& N- F2 W4 e9 h. @) f
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);$ ?4 K: Y3 ~# z: @5 t
                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);( A6 q  L4 }  O. G, l
                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);
* ]; r# i# Z! Q% H  A                moveObjectBuilder1->Destroy();
5 U/ Z/ P7 @" I( l) I' J# s
, O7 e& m; \/ M& r/ E8 N调试没有问题,执行的时候,总是后报错,还请指点一下:
/ N2 q8 Z8 B1 O
2 z- V1 B: V9 e% _: V
                               
登录/注册后可看大图
6 r- n* [& U0 Z! Y3 _' Q* v

9 V9 P- V$ m, \6 U$ s. U
" Q/ `; Y3 D+ W( W* D9 i+ p0 t2 c( c0 U% J
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
' W0 U7 b3 G. ?( _: nNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态
, k  V/ H# G3 g6 B  [
没见你commit吧. K& ^4 c5 }( D; G7 s# K
moveObjectBuilder
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了