PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

2013-12-28 12:02:42 41039 133

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS
7 ]  A% F7 n6 P& }! G( ^/ Z4 n0 x1 w) M1 Z5 ?

' h5 D. ~; ?* P: O: c  z6 V内容:
+ u" a* j, m( u* J0 T创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
" z6 R" Y3 J# Y: D1 |( [: k2 Y% [目的:
! L. {  D+ z& g7 ?$ F% D( H4 f使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。4 q. S4 |6 `& R. m5 V' {: {

8 u) @( x/ ]+ p  p
0 F0 Q. m) k5 [; D& }' R+ x' g

; p: o2 U8 z5 |

24 创建自定义基准CSYS

24 创建自定义基准CSYS
' p) T2 ~% N6 ^4 Q" Y

: a$ o' n' z' D" p  F  J
5 E( H, ~6 {! Z" @9 ?+ z

: l, ?8 P- W8 _4 c5 b. G
  1. try/ Z+ B& {3 C3 U* c# P
  2.     {
    2 j# {( J. H9 N# J
  3.         //---- Enter your callback code here -----) c7 o- C! c0 h' M! ?
  4. : \+ t6 z  E9 T* R. D
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();9 x1 }- g' s/ D( c) L0 X- Q" W
  6.                          stringstream ss;
    * D$ f/ s% T- [, T, X7 S% {# [& {
  7.                         NXOpen::Vector3d xdir,ydir;7 p. `5 |  s& [
  8.                         NXOpen::Point3d originPoint;
    ( g. H: S6 h0 Y7 a* `9 `
  9.                         lw->Open();
    % L: x0 O3 i5 o) @3 ]( P) e7 h0 H6 W
  10.                         ss << ("创建的坐标系统信息如下:\n");$ d; q% G. B" Z* U. x8 E
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");; F( `  h) p8 n! q
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);
    * T7 |1 D. L8 n: A  M  Y
  13.                coord->GetDirections(&xdir,&ydir);9 e! ~  Z. J3 D2 @% J8 `! ^
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;
    ! s. t) C' n! ?$ n
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;
    7 s% R% S) s9 E7 ^7 }
  16.                         originPoint = coord->Origin();* ?  E9 `. K2 G- J9 h! ~. b* Z
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;; W6 T3 k  w4 G* s% ^+ _; a9 y
  18.                         lw->WriteLine(ss.str());: s3 B6 z3 T' A; k& j% T" D# E
  19.                   // create the csys5 j* W/ K! O4 C3 e9 J
  20.                         Part *workpart(theSession->Parts()->Work());' K$ T. f  f- G; z% x
  21.                         Features::Feature *null_feature(NULL);
    0 W5 f1 @) l# m; \: F9 w
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;
    4 s% j9 G: E  P1 t& r" M' |# ~! y
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);0 b6 s7 T; l( T8 @3 k
  24.                         datumCsysBuilder->SeTCsys(coord);! `, i; `$ w1 X/ ?& S- \$ N
  25.                         //set the scale factor# O3 t$ g; ^+ I* g6 a! j8 _
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));8 c  {/ u  g" v! F4 y% S+ Z
  27.                         datumCsysBuilder->Commit();
    ) @  I  c* u. M( s% u
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;
    $ N3 U3 b! b3 T: {3 H( {7 o
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();
    7 g3 s' }# X3 ]* Y
  30.                         datumCsysBuilder->Destroy();
    ) m8 F. f( J  ?5 W: q- s: j
  31.                         // set the color
    4 c2 n8 [% V3 B0 R8 l
  32.                     NXOpen::DisplayModification *displayObject;
    . q1 U$ Y- v% `) t* G& @
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();% N9 O6 L  u3 H6 D6 v
  34.                         displayObject->SetApplyToAllFaces(true);
    % d) N: ?1 I8 {- F+ D; ]. s) ^# {

  35. $ y9 Y' c+ w# t9 B
  36.                         // get the color from the UI  D9 E* B: k6 J5 M" K
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");
    1 Y% w, i1 u' y0 V
  38.                         displayObject->SetNewColor(color[0]);6 r* ?; n2 v* C' d: d" c
  39. 9 R6 }5 I4 @. A% ?" k" C
  40.                         std::vector <DisplayableObject *> csysObject;
    + f/ R; P/ x+ ~4 z8 X
  41.                         ss.clear();0 {5 Q$ V/ `! |# i: J
  42.                         ss.str("");
    ' ]/ Z: T) g/ H0 {6 z
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;" O6 u) K6 j3 m8 Z/ ^
  44.                         lw->WriteLine(ss.str());
    ' h' A  z: D2 c
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )
    " v  H  X2 g# O: |  X
  46.                         {. R, g- a4 R! D* v
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));) [! A5 a  K" B0 I" a+ C, x& f$ T5 S8 W6 `2 X
  48.                         }1 T  W! B2 a, H( C  i8 d/ s9 X
  49.                         displayObject->Apply(csysObject);
    $ _  c* O4 N8 d# Q
  50.                         delete displayObject;
    * ^" W5 L1 `0 Q+ s4 [& ]) @
  51.     }
复制代码

8 j3 B9 e% p. Z3 _" u' }
1 i. U, C5 t: N! l- z5 h( `/ j
. H3 I' q8 V  |

" l2 C, V3 E- O" M- a/ v' E
9 _, o$ e5 S% y( h0 y+ c

# h; H& y  m2 U
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

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

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建. X" u8 s9 x" H0 L- `' n * r3 u5 r5 \/ X
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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 网址 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 网址 doTeam.tech
回复 支持 反对

使用道具 举报

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

admin 来自 133#

2017-10-15 15:27:00

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(4)创建csys对象
) f1 n& z! v7 d1 H7 w' G: K' R/ o# l" p3 g2 J$ m/ e
0 M' E; p0 e  ?0 s# _" A1 v
& S4 V; l6 a' x8 F& o3 ~
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

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

admin 来自 134#

2017-10-15 15:27:52

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(5)更改CSYS对象颜色( J* c2 t9 s, |5 s- C

/ t/ w/ Y; T0 \
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 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二次开发专题模块培训报名开始啦

    我知道了