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

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS
' n$ p5 d7 S! y, u* i% }
- S: F9 O, W% T8 V: p* E

  U8 \# h5 e0 M# e( r" ]/ p8 [内容:: V8 p! i5 Y) x) i7 W
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
  i% l7 x# u- ~- V: ?# a. w5 v2 u目的:
+ h! F& |: F0 U使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。
4 d4 i( t8 f7 @" q
9 T. S; Q+ G% y8 s) D+ }
. Z& D+ P- Q; [1 c! ]4 ^0 e
6 W9 X! G7 c$ L' {

24 创建自定义基准CSYS

24 创建自定义基准CSYS

9 d! L  ~$ x8 }7 _; z
" {# V  N4 ^7 I" r! I! b$ D2 n

) H- d( D( K7 V7 S! `- C
2 {/ f/ m, q4 u2 x
  1. try
    : J. B$ h: a' X! g
  2.     {3 V2 A$ M! D- g' A& v  k7 _
  3.         //---- Enter your callback code here -----  j4 N( @+ c7 w, ]$ y% H
  4. % W) t( S" O/ v  b
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();
    3 j4 I( S% \8 }9 t4 v* g9 l
  6.                          stringstream ss;" |0 _9 W( b# ]- f& @9 a
  7.                         NXOpen::Vector3d xdir,ydir;4 L1 i+ q  i* C+ K
  8.                         NXOpen::Point3d originPoint;
    : }  \+ v9 A  v) p! T5 ^: j
  9.                         lw->Open();
    $ w: F# t' n2 u0 p& ?; E% H2 m3 j
  10.                         ss << ("创建的坐标系统信息如下:\n");
    1 e1 S' E3 b6 A3 c& {
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
    ! h& x8 `7 C) Q; D9 Y3 g; n( [3 A
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);
    $ S( Y1 y6 O1 k$ ]7 e
  13.                coord->GetDirections(&xdir,&ydir);* Q# t' R* a. L
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;8 k: u) C$ l8 h; G" i& F& H! Y
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;
    % ^( L. }0 b' j6 r
  16.                         originPoint = coord->Origin();% X% x  s5 |3 H
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;
    # R) f% j4 X' K% g# f+ {) f
  18.                         lw->WriteLine(ss.str());1 F+ f! q5 C6 d8 B& W. n# M
  19.                   // create the csys" W* I  b1 `4 v
  20.                         Part *workpart(theSession->Parts()->Work());7 t* h. ], @( w
  21.                         Features::Feature *null_feature(NULL);
    & d8 T# z6 E' x- x2 ?
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;. X  ]3 u( ?% |5 E# w1 Y6 A1 }
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);
    ) k8 ]" i* p# d, {! ]4 i+ l
  24.                         datumCsysBuilder->SeTCsys(coord);. [" p0 m+ e0 A2 f6 Z; T* M6 e  ~
  25.                         //set the scale factor
    # k/ v+ w- k5 \. D$ l
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));" ?3 |/ ?( r. E/ b/ l
  27.                         datumCsysBuilder->Commit();  u5 E  z! q! g+ b2 ~( J  n2 T, L
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;- i# E; Z- `5 j. |1 \5 `
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();
    : [9 j7 z" z4 R/ l% y* b5 W3 Z
  30.                         datumCsysBuilder->Destroy();
    8 N5 w# v7 c, U. l
  31.                         // set the color
    * R( K1 G5 O) L4 S% _- e
  32.                     NXOpen::DisplayModification *displayObject;
    ! w( s7 B( x" h1 L. v
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();( A# C; {5 ~7 k5 b3 l
  34.                         displayObject->SetApplyToAllFaces(true);6 A, Y' ?( L# `4 d% |+ Z
  35. 3 \8 O7 D9 J( p; B! x
  36.                         // get the color from the UI0 V; A4 U* w3 r0 R3 B% g! \4 h- D. ]
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");
    ' q( b$ w) G' D8 }- R# Z' T4 k4 w
  38.                         displayObject->SetNewColor(color[0]);) V+ d$ }) b* t) D# I: t4 I, L
  39. 8 A/ S) d5 Y  Y: z
  40.                         std::vector <DisplayableObject *> csysObject;
    7 y* P/ c3 R$ e* w, b" K# e
  41.                         ss.clear();3 [( S1 ^, C2 q7 r5 S- {4 ~
  42.                         ss.str("");
    ; j4 K7 t8 U/ C  A- x" ^
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;- Y4 F) Z; t7 ~
  44.                         lw->WriteLine(ss.str());6 j& @) h9 {& i  z+ ~7 G6 M5 f
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )
    7 ?( P6 g, t0 D* f8 [( n1 ~/ a7 L
  46.                         {  r0 ]: u( {. o; N& f9 y4 Z3 Q
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));
    & [/ T: n6 ~$ [6 u
  48.                         }. a, r5 A+ O$ w
  49.                         displayObject->Apply(csysObject);2 T: d4 g8 H1 x0 ]7 o  R' d* {% V
  50.                         delete displayObject;9 w, `3 V- T& y& w$ t% g5 j+ [2 T
  51.     }
复制代码

' _, _) n  B, F7 X1 I9 X4 m
& [, ?* ^# m- a$ L- D: k

; R! D2 @. \0 H; M( J* f& N7 Y4 _% d5 |6 h( n- }

- N! s: D  s2 g/ `% m# Y9 U  B! ]! F  z- z" b) l) r/ J3 _, D- F" 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创建# @5 G) ?2 P9 I7 c$ d. W5 E& B+ X I + p) n8 d4 i6 [ K/ l
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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对象
1 }/ R9 H+ h- [
% ~7 I9 R  U3 P4 \) f: r
- Z' n9 l: m+ C. P) E  k$ N) P
! i  O; w3 n6 U' b" ^  k
上海点团信息科技有限公司,承接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对象颜色! e2 E1 v& T6 a" K0 O# g
" |) O  j1 |8 f" z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了