PLM之家PLMHome

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

2014-5-4 19:59:01 23138 124

  [复制链接]
admin 发表于 2014-2-27 21:05:40 |阅读模式

admin 楼主

2014-2-27 21:05:40

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

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

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

NXOpen C++创建拉伸特征

NXOpen C++创建拉伸特征

* p" }; g! f' G- S% W3 L& w
内容:
% S' v2 @# L! O. y6 c通过草图创建拉伸操作7 c* q" E# J. t- k4 J, Q) s* F; F
目的:% V% r2 F  ]0 e6 J% f0 z
在NX中,使用NXOpen C++可以很方便的进行JA的录制,草图的拉伸可以通过JA生成代码,此处拉伸草图的方向为草图的法相方向。需要用户输入拉伸的起始值和结束值。草图创建过程中主要是对section进行定义,在定义的时候需要考虑到选择意图selectionRule的定义。7 g. X+ t0 E! k$ C& x- B) j
' l$ Y+ Q) I9 C- x

5 L5 w1 j3 D9 }关键代码分享:6 z  V! p3 d; {8 ^' u$ e

  1. 3 p0 @( I, z. c* m! [/ f4 y
  2. <font size="5">2 e2 }' B+ z9 _2 B
  3. </font>
    3 b% M7 }" [3 p7 N% y- M* B5 T5 u% n  T
  4. <font size="5">void lesson32_createExtrude::createExtrude(SkeTCh *sketch)# d$ o1 f5 @& E/ d
  5. {3 D1 Q) @6 {/ h% g4 j: G

  6. & y( C, q& Y8 V6 r# r
  7.         Features::Feature *nullFeatures_Feature(NULL);
    * H  g6 a% G, S0 L5 @6 }
  8.         Features::ExtrudeBuilder *extrudeBuilder1;2 D+ H7 N( J. R3 d2 Z5 B
  9.     extrudeBuilder1 = workPart->Features()->CreateExtrudeBuilder(nullFeatures_Feature);% R+ B5 m, @5 O) z8 r+ V$ V
  10.         // set parameters
    % W1 x4 E, P5 M! {5 [3 I1 O8 p
  11. + {' U# E7 d0 c. |' J
  12.         // create section Start
    , K# g  S. a( @6 Q: z
  13.         Section * section;0 a- @" A. X. q  Y0 r
  14.         section = workPart->Sections()->CreateSection();
    2 b% H( {5 f, S
  15.         extrudeBuilder1->SetSection(section);8 r4 S: Q! R, m" ~& L
  16. 3 C6 X2 K. S* M6 ~
  17.         CurveFeatureRule *curveFeatureRule1;, a$ z7 y; `. }$ a& Z2 y- B
  18.         std::vector<Features::Feature *> Rulefeatures(1);" L9 j0 e# D. S+ q) }* f
  19.         Rulefeatures[0] = sketch->Feature();- F1 f3 B. A' }9 q# D  |2 p" u
  20.         curveFeatureRule1 = workPart->ScRuleFactory()->CreateRuleCurveFeature(Rulefeatures);2 q9 u8 i4 Q2 z8 L& T  L0 n* i
  21. 9 f+ D7 o6 ~$ D4 T2 ?3 l1 s
  22.     std::vector<SelectionIntentRule *> rules(1);
    % {' j0 r8 U$ i6 F" L
  23.     rules[0] = curveFeatureRule1;7 {$ e4 n/ A0 N% u8 K; u' L
  24. ) N4 I9 K7 H" A
  25.     NXObject *nullNXObject(NULL);( T5 b' z0 I* ?" t$ a* t
  26. ; b/ t  J$ Z# D) d, i0 b
  27.     Point3d helpPoint1(0, 0, 0);# `# T  g6 W9 Z* H
  28. , y+ ~# }' P1 p
  29.     section->AddToSection(rules, nullNXObject, nullNXObject, nullNXObject, helpPoint1, Section::ModeCreate, false);
    4 U' k1 D8 S# ^- K6 U* M0 ?. C, r% r
  30.         
    8 i; k- R5 F# W+ S1 n
  31.      1 l$ c/ }# J* C  c
  32.         // create section End$ ^4 f, K8 A7 U

  33. / R2 J# f% i" B9 K. v9 `
  34.         Direction *direction;* ^* R$ D* w) v7 P; @
  35.         direction = workPart->Directions()->CreateDirection(sketch,SenseForward,SmartObject::UpdateOptionWithinModeling);
    # s: p# T) q- r9 S1 c+ a! q. |& x
  36.         extrudeBuilder1->SetDirection(direction);. A! L% V. t6 Q( v, V' e) h+ m* Z
  37. # q/ ~& x9 q1 }7 q
  38. . a8 _8 ]3 ~+ X$ Z
  39.         // get the UI value- S+ P: a. g$ t6 Q) ]: d  z

  40. 3 d5 C; |% n& B" Z( m: V
  41.         double startValue = this->expExtrudeStart->GetProperties()->GetDouble("Value");
    $ [0 j) f% R( d
  42.         double endValue = this->expExtrudeEnd->GetProperties()->GetDouble("Value");, p# @4 h& s1 n
  43.          stringstream s_startValue,s_endValue;7 n2 `! e7 a+ n
  44.          s_startValue <<startValue;
    $ |0 z5 P5 q7 s+ N/ N
  45.          s_endValue <<endValue;/ T6 l: G6 B- L
  46.         
    0 [  q! S( l6 ^# m. y
  47.          extrudeBuilder1->Limits()->StartExtend()->SetValue(s_startValue.str());; J9 s7 C0 r  A6 |. d' S
  48.         extrudeBuilder1->Limits()->EndExtend()->SetValue(s_endValue.str());
    3 B3 a8 S( `% G! Y6 y; n9 Z+ f

  49. " k& x. e" n4 ]% U% @$ O8 L' s9 r
  50.         // commit feature
    ! Y9 p8 u. M' T& A3 `
  51.         extrudeBuilder1->CommitFeature();7 [$ t0 G( U0 P# B6 |
  52.         extrudeBuilder1->Destroy();
    4 _2 R; e. N6 F# t; T
  53.         
    & p+ a& `" W% y; V3 j" ?! c, A' D
  54. }</font>
复制代码
# l; s9 g1 z; M8 b' m
1 Y7 \( P' ]; Q. t$ G$ R

. `+ f) [, G0 R) X1 M
+ Y! C% ^/ S" Z1 p  J& S" }

4 x; H) S, J) l
! X8 {& I, \. B9 h' d! P/ T% O

% m% K1 N, `, v6 l: {! I2 j) u. {* o" I0 t4 \" ~/ W7 ?9 t
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复124

admin 发表于 2014-2-27 21:05:54

admin 沙发

2014-2-27 21:05:54

PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(1)项目创建 ( e6 q9 b( g, _. h . h$ w: H- h& g$ Y( N! z& ~ G& ?8 T* Y* h2 h# v9 M0 | $ P) q7 X) z5 ^! Q1 h& ~+ O6 S: nPLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(2)创建过程分析 " t0 Q6 p: l/ F3 f 4 R I- ~* C8 Y9 |5 u 7 E7 _* B+ C/ r; R7 O; \- Y8 o2 ~3 ]4 D4 } PLM之家NX9.0二次开发视频教程 32 NXOpen C++创建拉伸草图(3)拉伸创建完成0 U, p1 P! A% ]& k # D5 o$ f) Y* ]; E ' ?5 a3 b$ s. U- Y N0 p) F : X6 D% i2 @1 \" B) k8 Z+ K, M& z 4 \& M$ q( @5 e& j. A0 \2 _. h8 l1 k; a 7 M- L: R6 h7 [. Z9 G- w
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-4-12 13:14:50

admin 地板

2014-4-12 13:14:50

已经更新了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

☠寶∞爺☠ 发表于 2014-4-21 11:06:31

☠寶∞爺☠ 6#

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.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

东沟恋君 发表于 2014-4-23 19:01:19

东沟恋君 7#

2014-4-23 19:01:19

好视频,顶起来
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

C_X_J 发表于 2014-4-25 09:22:58

C_X_J 8#

2014-4-25 09:22:58

学习学习学习
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

七星笑侠/mg 发表于 2014-4-27 15:18:19

七星笑侠/mg 9#

2014-4-27 15:18:19

怎么没B语言呀。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

★害虫★ 发表于 2014-5-4 19:59:01

★害虫★ 10#

2014-5-4 19:59:01

正在学习,学习。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

:
管理员
:
xduniverse@qq.com
:
点击这里给我发消息
:
http://www.plmhome.com
:
原西门子NX高级教务员,10多年NX培训,开发咨询,Teamcenter培训实施等

主题2391

帖子3639

积分68413

图文推荐

  • 官方文档,NX12 使用 Python进行二次开发相

    官方文档,NX12 使用 Python进行二次开发相关配

  • Tecnomatix 二次开发入门教程 4 设置图标

    Tecnomatix 二次开发入门教程 4 设置图标效果如

  • Tecnomatix 二次开发入门教程 3 第一个hell

    Tecnomatix 二次开发入门教程 3 第一个hello plm

  • Tecnomatix 二次开发入门教程 6 实现打开PL

    Tecnomatix 二次开发入门教程 6 实现打开PLM之家

  • 制图的属性同步时出现错误提示

    您好版主,近期更新了软件版本后属性同步出现一个

  • 关闭

    站长推荐上一条 /1 下一条

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    PLM之家经典培训教程--强烈推荐

    PLM之家(plmhome.com)提供专业的实施开发培训

    NX二次开发基础培训 | 已 80 学员 参加

    CAA二次开发 | 值的一试

    Teamcenter用户基础入门 | 虚拟机赠送

    限时优惠,原价3000,现价888

    UG 二次开发CAM加工开发培训火热报名

    哥已知晓