查看: 46230|回复: 124

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

 火... [复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

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

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

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

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

NXOpen C++创建拉伸特征

NXOpen C++创建拉伸特征
0 y" j4 j6 e7 A* X6 B; Y$ d
内容:9 q8 }* |1 J+ j+ t
通过草图创建拉伸操作
6 K# h; t0 m  W- U. ~1 ^8 B, P目的:
/ k* a# T% e2 D. M在NX中,使用NXOpen C++可以很方便的进行JA的录制,草图的拉伸可以通过JA生成代码,此处拉伸草图的方向为草图的法相方向。需要用户输入拉伸的起始值和结束值。草图创建过程中主要是对section进行定义,在定义的时候需要考虑到选择意图selectionRule的定义。4 U$ ]' y, f( r0 |( T$ F# Q
1 w! ^. {6 F' u9 {' v4 a0 k8 p
. Z; J' k( a# x& s9 V8 m7 ~2 p) c
关键代码分享:' V; s; Z: _# _5 I1 l

  1. $ k6 R3 d1 q; o6 H' s) k2 G6 ?
  2. <font size="5">! b( X4 t6 T& ^% x
  3. </font>
    " \+ H! S8 A! L# `( i9 a
  4. <font size="5">void lesson32_createExtrude::createExtrude(SkeTCh *sketch): o4 u! B) ?3 N. y  k4 u0 F! ^' I
  5. {
    " v2 y0 ^/ v, [7 T

  6. 2 Z9 c# E1 W8 o5 k
  7.         Features::Feature *nullFeatures_Feature(NULL);
    $ M  q( g9 F% D; R+ f
  8.         Features::ExtrudeBuilder *extrudeBuilder1;
    + V% F: e% C& A* Y( R: T
  9.     extrudeBuilder1 = workPart->Features()->CreateExtrudeBuilder(nullFeatures_Feature);8 N, ~/ c+ b( C5 b7 \: o
  10.         // set parameters
    % X  ^9 X( ?7 C% N9 e" H
  11. 1 e* R6 W) n8 S9 e8 `! E/ [
  12.         // create section Start
    6 ?) A$ a: c2 Y5 |- Q
  13.         Section * section;6 d+ y1 H' g+ O+ `
  14.         section = workPart->Sections()->CreateSection();' o9 j+ K, Z5 l- u6 g; R6 o9 [
  15.         extrudeBuilder1->SetSection(section);6 n# @' X1 I; U5 i9 {

  16. 7 Q, e& S: j3 ?) V4 w2 {0 p
  17.         CurveFeatureRule *curveFeatureRule1;7 i% v3 I! `0 I2 z. `3 R6 f( r5 O: W0 l
  18.         std::vector<Features::Feature *> Rulefeatures(1);. l! `2 n( Q) h* N* {& Y
  19.         Rulefeatures[0] = sketch->Feature();4 Z8 c! @+ @. i$ T$ a9 `  t
  20.         curveFeatureRule1 = workPart->ScRuleFactory()->CreateRuleCurveFeature(Rulefeatures);
    9 V, i) c; [4 s+ R; ?( N7 c  j5 E
  21. 6 M9 s* H6 J: b8 w% `* q! c5 F
  22.     std::vector<SelectionIntentRule *> rules(1);
    $ q; R: }, a- t& U: u& U7 t
  23.     rules[0] = curveFeatureRule1;
    6 u! Q3 X- E+ T, s

  24. 2 f; l6 Q* D9 Y, r0 E$ b
  25.     NXObject *nullNXObject(NULL);
    - R( K! j4 y( j3 `7 n

  26.   z% i! }1 ?- e3 K
  27.     Point3d helpPoint1(0, 0, 0);
    9 g" v# v. o" ~3 l
  28. ( G4 a9 [. F( R
  29.     section->AddToSection(rules, nullNXObject, nullNXObject, nullNXObject, helpPoint1, Section::ModeCreate, false);$ v, G. G2 a& g: ^
  30.         ( H$ x% B0 l2 n( x! o( Q1 `% }
  31.      " c- h; |) W7 Q! d" E5 y
  32.         // create section End/ c5 b0 W& a/ x

  33. 5 q9 [! J. _$ p- E6 J2 d
  34.         Direction *direction;
    $ Y  u/ c' U/ L
  35.         direction = workPart->Directions()->CreateDirection(sketch,SenseForward,SmartObject::UpdateOptionWithinModeling);
    6 G4 i" A# F) j  K
  36.         extrudeBuilder1->SetDirection(direction);
    2 G4 Y" t/ H8 Y- w, @7 H: x" n% ~
  37. " q% x4 c. L7 L' {0 n* r' g" S

  38. : z* M0 ~! M1 a2 }+ Q/ P8 @/ X
  39.         // get the UI value
    ) U+ n# e" v+ g8 o& K3 x( D/ W
  40. # b  a$ X( a( Y0 g! r
  41.         double startValue = this->expExtrudeStart->GetProperties()->GetDouble("Value");% ?/ r) ~9 k5 r: n2 @8 g' z
  42.         double endValue = this->expExtrudeEnd->GetProperties()->GetDouble("Value");: V8 ~3 G( j3 `2 }
  43.          stringstream s_startValue,s_endValue;: W4 b  s# f" Y: ^
  44.          s_startValue <<startValue;
    3 n5 w6 Z  a1 m9 g2 r. D& n; y
  45.          s_endValue <<endValue;
    . E) B4 K  A' ^/ f& Z
  46.         
      b! n3 T+ }/ p4 s- J6 x0 O! _
  47.          extrudeBuilder1->Limits()->StartExtend()->SetValue(s_startValue.str());
    6 _% p+ _8 `) ^+ V1 T; c" Z1 e
  48.         extrudeBuilder1->Limits()->EndExtend()->SetValue(s_endValue.str());
    * J; x* R$ f6 L' b  @2 P# y, }4 T- ]

  49. 8 A) C) A" g$ N4 z! o$ Q
  50.         // commit feature6 P, p% t) E3 ?
  51.         extrudeBuilder1->CommitFeature();6 v4 `6 T* E# x0 B; x# c
  52.         extrudeBuilder1->Destroy();; D1 P5 J2 A2 p9 k
  53.         1 ^+ e9 a$ t: p! v: n1 i
  54. }</font>
复制代码

( a$ ^( E& w) N; U7 m' Y+ V( R" _2 o$ e9 B
' O' S$ M4 _9 f0 q, x3 u: S( K: G5 H
6 \: n# X! d. U# w" H0 @/ ^
# Z# y6 c$ l( |+ `: r6 a1 S$ U5 ?: o

( {. [. [' _. i  F9 u- F  |! t, y# |/ v! s" T5 m" l" S; o

% R% D# Y6 G# z1 y" `, B
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
 楼主| 发表于 2014-2-27 21:05:54 | 显示全部楼层
PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(1)项目创建5 ^! y9 Y+ c+ O, j7 v; E; i: M+ x * D8 f1 ^0 t) x1 _9 d. V ' }& M% ~% F7 Y# v7 M* B* l . i8 ~4 `$ D. t: h PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(2)创建过程分析 ; ], c3 a+ f6 P+ C1 Z 3 F+ T, w) c, q" U& O0 \9 h/ g ' L! B$ C* J! }# W5 S. k 9 N* I0 F1 n/ E9 F; o: FPLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(3)拉伸创建完成% E+ _/ b' V- {$ C# `) U+ r, l % u; d: Y8 |. t0 O - e+ w( `5 |1 R, l3 ~$ V$ P v! y8 r: P) g0 [3 Z" b) V - y$ W; h6 S) p% d( m0 S1 a6 Q" e; L( i8 E" m # S3 q& k( w$ T' `4 [- N# W
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
 楼主| 发表于 2014-4-12 13:14:50 | 显示全部楼层
已经更新了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 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客服返回顶部