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 38920 133

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS! v$ Y  Z- O* g% x1 Q# P0 ^+ Q! S  u

4 {2 A5 w& U) A* V: h. o. R' h4 X

: y% W3 f  w7 b/ R* A, q  V" m+ D内容:( T8 i. d: {6 ]: o$ T
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。# T' a# c& W, k) x. w3 x% i7 E
目的:- H/ i  z# w+ q2 i
使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。% E& X# D* j# |& w. U7 ?9 K" e

+ \6 G3 X3 u( |: f7 ]5 l  S7 z) f, k! j9 U) z( C+ f
: g- N+ `  d2 I. t* l

24 创建自定义基准CSYS

24 创建自定义基准CSYS
( I) K: I% l% q- d5 c* ^
: Z- x, Y6 G2 s
+ r( r/ l) A2 E( i* J" Z; s

: T' c$ ?+ k: x# c8 ?
  1. try
    6 P2 y& ~; H; [
  2.     {$ X, B4 x" C8 U! X
  3.         //---- Enter your callback code here -----/ y2 _2 U9 i& e( s; \
  4. ! Q( Q  R! F, w3 k" w) E
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();" G9 C% G* d% s$ T. u
  6.                          stringstream ss;, a( B* T% S. d; w
  7.                         NXOpen::Vector3d xdir,ydir;
    3 x4 n9 {% Y( _1 I/ Q5 O
  8.                         NXOpen::Point3d originPoint;6 s5 ?& ^! E/ R' F' W. G
  9.                         lw->Open();
    % s! W' X% w8 g* n# c& q, S; b
  10.                         ss << ("创建的坐标系统信息如下:\n");7 s7 s- j6 L+ o, K
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");4 i: l3 B+ w, B; q
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);  ~. {! [+ L8 q
  13.                coord->GetDirections(&xdir,&ydir);
    6 I& ~% j% S% u. \
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;
    : G5 d1 W* J, t2 @! w3 C0 b
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;9 i% R8 @" h" n$ Z
  16.                         originPoint = coord->Origin();4 Z8 {! y6 _7 N5 ~* d$ q( `
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;( Z2 K" g3 ^4 F9 l3 F8 _- d9 N
  18.                         lw->WriteLine(ss.str());5 a4 B/ u- a- `3 m7 p8 G1 |8 K
  19.                   // create the csys$ e% e8 P5 W; x; o, e1 E5 ?. j# D
  20.                         Part *workpart(theSession->Parts()->Work());
    $ u# Z* e+ e, I, m: F% L
  21.                         Features::Feature *null_feature(NULL);
    " v& N8 P' J; u2 Y" }+ ]2 H
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;, E' I7 H/ x  y
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);
    ) O) R4 k9 r/ Z( F
  24.                         datumCsysBuilder->SeTCsys(coord);
    # Z% g* h! X' E( K2 l. {
  25.                         //set the scale factor% `4 ?" y6 Y$ N) L4 @
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));/ D* U) ^* c; D% j3 L
  27.                         datumCsysBuilder->Commit();
    " n& ^( L! L- p5 ~9 D6 s% g
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;9 P' `& V1 d" M9 N) k7 w0 W& P6 M
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();% S% q. ]+ F$ m3 _" i
  30.                         datumCsysBuilder->Destroy();
    . V# z! S% e& H
  31.                         // set the color
      I! A3 l$ k- o. c2 B
  32.                     NXOpen::DisplayModification *displayObject;
    * f( l* o4 ~. n  L; L% Y
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();- u+ }7 P! E- m" L% v
  34.                         displayObject->SetApplyToAllFaces(true);( C6 |. J& d1 j1 {7 }$ G6 r6 u

  35. 6 S! B% x6 X5 S) q  i  I! l
  36.                         // get the color from the UI
    ) K4 a$ H4 J: m6 @2 a8 `
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");
    ! u/ [, [6 O! j
  38.                         displayObject->SetNewColor(color[0]);
    $ n& e. A3 z) D
  39. 1 `0 @0 }& h) b8 J; P
  40.                         std::vector <DisplayableObject *> csysObject;
    0 b, G: z2 G6 [1 P& s" W# }: L
  41.                         ss.clear();
    # L0 `* d( @& t
  42.                         ss.str("");
    ) L5 x/ \; b7 ]
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;2 ~) p' S! a# U8 X" d" Z1 \# W
  44.                         lw->WriteLine(ss.str());
    ; o  q* O1 I0 w: j' N- E+ c7 n* [
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )* ^3 k. S& U$ [
  46.                         {
    ' k  a7 a, g3 o9 a8 O# c* x
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));5 y& w1 M9 H4 Q( W3 ^
  48.                         }
      c5 c) e5 E1 z8 o6 R2 _+ E
  49.                         displayObject->Apply(csysObject);+ V+ e, ?$ j# ^; |
  50.                         delete displayObject;
    2 k9 r2 r" j" g$ O: E0 P
  51.     }
复制代码
' i9 z5 Y. _4 V

9 Q& ~8 B7 Z. L4 H" G

: e* a) h" t5 o( \4 n! s& W
0 R& T1 p% a# X4 _& K

8 H, W; y- O! [0 h5 `( d+ k( t) C( n) e- w  E
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

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

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建 4 Z( m: T% h* h m1 p: t9 K2 V- M) N- x; Z# j) o% w; U
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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

admin 来自 131#

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 来自 132#

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 来自 133#

2017-10-15 15:27:00

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(4)创建csys对象# }; f; P! a8 Q5 \8 k/ Y0 v: v
& b; c8 ^7 U* k  c: s
; ?+ ?( b; z: N! K' Z
% F- j% a+ M7 ^, Y' d/ }
上海点团信息科技有限公司,承接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 来自 134#

2017-10-15 15:27:52

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(5)更改CSYS对象颜色% F+ o' {* \. O0 J' k

* q; g' d" T  b3 z  @$ b) [; }) E+ |2 Y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了