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 3986 2

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

eda 楼主

2014-6-27 14:52:48

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

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

x
                Session *theSession = Session::GetSession();- P( [2 o$ A" P( Y, ?% w- z/ m
                Part *workPart(theSession->arts()->Work());
5 u' f( y# H1 n/ B) \- N                Part *displayPart(theSession->arts()->Display());- |7 W" O' \7 H5 l4 m( [9 L
% G, M$ C: K: ~8 ~- w8 F
                Features::MoveObject *nullFeatures_MoveObject(NULL);; s6 X6 V& \: d9 J  i8 T8 }1 S
                Features::MoveObjectBuilder *moveObjectBuilder1;, W3 O$ U& S' Q9 ]2 x
                moveObjectBuilder1 = workPart->BaseFeatures()->CreateMoveObjectBuilder(nullFeatures_MoveObject);; ~0 b; D/ r% q5 D' l4 f" w

. ?1 Z6 }3 r. _" [8 D* W                NXString angleValueString;, ]! P4 |2 }1 ]; h4 P- j
                std::stringstream ssang;$ c; e' t' Q3 T1 W5 S# ~; p
                std::vector<NXOpen::Body*>bodies;+ r+ }8 j# |. P* R
                NXOpen::Body *bodyList;
# A$ e; W* ~7 y$ K1 {0 p$ I                std::vector<NXOpen::Curve*>curves;1 S- B) E" T* P/ [1 Y9 B( V
                NXOpen::Curve *curveList;, X7 R* n/ R5 ]* e4 K
                std::vector<NXOpen:oint*>points;
$ ]& |/ A4 z! j1 V                NXOpen:oint *pointList;9 s5 n# G% {/ @9 b" u! _
/ M" X- A* e) }6 D2 A% ?
                //Get base point
" }" F' t: R+ t6 c& V                BlockStyler:ropertyList *pointProperty = point0->GetProperties();& o" \4 N1 I: ^# O3 D0 f4 p
                Point3d point= pointProperty->GetPoint("oint");
/ @' E, y: V  M) ]' E: d4 D                delete pointProperty;8 o- z3 P' A* G$ o
                pointProperty = NULL;
0 r4 W4 r8 n" H5 ?8 I$ U
& Q" o* h* Q3 n& ^4 F# L                //Get revolve Lie value9 Q4 ~  G! M/ `9 |7 G" Z; k
                BlockStyler:ropertyList *rValue = expression0->GetProperties();, Q. _& I; O3 r+ {; X7 J
                double rangle = rValue->GetDouble("Value");
! ^& Q- I. T, W5 |" D                delete rValue;2 Z6 y+ y3 T, s. Q# \1 O/ e! U
                rValue = NULL;3 x+ x/ j$ ^# M
7 I( }. t$ a9 S$ M  Z
                //Get Rod section Objects
, C' @1 v. d9 D( ]7 M/ B1 G. {  n! q                BlockStyler:ropertyList *bodyObjects = selection0->GetProperties();
, z( V3 M) g' }6 D                vector <NXOpen::TaggedObject*>taggedObjects = bodyObjects->GetTaggedObjectVector("SelectedObjects");
- T. A2 Q; q6 Q. `1 S" T/ @8 G                delete bodyObjects;$ M3 C+ v5 ]9 W: m! n+ v! f
                bodyObjects = NULL;
6 ^7 Z4 a3 U7 J5 Q
) u& M3 T+ ?% _. X1 j                //convert TaggedObject to body & curve & point7 C0 t" F+ j, _4 O, B, V1 {1 }8 I0 h' d$ N! R
                bodyList = dynamic_cast<NXOpen::Body*>(taggedObjects[0]);1 h! k% |9 J8 _  ]( U  H4 T
                curveList = dynamic_cast<NXOpen::Curve*>(taggedObjects[0]);4 n1 t3 q! D9 |
                pointList = dynamic_cast<NXOpen:oint*>(taggedObjects[0]);
" A* X9 x* ~9 R) d' j5 [2 M
' N- u4 @1 ?' @2 g
6 `1 r# b. Q+ i% _1 y& K1 j                //convert values to string
4 ^- l, t7 Y" N& M2 H                ssang<<rangle;
2 ^$ c$ N8 R8 I' t3 b                angleValueString = ssang.str();, A( M# b/ [9 h7 I4 k
1 |9 m$ j3 n- y

# P2 d3 D+ Z5 ]7 x* b3 S                //create motion feature
5 N6 O( }& j$ W  n& b& c; e' _: B' L
" N* v+ U$ U* e9 a                Point3d origin1(0.0, 0.0, 0.0);! C6 N: w* h' A- F, c& m( H  Y
                Vector3d vector1(-0.0, -1.0, -0.0);
% t; e* W8 l, \) t7 N% Y6 X% }                Direction *direction1;' Q$ X$ `3 k' ?
                direction1 = workPart->Directions()->CreateDirection(origin1, vector1, SmartObject::UpdateOptionWithinModeling);+ }$ Q- ~8 X* A5 Q, w
0 w; k2 g9 \8 H9 x5 K
                Point *nullPoint(NULL);: Z4 p6 W) ?% v8 e" U' j9 U
                Axis *axis1;
' o% v4 z7 j/ I+ y4 @                axis1 = workPart->Axes()->CreateAxis(nullPoint, direction1, SmartObject::UpdateOptionWithinModeling);1 v/ f7 v) W+ S! u! r& u/ F# D
8 Z1 M9 L9 \" M( ]7 ]5 M1 c/ r, ~
                Point *point1;9 Z/ K2 _8 y  D+ h# m% d
                point1 = workPart->oints()->CreatePoint(point);
) s+ z! o! F1 ?' Y; z! X- u7 u' `0 h* a) S8 B9 ^& d
                axis1->SetPoint(point1);  $ T5 f+ z& K7 ^5 i7 u4 y
                moveObjectBuilder1->TransformMotion()->SetAngularAxis(axis1);# U8 }! @5 A8 z* W3 V+ A. K
                moveObjectBuilder1->ObjectToMoveObject()->Add(bodyList);. T1 }1 |! z* A3 _0 ^8 _
                moveObjectBuilder1->ObjectToMoveObject()->Add(curveList);  s: c; s1 H5 u7 V2 j
                moveObjectBuilder1->ObjectToMoveObject()->Add(pointList);% p7 I( K% ^/ c7 H, |+ L8 c
                moveObjectBuilder1->TransformMotion()->Angle()->SetRightHandSide(angleValueString);
# A% [5 J9 C/ |4 g                moveObjectBuilder1->Destroy();$ ^$ b' |- W- q. _

3 o9 F  `  O+ r' t! M0 E* J调试没有问题,执行的时候,总是后报错,还请指点一下:
) f2 p6 u, U& ]! }6 C% U8 Z
" {& y8 O- ?4 F9 F; T
                               
登录/注册后可看大图
1 Z' @* ]1 \. {* a9 M1 u
; U/ f1 C* C$ z5 ?
& v7 ~$ d* M+ q2 q1 ^; Y
2 d. N6 ^! Z- {- c$ q
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
9 e' K4 z* _, C# y( L% `5 W0 cNX9中运行没问题,NX8.5中,可预视移动,仍会报错,按完报错确认,又回复原始状态

  a! r; O( Y8 R$ |. e- ?没见你commit吧
* u- j' T. a; r' N* H3 g0 R( Y: CmoveObjectBuilder
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了