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-国产软件践行者

[原创视频] PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS

  [复制链接]

2013-12-28 12:02:42 38713 127

mildcat 发表于 2013-12-2 20:43:43 |阅读模式

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS
% @" x+ X  D) p( k: A( X2 D6 L+ P& {( e7 K9 u( b
/ }) g' T6 R% V: a
内容:/ F6 A7 C7 h% K( b5 t$ _
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
4 {3 E) m, l& N3 o目的:
' ], T5 x9 R- g# E4 O6 X3 P使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。' J! G* l, z1 p+ @0 z& \( t2 m

8 w, G" N! F# Z# G4 r% f( t/ p  ]/ s  h% U
! l. E2 F0 t' `" {, o* e

24 创建自定义基准CSYS

24 创建自定义基准CSYS
6 w1 W2 E  J3 Q3 e! }5 h6 I
- h8 H, P2 B5 C; m/ ?  |8 @
2 ]1 v" n7 [: \' M$ ~4 d
6 p( l: \7 [" E# R2 y" r5 D+ y
  1. try
    : m% O7 ~9 u. f! S
  2.     {
    8 N* m& P9 i5 i1 G
  3.         //---- Enter your callback code here -----0 X8 h, N! i  a8 {3 E1 y9 w/ y
  4. : p0 ?: A" q/ C, z5 k
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();
    3 B  S7 `) W+ _+ z/ k: {
  6.                          stringstream ss;3 g5 E1 x! D9 t& v1 b8 N. W! a1 a% o% B
  7.                         NXOpen::Vector3d xdir,ydir;
    % b. @$ u! P( f- a" k# n- P
  8.                         NXOpen::Point3d originPoint;/ t% a3 P' f! l: z! P& f0 X
  9.                         lw->Open();6 f! E; u: [' k
  10.                         ss << ("创建的坐标系统信息如下:\n");! r: O. p8 @% k. ^1 f, \" c; M$ t4 ^
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
    3 x+ W& r) @) X: M
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);
    / E* a- `# D3 H
  13.                coord->GetDirections(&xdir,&ydir);
    % v$ ]" e# t/ T$ ~, ^
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;
    + f0 Q9 [1 N3 @6 \7 P! y6 ^. J: W
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;2 }8 i$ O) E0 M# f" @1 x
  16.                         originPoint = coord->Origin();
    6 k( A% r$ f( O
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;
    ) o5 ?$ J6 |4 ~  j2 ~) f
  18.                         lw->WriteLine(ss.str());9 Y$ L8 J2 e, E# e6 P' }. }( {( y
  19.                   // create the csys9 I3 U, ^  ?5 p8 k; v- `+ q. l
  20.                         Part *workpart(theSession->Parts()->Work());
    , v; ]+ Y. J, H' U2 V" G0 y
  21.                         Features::Feature *null_feature(NULL);. F6 X1 }4 H' E6 [
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;. n0 O; N: l5 Z8 q  f- x
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);/ z4 F  `" D) X
  24.                         datumCsysBuilder->SeTCsys(coord);
    0 U' ~  {. e; A& B; x4 m
  25.                         //set the scale factor
    ! k( a' }  I1 H( ~" R
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));8 E5 O" a- _% w6 c
  27.                         datumCsysBuilder->Commit();8 h: A9 H" s' M( h0 _" u/ c
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;
    9 i0 a' ?& P7 D7 U- N# D
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();+ f; F0 d  _; L* Y7 [! a$ j1 T
  30.                         datumCsysBuilder->Destroy();: A) e6 q/ Z) Y6 A5 ]- o) T( a
  31.                         // set the color
    ) I- a: b) `5 [& z; `+ j: U0 w9 t
  32.                     NXOpen::DisplayModification *displayObject;; S2 I! Z5 w$ D9 g
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();6 |/ t% }# R, C( G
  34.                         displayObject->SetApplyToAllFaces(true);) J/ {2 Y  j* p6 Z* x7 ]" ~
  35. * F6 t# d4 ?+ W9 d
  36.                         // get the color from the UI. D7 g8 Q  b  k
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");8 G' X5 \" h; F& {( n
  38.                         displayObject->SetNewColor(color[0]);
    ; N3 I$ V- U2 y1 O
  39.   L  G" O* N* ~4 I+ c- Y
  40.                         std::vector <DisplayableObject *> csysObject;3 d5 o+ m& [$ @7 ?. E+ n
  41.                         ss.clear();! f/ h1 ~/ _3 X
  42.                         ss.str("");
    . P' Z% ^+ K" O% `$ g0 M
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;
    5 h# y; q1 O0 J- R8 s
  44.                         lw->WriteLine(ss.str());$ C* w2 K% @/ _7 b8 O/ j# ~
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )& L5 z& C# Z! \& |
  46.                         {
    - r6 ]3 r0 v, Q$ g4 p* C
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));5 m% b6 p: i( d2 V# C- k
  48.                         }2 P' X0 D9 v: v0 k
  49.                         displayObject->Apply(csysObject);
    ; A" ~. B; y+ k  K* }; `, D9 z+ Q' y
  50.                         delete displayObject;$ _" w4 r1 ]7 f1 O! G1 Q8 q- D
  51.     }
复制代码

. P- g6 a% ?; P  C2 _1 E
5 \. [8 w8 V2 N% D
+ Y2 G! H  h7 x: ]
% U! a0 s" v9 A! M, K' H
: _, @9 c4 a4 z6 A0 j0 |
) [6 p: n% ?+ |! u" y, \
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

mildcat 发表于 2013-12-2 20:43:58

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建1 C* B6 y, M# U8 G4 D3 V! U. |4 @& ]3 u8 U 5 J5 D* N( U( G! y" m
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

admin 发表于 2017-10-15 15:24:39

admin 来自 #

2017-10-15 15:24:39

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(2)项目创建




上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2017-10-15 15:25:58

admin 来自 #

2017-10-15 15:25:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(3)获取CSYS信息


上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2017-10-15 15:27:00

admin 来自 #

2017-10-15 15:27:00

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(4)创建csys对象* }+ [7 j9 W  Y. W+ _. X

% ?( k2 v3 Q5 k! m

0 C/ z8 M1 N- A
$ Z1 [  F1 P9 j
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2017-10-15 15:27:52

admin 来自 #

2017-10-15 15:27:52

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(5)更改CSYS对象颜色
( q& c7 `; G) J
4 |; T# b4 A  ~  w- p9 O3 l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

东沟恋君 发表于 2013-12-8 15:37:44

东沟恋君 地板

2013-12-8 15:37:44

楼主好厉害.
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

大叔跳shuffle 发表于 2013-12-15 11:33:02

大叔跳shuffle 6#

2013-12-15 11:33:02

22232ddddd
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

累了就休息 发表于 2013-12-23 12:17:57

累了就休息 8#

2013-12-23 12:17:57

dsfsgsdgsdg
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

泰山小猪 发表于 2013-12-28 12:02:42

泰山小猪 10#

2013-12-28 12:02:42

相当给力,顶一个
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了