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 38220 127

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS
) a; T" ~% ]+ t* X
( V# \- M7 V+ C% U
. z- [2 r% e/ l3 X9 ?3 S  l
内容:! b2 j5 N! t9 M! v! {
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
5 l# j7 y" E& n8 J  M4 E目的:/ r5 `$ j# E9 d7 h. [2 c! B
使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。( z0 `( ^1 _" P* ^( J/ o

7 j/ P" ]6 H$ y6 t. |
% m( @' c: W  U! G

5 m3 s7 A$ v* T; g) E

24 创建自定义基准CSYS

24 创建自定义基准CSYS
' {# {+ }/ @! n; [, ]# n9 B+ s
& I6 ?4 [0 r8 j6 }: c8 T) e

- z* b1 x: p0 `' f( w9 ^- K3 m$ b. P1 X

  I% m8 ]# R, o9 ?# j4 D
  1. try
    * D. d5 k* v' E1 g6 Q
  2.     {# p% ~; h8 I, o( J
  3.         //---- Enter your callback code here -----& O9 m9 E: d$ v& N5 g$ u: L; r5 m. T3 p

  4. ( h+ Q4 ]+ n7 i2 A  h# A" L
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();
    , G1 y0 f+ U! g" R. V, g
  6.                          stringstream ss;
    3 h, q6 L: [# |: y4 p
  7.                         NXOpen::Vector3d xdir,ydir;
    : e( c& i" {( b: E6 ?
  8.                         NXOpen::Point3d originPoint;
      }! d- @: H" B! `$ d, g
  9.                         lw->Open();0 D' i; g  i9 |' ?- }4 g$ H
  10.                         ss << ("创建的坐标系统信息如下:\n");- g7 V7 Q4 ~8 H5 F
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");( m+ D/ z: {& L  Q9 Q5 ^$ K
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);  K: Z3 X8 X' x
  13.                coord->GetDirections(&xdir,&ydir);
    $ L" T* n& t/ {4 `! Q
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;0 Q: q# u$ s  d5 N! H' t
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;# R+ s8 \. a, _7 a, V& E4 F" Q
  16.                         originPoint = coord->Origin();$ S/ u1 }3 T( p! \) l" a, M
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;
    1 Q9 a& _/ q3 z0 y1 Z# D
  18.                         lw->WriteLine(ss.str());0 E4 d( a$ O2 P2 L
  19.                   // create the csys
    5 }& W! a, I  v
  20.                         Part *workpart(theSession->Parts()->Work());# n0 a6 F1 Y/ P( i# W& R
  21.                         Features::Feature *null_feature(NULL);
    & N* V' I9 E% E8 `$ {" s% a( S( H
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;+ v  ]/ f4 i2 Q+ G% d$ F
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);
    5 ]% k5 L+ ^  b) ?5 \2 p
  24.                         datumCsysBuilder->SeTCsys(coord);, ^, T$ ]4 i9 S! k$ R
  25.                         //set the scale factor$ K( Y3 o2 p. h" r8 q3 t, I  G9 H% L
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));$ P1 Y2 ~% f6 W7 |# v( w
  27.                         datumCsysBuilder->Commit();$ L0 \) w+ }+ P, z0 B7 ~' t5 c
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;( g2 M9 U5 O; n
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();) |7 p6 Y0 N* m! g. h4 f
  30.                         datumCsysBuilder->Destroy();# l/ c- |8 ^. [% D8 r" t
  31.                         // set the color# W0 m( }' T* L9 r9 t8 ~
  32.                     NXOpen::DisplayModification *displayObject;
    9 P8 U1 l# ]$ \: A3 T9 l
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();
    ) _  S2 V+ _/ q8 o1 S0 c
  34.                         displayObject->SetApplyToAllFaces(true);" ?9 f4 k  U: q! }8 {

  35. ; b, {, ~4 p( I+ }9 X+ n
  36.                         // get the color from the UI
    ) ]) W2 \1 m- C# B, b
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");* [6 E2 k! N- g; p6 x7 M; t
  38.                         displayObject->SetNewColor(color[0]);
    4 a" N, C& {% |* M- R
  39. ) o% A) u9 N: F9 v  I- q) r+ s
  40.                         std::vector <DisplayableObject *> csysObject;+ o3 h5 t; j  a
  41.                         ss.clear();$ |  g3 ?: `9 K- U% d
  42.                         ss.str("");. v. w1 p. L& h, D, |
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;
    7 H4 }5 I9 |- I8 \; c
  44.                         lw->WriteLine(ss.str());) c3 m$ W- N( M  j$ t2 m; s
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )1 U, N9 D7 T6 y8 T, a/ m
  46.                         {
    / s5 p- s7 M9 x9 C
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));& m! t! k4 @. X. k. O- \
  48.                         }
    - R& D. b" i; K
  49.                         displayObject->Apply(csysObject);; ~% i5 t% j- W
  50.                         delete displayObject;
    % v& _& u) ~: ]. N. u
  51.     }
复制代码
% V3 [9 k/ ^1 K* G! ]) w- E
) S9 l3 j/ T/ j- ~0 Y
9 j; |- D& v$ D- r6 T" H" T9 `

  Q: y/ m  {0 h. o* }
4 ]9 i" v  E! ?" X$ U, R  ?/ g; ?; f7 |

8 x* o& e% l3 l6 I% ~% o6 d0 E! Q
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

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

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建$ u: b6 ]$ g( D1 n/ b% e 3 U& N% D5 r$ w1 d% Y
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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对象
2 u' U. b) u: ^, M; j7 |! h) Z
' v% F8 u) q# T: U, I- {7 R/ x2 f
3 u+ t7 a1 G+ k; ^7 K. r
% w$ s: T$ w3 W: [: J1 ^; e  R
上海点团信息科技有限公司,承接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对象颜色' g, [* Q  E. r9 V
7 G; m& ^0 z# e3 \
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了