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

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS: g2 W# f! f9 @0 w7 p$ W

" i$ ?+ j! ]+ `7 g( p

5 m% Y- C) A% Y: N- r: Q  e内容:9 s. i# C& g1 j1 \, S
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。3 j8 w3 ~6 F, w
目的:
; }) i  E" R( r; I: ~使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。, d2 F: @: N! T$ I6 o! O

% ^+ L$ H% n9 ~( A! b5 g3 x4 v6 F9 C( H" ]4 l: b
! X6 |. W) @) Y6 F1 r  \

24 创建自定义基准CSYS

24 创建自定义基准CSYS

3 `# N3 a) j- R8 J- F9 K. j, o
$ e: j, w4 }4 l# ]4 P7 q
3 w  m6 T: A3 s  P3 C* w/ Z# ~

' A  @% ^, o  F  d7 s4 s% y
  1. try3 S" O$ ^- q" ?7 ~
  2.     {
    ( a" F! n3 h$ a% V" s
  3.         //---- Enter your callback code here -----
    0 K( Y8 s9 x4 _; N7 s# t* _

  4. ( y, c' w! s' k! @$ B
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();
    # ?. D+ C+ {5 g5 {: \
  6.                          stringstream ss;. B! p9 B& H1 V0 }! B
  7.                         NXOpen::Vector3d xdir,ydir;
    8 H  B7 G, H( q5 V. c/ U
  8.                         NXOpen::Point3d originPoint;
    / O6 l0 m4 t: W7 G; q
  9.                         lw->Open();' y$ t+ ^* J3 b$ |
  10.                         ss << ("创建的坐标系统信息如下:\n");* g4 E  B2 y/ d; `5 Z! g
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
    7 p1 t. s' r9 e/ ^
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);3 @& u9 U! T$ @. h5 _
  13.                coord->GetDirections(&xdir,&ydir);2 \! i+ ]) x8 P" f
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;
    6 k& I; W% n5 e* g5 E$ O* \
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;
    $ O1 G2 I2 \2 X4 I' c
  16.                         originPoint = coord->Origin();
    2 h5 y3 ^8 e- N1 b
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;# w8 a& A; Z: |/ ?6 }
  18.                         lw->WriteLine(ss.str());1 @" |, W: Z0 _4 G& x
  19.                   // create the csys9 a3 ]$ \+ S7 o% h3 J- v0 c2 L
  20.                         Part *workpart(theSession->Parts()->Work());- E. P5 I& E  L9 ]3 U9 J1 m
  21.                         Features::Feature *null_feature(NULL);; y; I6 e  d( G4 h( g" {% J
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;
    ! ?  n/ Z/ v) _2 p
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);( T  c4 G, C4 n6 x. ~
  24.                         datumCsysBuilder->SeTCsys(coord);
    . U; q2 ^. m1 B
  25.                         //set the scale factor
    ' f+ O5 e7 {! V" a- L
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));
    / E+ i0 M6 y$ U, k* z6 i1 [
  27.                         datumCsysBuilder->Commit();
    # `+ J0 l' q: f5 w- t
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;& S$ A3 F( c% s( H5 K5 n9 h; L
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();
    5 `0 _* ?: [( I0 z0 c
  30.                         datumCsysBuilder->Destroy();6 L; k* ]1 G. U8 h
  31.                         // set the color
    $ k9 b2 W! U. h2 ~, g5 D+ U) `
  32.                     NXOpen::DisplayModification *displayObject;
    2 k) `) X  l4 e9 G* X2 r3 P
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();- j1 R) T. I% {- ^8 {  J1 V( ?* a7 o
  34.                         displayObject->SetApplyToAllFaces(true);
    2 L8 w. y5 p6 Z3 ~7 N" @# R$ W- X: ^

  35. 2 S& r5 ^' E" [  y' p0 n
  36.                         // get the color from the UI
    5 A/ \' I/ ?8 J7 g9 z  t
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");8 j' O' E' P9 Z5 q' G2 P- [# R
  38.                         displayObject->SetNewColor(color[0]);4 s( {2 f) ?& \) t

  39. $ X4 a! `; s. h2 h9 z3 f
  40.                         std::vector <DisplayableObject *> csysObject;4 t1 o4 @- f8 R& H. O2 O0 U
  41.                         ss.clear();. r( W' R3 n# L" S6 P
  42.                         ss.str("");8 _1 A+ X. p$ c7 y- g$ T4 O6 ~  g$ U
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;
    ' G: f  J, l6 k$ o
  44.                         lw->WriteLine(ss.str());! f/ U: j/ \8 s1 A8 D6 C( ~
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )
    * w) H! o0 W! u8 m
  46.                         {
      T0 ]. k5 ]9 U$ f3 H! d' X" {8 z
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));6 d9 p0 _4 X! B( o
  48.                         }9 E* N. z: h9 G; @8 B
  49.                         displayObject->Apply(csysObject);
    & q, K- ]- B- a4 D$ Q5 ^3 t* X. n
  50.                         delete displayObject;* p* Z5 i8 w7 T
  51.     }
复制代码
/ X# ?4 u5 E3 @8 [
8 s# |1 t! x4 O* I
+ j& O8 v. O6 w$ A( S1 E, ?
$ `/ Z1 a( ^1 t5 U) ?
  h4 w: [0 h( A6 g, S9 u! l

5 ]7 ^5 l  k! U9 u' T9 {
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

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

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建 $ f. T6 k% h7 }% K# o# b4 c% l" w, J4 v: O. C. i
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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对象
# G( y5 A: \4 H) w/ a* ]1 `! t5 C% m% u( I% X3 ^+ ~. V

" \6 B9 S; D. T5 s9 A$ c, J. G0 O8 j, p# K: y3 Y! U8 {
上海点团信息科技有限公司,承接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对象颜色
7 y# h4 d! y6 B1 w+ V! I  A  U1 D( M; K1 g' O% H
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了