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

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

mildcat 楼主

2013-12-2 20:43:43

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

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

x
PLM之家-NX9.0 二次开发实例视频-24 创建自定义基准CSYS3 w2 @6 R4 q# R' Y% i" f4 k6 a
. e% Y, _; ]9 J
7 P1 [1 f1 z7 y" c$ ]  L
内容:
* w% z8 U7 O& A: N创建自定义基准CSYS控件使用,熟悉使用CSYS控件,熟悉使用NX Open C++进行对象的颜色修改。
* }5 j! F) I# g- t+ j9 j' v3 ^目的:8 L' F# W) \3 K/ b
使用CSYS控件可以获得一个基准坐标,对应基准坐标需要使用坐标创建才能得到,要想对基准坐标进行颜色的修改,需要对基准的所有自对象进行修改。
9 Y# j8 ?4 T4 N! S$ r$ m! e  x0 v: |+ T8 E
! M$ y' k2 O3 W7 j
# w, |5 t: n9 I  j( F2 ?. \

24 创建自定义基准CSYS

24 创建自定义基准CSYS

  H' h9 `9 g2 [: D% }
4 O. x) y% R, q" x' \. D1 G

" ~* T& K/ C/ p, {* _0 l# S6 z5 t

2 o/ M+ d* {% p2 T
  1. try, [  u  |2 F9 b( [- w( t, Z
  2.     {
    8 k6 o: Y7 M" O- e4 k' |# {
  3.         //---- Enter your callback code here -----7 S: e4 p: P$ e8 ?. F9 s( h8 N! L0 L

  4. ! P6 \2 V  ~/ V% `" g) Y; E4 d
  5.                      NXOpen::ListingWindow  *lw = theSession->ListingWindow();/ V; Q0 _* S3 `! [5 c+ u" j
  6.                          stringstream ss;+ ?! k/ h" @8 |2 B, x) K
  7.                         NXOpen::Vector3d xdir,ydir;
    ! m, Z; ]  h' |# x1 e. w3 P
  8.                         NXOpen::Point3d originPoint;
    ) ~, \5 ?+ W% E0 D3 @
  9.                         lw->Open();4 }$ f8 U8 n* \6 D& v$ K2 j
  10.                         ss << ("创建的坐标系统信息如下:\n");8 J1 \7 Y  s# R' Q: ]. B$ ^) j/ f
  11.             std::vector<NXOpen::TaggedObject *> coordObjects = this->coord_system0->GetProperties()->GetTaggedObjectVector("SelectedObjects");2 `  X( p& k0 u8 S" t  Q
  12.                         NXOpen::CartesianCoordinateSystem *coord = dynamic_cast<NXOpen::CartesianCoordinateSystem *>(coordObjects[0]);
    % `; Q+ ]: h! t- N2 u4 W( i8 r
  13.                coord->GetDirections(&xdir,&ydir);
    " _( o* f. m9 b2 A5 b2 `
  14.                         ss<<"返回的坐标系X方向矢量是:"<<xdir.X<<"\t"<<xdir.Y<<"\t"<<xdir.Z<<endl;7 \- H5 A$ n& S& e# u
  15.                         ss<<"返回的坐标系Y方向矢量是:"<<ydir.X<<"\t"<<ydir.Y<<"\t"<<ydir.Z<<endl;6 H( p- g( s# T% c* m1 e( K
  16.                         originPoint = coord->Origin();5 g4 ~4 |6 X8 ~  U" d
  17.                         ss<<"返回的坐标系中心是:"<<originPoint.X<<"\t"<<originPoint.Y<<"\t"<<originPoint.Z<<endl;3 \4 ^+ ?0 Y$ p( r( V
  18.                         lw->WriteLine(ss.str());
    8 Q5 |3 D' b! e# \. T: C: L5 o
  19.                   // create the csys, w+ d: Y; W0 {" j  T9 I+ D
  20.                         Part *workpart(theSession->Parts()->Work());# l( ]6 ~2 K$ @
  21.                         Features::Feature *null_feature(NULL);
    - f& y$ R$ k& S5 m6 B
  22.                         Features::DatumCsysBuilder *datumCsysBuilder ;7 I) E# w) v! d9 y5 j
  23.                         datumCsysBuilder = workpart->Features()->CreateDatumCsysBuilder(null_feature);
    " K# I$ _) s+ }6 W8 T$ J
  24.                         datumCsysBuilder->SeTCsys(coord);& Z' z* i8 f) O8 o
  25.                         //set the scale factor/ [- @* _- N# ?7 h1 b8 f
  26.                         datumCsysBuilder->SetDisplayScaleFactor(this->double0->GetProperties()->GetDouble("Value"));/ V3 ^! P( V2 p$ n
  27.                         datumCsysBuilder->Commit();: c3 |% N6 E+ ~, t8 T4 l1 H* q2 v7 I
  28.                         std::vector< NXOpen::NXObject * >  GetCommittedObjects;0 `) d; O9 m1 H
  29.                         GetCommittedObjects=datumCsysBuilder->GetCommittedObjects();0 y3 J* I* V+ z9 a( ~2 @
  30.                         datumCsysBuilder->Destroy();
    6 N0 F: v+ t2 J
  31.                         // set the color' l8 u2 P! m3 e9 i* X& Q7 C
  32.                     NXOpen::DisplayModification *displayObject;
    7 D7 y0 ^8 Y' X, y- _7 _6 ?2 {
  33.                         displayObject = theSession->DisplayManager()->NewDisplayModification();
    2 ^; d! o, V- }# t1 \& A
  34.                         displayObject->SetApplyToAllFaces(true);( @; A* j4 F% s7 p+ g8 J
  35. ( x4 k8 a  I+ t5 {( z
  36.                         // get the color from the UI5 w6 G7 N& k. y0 h
  37.                         std::vector<int> color = this->colorPicker0->GetProperties()->GetIntegerVector("Value");
    8 s6 J) E, i( G7 D* x: \" H
  38.                         displayObject->SetNewColor(color[0]);
    ! d6 b1 P) k2 v3 p

  39. 9 ?/ r: l: y" E2 B/ I
  40.                         std::vector <DisplayableObject *> csysObject;
    ! l: Q; K$ h6 b! V, h2 p
  41.                         ss.clear();/ e; H5 J4 D9 ^$ e% Z; [, V
  42.                         ss.str("");
    , h1 E. ]* W6 u" b2 h- O3 Z
  43.                         ss<<"一个坐标系生成的对象有几个:"<< GetCommittedObjects.size()<<endl;
    0 Z3 S9 J* B! {4 l9 e! o3 Q- v
  44.                         lw->WriteLine(ss.str());6 {5 S7 T" B/ [) v6 y
  45.                         for(unsigned int i = 0 ; i < GetCommittedObjects.size();i ++ )
      \- w% v* o) t' q0 @( _7 r3 K2 p
  46.                         {
    , X6 W- |' X" k; Y, W1 P) H
  47.                                 csysObject.push_back(        dynamic_cast<DisplayableObject *>(GetCommittedObjects[i]));
    & _: _8 s0 R0 p' {
  48.                         }3 ~! @% ]6 O* V. c' G2 g+ E
  49.                         displayObject->Apply(csysObject);
    * ]: b' Z! E7 h, L) Q& c
  50.                         delete displayObject;
    6 V4 j6 U% r; ]4 ?) _6 M' r
  51.     }
复制代码
+ d! o7 @" t  [+ K5 R% r

. @0 G/ s& u4 u6 Z6 R# {# {1 p
8 B: P  l" F7 k) i
" b6 u" j4 r; V8 v

" ?" k) ^, K) F$ W2 y2 ~1 U+ |0 C' M5 T. n$ x$ 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创建* _: z7 ~! Z$ T3 B, d9 y8 R9 g 6 o- T$ H4 C- e
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

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对象
) t3 p/ f7 K- n" P' O: v) g1 h* ]% }) X3 N5 p
+ k% A& X: c; ~" G
. y. _8 D) d8 |8 D) t: E
上海点团信息科技有限公司,承接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对象颜色3 l  }3 M+ t2 `5 e
8 w* H' K, d3 D3 D  u7 T8 r* U
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了