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

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS; v- ]$ H* \! p8 `! u: ?

8 \/ M' d' U4 P: M

9 M' c/ D6 a) v. `) x: \内容:6 T+ F0 ^4 N  b
创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
6 f% w  V2 h5 @目的:
# X: w- _+ f" Z9 v3 b+ k使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。. [, S* z* I2 s
: m& i5 Z* A5 S* D0 D

. w' n0 V- Y$ n2 ?. ~" r% }

. a* I+ z( q5 s3 ?9 n1 D

24 创建自定义基准CSYS

24 创建自定义基准CSYS

( V- G6 o5 E. I7 a% I# l0 ]( a

9 Y( x. A, C: L0 V2 w7 W8 _- @' H
- \+ y4 G  u2 l
  1. try
    $ t4 V8 Z9 v/ E8 @/ y6 n+ v
  2.     {; o7 ^+ B7 y% Y$ L  Y
  3.         //---- Enter your callback code here -----
    / l# P+ o  _  u  R4 Y. e

  4. $ N& T+ u. i; C/ _7 p# n+ X
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();8 g( x8 _& S9 K( h: D7 J
  6.                          stringstream ss;' N2 u, U' c1 M. Z  E
  7.                         NXOpen::Vector3d xdir,ydir;$ T6 j* X3 l8 O$ s- u
  8.                         NXOpen::Point3d originPoint;' \3 [% C. }4 b9 n
  9.                         lw->Open();1 ?. t1 @' o2 y: x* D. p! I7 q
  10.                         ss << ("创建的坐标系统信息如下:\n");( p6 `2 M; t( Z+ ?' g" Y
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
    0 l* Y! y7 S) S4 w: `- H) B
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);+ b5 B( b& i, L
  13.                coord->GetDirections(&xdir,&ydir);
    2 R; y* Z/ q2 D% U, A" l
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;3 f8 H* M- Y$ z1 P% l6 |9 ^
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;
    + k' L" {, f. c2 E# Q* K( g
  16.                         originPoint = coord->Origin();
    * u# A4 [. o* o0 S3 A9 s' K, c
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;( L$ S. ?; u6 M2 t: M
  18.                         lw->WriteLine(ss.str());1 _2 O9 x8 m3 M! u- Q4 V  t$ a1 u8 ~
  19.                   // create the csys
    . p8 K* C% [" `  ^( e7 F
  20.                         Part *workpart(theSession->Parts()->Work());
    ; g$ E( s8 ?0 J' _0 ?. ~
  21.                         Features::Feature *null_feature(NULL);) l' D: J4 ~0 s
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;
    # W, g; x& s( H8 \" j% _
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);4 i  t: J* S* o& f+ \& z
  24.                         datumCsysBuilder->SeTCsys(coord);
    5 z9 C1 I9 j8 d" t' ]
  25.                         //set the scale factor! L2 X& W. }( D! {5 V5 y
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));! {/ k4 l# i9 p3 @
  27.                         datumCsysBuilder->Commit();
    5 b1 V8 l5 B0 D% S- M
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;
    " ~7 @3 X: k0 B6 ~4 k; w1 D& c. K% P
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();2 b& a+ M% X, G8 P, {. X# L
  30.                         datumCsysBuilder->Destroy();
      c' v; B5 }( n1 ^! b1 X. _
  31.                         // set the color
    $ D+ D8 P# F' U. ^$ P7 x
  32.                     NXOpen::DisplayModification *displayObject;
    & |6 D: ^7 C- N' {! s
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();# q+ L( F1 U4 y- a
  34.                         displayObject->SetApplyToAllFaces(true);0 H" A( I2 m9 t- x7 j' P. g$ U

  35. # ?+ y! I3 g  ^
  36.                         // get the color from the UI
      `& v/ f1 ~+ X: G/ g  t
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");9 |, L; y" J' e8 N8 n3 H
  38.                         displayObject->SetNewColor(color[0]);& c! M8 a4 V, C" J. [! I# I
  39. 7 T  {! C3 F' j/ E  _' g
  40.                         std::vector <DisplayableObject *> csysObject;: i9 a' a% v+ ~# W' O& A3 ~
  41.                         ss.clear();: ?- s8 X; V; U# ?0 K+ a+ o8 K5 l
  42.                         ss.str("");3 I9 X/ r% e4 v* `
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;2 D6 T4 k& x9 U& z' P2 n+ `
  44.                         lw->WriteLine(ss.str());
    ' `' J; [5 s  x- X. r" {9 H$ b4 Y
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )
    $ W/ L% {( W5 C5 B7 [$ U
  46.                         {
      k- \- g; D& R; c7 e6 n
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));
    # t6 o% c/ m) K4 t+ U  y+ X- c$ V
  48.                         }
    . M) q) Q5 r; Q4 j& Z, k  [
  49.                         displayObject->Apply(csysObject);
    # ], t; ^5 T, X7 a* E4 q9 g
  50.                         delete displayObject;, w* P$ D" ]5 F6 y# S9 W
  51.     }
复制代码
6 b# p% C4 f, {- k

4 N% v( j, _5 G, D* M! I' {! ]& m
+ v. `* G: V2 ?7 a& w
" f7 ?+ o+ V! i3 J: V! d# |9 U0 g
! R& n& V& }  v. P8 ?
6 k2 O) B- Q) l* y! t/ `
该会员没有填写今日想说内容.
回复

使用道具 举报

全部回复127

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

mildcat 来自 2#

2013-12-2 20:43:58

PLM之家-NX9.0二次开发实例 24 创建自定义基准CSYS控件使用(1)block UI创建! P: v+ f W/ f' c2 R* m+ X / a; ~+ d. M5 w: b7 {. \
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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对象
$ k# w' S- L3 }" J+ G2 ~2 B& [  S# x

; n, \4 G+ Y3 E% v% k& D. \. y, l& h: P- E( m. {: z
上海点团信息科技有限公司,承接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对象颜色
; \( V( t/ H6 n1 `# `' g* u5 V. q% O
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了