查看: 42940|回复: 124

[原创视频] PLM之家-NX9.0 二次开发实例视频32 NXOpen C++创建拉伸特征

 火... [复制链接]

4

主题

3

回帖

46

积分

管理员

积分
46
发表于 2014-2-27 21:05:40 | 显示全部楼层 |阅读模式

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

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

×
PLM之家-NX9.0 二次开发实例视频32 NXOpen C++创建拉伸特征

NXOpen C++创建拉伸特征

NXOpen C++创建拉伸特征
% }8 v# b3 `: z' G  ~& J9 q
内容:! Q6 ]/ T# d, Y
通过草图创建拉伸操作
: f& R2 B$ f0 L) _9 ~6 c1 C. q目的:
. [3 Z  x" n+ N在NX中,使用NXOpen C++可以很方便的进行JA的录制,草图的拉伸可以通过JA生成代码,此处拉伸草图的方向为草图的法相方向。需要用户输入拉伸的起始值和结束值。草图创建过程中主要是对section进行定义,在定义的时候需要考虑到选择意图selectionRule的定义。
# M$ B2 N: C4 R5 `  M9 A
5 D; n% J, `$ ]' {8 G
  M6 R" j9 ?5 @  P+ ]5 ^; \
关键代码分享:1 N; O2 d! Q& r7 [2 ?1 ~7 ^( p- C
  1. : P9 g( E5 V# h3 t( s& w
  2. <font size="5">, _( p6 P- M* Q8 z* Y; d
  3. </font>
    ! A& {* {  z3 R. J- X7 b
  4. <font size="5">void lesson32_createExtrude::createExtrude(SkeTCh *sketch)# t2 w$ Y* F0 [# D4 c! Z
  5. {4 T; C; Z6 O. X  t# H3 Z6 U0 H& ~

  6. 0 s* r9 h8 s; ~4 k" ^4 [
  7.         Features::Feature *nullFeatures_Feature(NULL);3 u8 `/ o% i7 _. c4 p# D
  8.         Features::ExtrudeBuilder *extrudeBuilder1;
    + y' ]4 P" v" D
  9.     extrudeBuilder1 = workPart->Features()->CreateExtrudeBuilder(nullFeatures_Feature);  g1 n1 i1 v  y
  10.         // set parameters: K& O$ U" C' O& |2 i( N

  11. ( A9 M7 T5 a6 e3 I
  12.         // create section Start1 ?& v+ N- m0 r8 l
  13.         Section * section;) d3 K; `$ W  D) I1 u* {8 I& w& L
  14.         section = workPart->Sections()->CreateSection();
    ; i5 n9 P) v1 L9 U. D5 o
  15.         extrudeBuilder1->SetSection(section);: Q  u* H8 F5 M# S4 }1 V

  16. : j# Y/ w1 U, g
  17.         CurveFeatureRule *curveFeatureRule1;
    4 X, N) m7 q9 B/ B% `8 s6 e
  18.         std::vector<Features::Feature *> Rulefeatures(1);
    ! A: ~6 }+ d3 B3 S4 t0 F
  19.         Rulefeatures[0] = sketch->Feature();) `4 q: C/ N8 u6 ]8 a- _1 }
  20.         curveFeatureRule1 = workPart->ScRuleFactory()->CreateRuleCurveFeature(Rulefeatures);
      a! f, P! Z$ O" x7 d% f9 g
  21. / b4 t" z( t0 N$ ]% o% u7 K+ |5 M( A& @
  22.     std::vector<SelectionIntentRule *> rules(1);0 `1 W. M- ~' x8 W7 i9 T! C7 ]8 V
  23.     rules[0] = curveFeatureRule1;
    3 O: j7 j9 |" S
  24. / Y; p: r, u( e+ S" p
  25.     NXObject *nullNXObject(NULL);; C. D) \2 s' P9 B3 k3 r

  26. : ~! \- q5 c' v: x! u
  27.     Point3d helpPoint1(0, 0, 0);
    5 G& f/ C6 w6 p; L- Z  i1 q1 T5 I$ T
  28. 5 X- f  t7 Q4 F0 E2 v' k7 E
  29.     section->AddToSection(rules, nullNXObject, nullNXObject, nullNXObject, helpPoint1, Section::ModeCreate, false);( b/ H1 q+ n" i  {4 R- p
  30.         9 Z( p1 O, y7 g/ \7 v8 S% w
  31.      ( [# B! u9 ~* R. A/ h4 c8 i% u0 p
  32.         // create section End4 R1 j8 R% m* V9 n5 Y
  33. , [$ Y; q; S5 u  k
  34.         Direction *direction;! J, A/ s' A" k
  35.         direction = workPart->Directions()->CreateDirection(sketch,SenseForward,SmartObject::UpdateOptionWithinModeling);
    3 J2 y+ C1 @- I- Q
  36.         extrudeBuilder1->SetDirection(direction);
    ) z" Q/ y' F7 H$ ]/ a# v
  37. . U+ A9 m( h: i4 ~! m( E+ m
  38. 9 i: ]1 ]: r/ |4 y8 ]
  39.         // get the UI value# m5 Q( @7 N( q- C1 |) Z
  40. ) Q  M, J7 j2 ^+ C& n0 I
  41.         double startValue = this->expExtrudeStart->GetProperties()->GetDouble("Value");
    + D& U2 \' w2 W& Q0 k% W
  42.         double endValue = this->expExtrudeEnd->GetProperties()->GetDouble("Value");6 L  H  |4 [; A- }8 h  |. T! |" u
  43.          stringstream s_startValue,s_endValue;; {2 @" x  h* J
  44.          s_startValue <<startValue;7 a, `5 J; O- A  G9 A% X
  45.          s_endValue <<endValue;
    ! c8 q7 L9 `6 ~% f  p2 a
  46.         : p( W7 ]/ @, Z- N/ L0 @9 ]% K
  47.          extrudeBuilder1->Limits()->StartExtend()->SetValue(s_startValue.str());- K, o4 t9 ?- b1 L9 t' n
  48.         extrudeBuilder1->Limits()->EndExtend()->SetValue(s_endValue.str());
    % I1 u1 L) B$ b' d/ F+ `$ j
  49. 8 V% G' Z4 M+ z1 n  Q2 e
  50.         // commit feature
    , j+ [; b1 o2 \4 l% I) i5 S
  51.         extrudeBuilder1->CommitFeature();
    ) N4 j' B9 ~& l5 e& B7 n; U
  52.         extrudeBuilder1->Destroy();8 X6 ^' N: p& u) K* o% z
  53.         
    5 |" a  |; B; Y
  54. }</font>
复制代码

& n1 l7 C5 u5 C5 m, Z4 V( `
3 }6 L0 T2 O* x' i: {2 Z7 j
4 O8 @4 c* T/ W( @2 q( t4 ?
) }6 o8 G% |, f, Y* B; z+ W0 n

3 |) t/ f3 U# X; _
3 u9 O/ G/ Q3 @

9 I8 k: a; m8 I! x( y0 J+ ]3 z6 O
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

4

主题

3

回帖

46

积分

管理员

积分
46
 楼主| 发表于 2014-2-27 21:05:54 | 显示全部楼层
PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(1)项目创建 W! m; C, e4 _. N2 S- l " [0 s R0 M+ B& w6 c$ L - b) x# {$ r$ t2 H* @; T. t4 ?. n D " }' K7 @5 w7 c1 } PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(2)创建过程分析 2 l3 X& t7 O6 a+ E1 N5 m' j ) y) P" O+ B* X$ G8 r+ ]5 o t# Q1 V + V% M' `+ F. ^6 |1 ~' s" S+ ^' f. X 1 A5 a0 [6 B& n+ {9 g4 C PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(3)拉伸创建完成 c5 N4 \# i7 @+ S5 K / d7 _4 ], s: [% f2 Z9 }- n& ? H # z9 N4 p; |0 {5 |% @5 I4 z U- O9 V : k4 x; x/ @2 r m7 w: Y" Z 5 k* M1 H4 J. } & D1 B d: H" }9 ?/ n2 M % N5 d3 F% P; m
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

4

主题

3

回帖

46

积分

管理员

积分
46
 楼主| 发表于 2014-4-12 13:14:50 | 显示全部楼层
已经更新了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

5

主题

34

回帖

177

积分

注册会员

积分
177
发表于 2014-4-21 11:06:31 | 显示全部楼层
voila ,so beautiful
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

64

回帖

358

积分

中级会员

积分
358
发表于 2014-4-23 19:01:19 | 显示全部楼层
好视频,顶起来
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

2

主题

204

回帖

2322

积分

PLM之家NX VIP

积分
2322
发表于 2014-4-25 09:22:58 | 显示全部楼层
学习学习学习
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

2

主题

11

回帖

78

积分

注册会员

积分
78
发表于 2014-4-27 15:18:19 | 显示全部楼层
怎么没B语言呀。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

34

回帖

187

积分

注册会员

积分
187
发表于 2014-5-4 19:59:01 | 显示全部楼层
正在学习,学习。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部