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-国产软件践行者

[求助] NXOPEN 的扫略特征创建 求解

  [复制链接]

2015-10-24 08:29:14 5820 5

mstn 发表于 2015-10-22 20:26:29 |阅读模式

mstn 楼主

2015-10-22 20:26:29

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

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

x
我录制了一段创建扫略的代码 ,想改给自己用,+ W5 ~9 U" Z0 ]9 D2 L
扫略的目标是一个圆 , 一条样条曲线做引导线  8 F' r' ]6 n8 Z+ E6 m
在之前都获得了 圆和曲线的 NXObject9 Y; _, e; L5 [! @  U* k
然而在创建扫略录制的代码里都需要用sections添加对象
$ S5 J* e% L# M/ z/ c  y比如sweptBuilder1->AlignmentMethod()->SetSections(sections1);
" E5 L( f+ g/ q然而在创建对应的sections之前需要创建这个0 t6 |$ u/ A0 j
curveFeatureTangentRule1 = workPart->ScRuleFactory()->CreateRuleCurveFeatureTangent(features1, arc1, nullNXOpen_Curve, true, 0.00095, toleranceAngle);
* C& C! r3 Q. _0 N0 \
+ j0 o! y$ \( }0 {想问,有什么方法能把NXObject* 转成 对应的Feature * 或者 Arc * 或者FiTCurve * 或者Spline * 呢。
! C6 e' _" r% C' e然后再想问,有什么简单方便的方法创建扫略特征么?
5 Y( I. k' e" |+ v8 Y! _- o0 z0 W1 H3 F' A+ p( f; m
自己的函数声明是这样的。$ n4 {) S1 J1 Q. s0 J
NXOpen::NXObject * CreateSweptThrCurveAndGuideline(NXObject * associativeArc,NXOpen:oint3d helpPoint,NXObject * fitCurve) ' @# e$ D0 n( f1 M* e/ @
$ x4 `; u/ D3 f  ?4 d: k7 ]
  T8 @: p9 x) o! O9 j2 n' n9 Q3 t
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复5

mstn 发表于 2015-10-23 15:17:25

mstn 沙发

2015-10-23 15:17:25

还有一个问题就是4 O7 ^- h8 U& t& Y% j
AssociativeArc 和 Arc 可以相互转化么?
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

mstn 发表于 2015-10-23 16:48:58

mstn 板凳

2015-10-23 16:48:58

        NXOpen::Features::FitCurve *fitCurve1(dynamic_cast<NXOpen::Features::FitCurve *>(fitCurve));
; m  f" z, x& B- K        features2[0] = fitCurve1;
- B0 F4 t+ ?6 d7 h( r' N  O( X        NXOpen::Spline *spline1(dynamic_cast<NXOpen::Spline *>(fitCurve1->FindObject("CURVE 1")));% q- g6 l1 }/ ^4 P
今天发现这样是可以用的,
6 o! c& M$ q; T- W' i但是 不知道 fitcurve1 和 spline1 这两个指针的关系,
& x' A# j$ I- z6 @# p) r以及怎么通过fitcurve1 找到 spline17 P+ i+ Y. E  D$ O3 D
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

mstn 发表于 2015-10-23 16:52:42

mstn 地板

2015-10-23 16:52:42

通过fitCurve1->Tag(); spline1->Tag();
; \; I: \# I* |2 A) y9 X发现两个的tag是不一样的。% \+ z1 |4 A2 O: m# c" ]3 n
但是通过FitCurveBuilder ->commit 之后 只生成了一个NXObject 。% r& z; m& t! H, W. T7 Q" S
可以将这个NXObject 动态转换层fitCurve指针," X1 t( A, |2 T* y5 o, k% e. n
但是第二个spline 指针是真不知道怎么弄出来了。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2015-10-23 20:30:23

admin 5#

2015-10-23 20:30:23

你录制个JA 哪来这么多 , fitcurve spline 有什么关系?# J5 W  \$ N" z  X
; K; c. y0 |( b
圆弧和 曲线直接用UI 选择不久完了' c( x( }, ^* H  q0 X6 u
' D4 Z% H) v8 T% l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

mstn 发表于 2015-10-24 08:29:14

mstn 6#

2015-10-24 08:29:14

admin 发表于 2015-10-23 20:30
  ]4 W) s' k) K你录制个JA 哪来这么多 , fitcurve spline 有什么关系?
  K3 |  {, P, U" j+ P
& P  w1 Y# ^. b; q2 K圆弧和 曲线直接用UI 选择不久完了
( a3 Z& W. J. X! }$ l: _' V9 l
老师,& s+ I- ]/ `( l! u% d
Fitcurve 和 Spline 是这样的
# ]0 F+ q. Z$ g, C我选择圆做截面,拟合样条做引导线,
* Y: }* o" U( W8 A9 t1 ?& x% Q# g; d& ?) J  J! D# l
在录制JA里生成了这一的代码,这一部分是引导线的。$ z2 t+ i+ \  }
NXOpen::Features::FitCurve *fitCurve1(dynamic_cast<NXOpen::Features::FitCurve *>(workPart->Findobject("Fitcurve 6")));7 B1 T2 J5 C+ _3 d( D1 V- y4 v
NXOpen::Spline *spline1(dynamic_cast<NXOpen::Spline *>(fitCurve1->FindObject("CURVE 1")));8 |! ^9 e6 c! z
. _$ C+ R0 z8 V, x) _
在截面部分也有类似的代码
& ?2 Q# j- s0 _4 h9 jFeatures::AssociateArc * associativeArc1(dynamic_cast<Features::AssociateArc * associativeArc1>)......
1 ^9 j5 u3 R/ T; x8 M* ZArc * arc1(dynamic_cast<NXOpen::Arc *>(associativeArc1->FindObject("ARC 1")));
' r5 j3 @% x$ b$ a( F" B
( Y) a9 k. q  }7 c8 `. i在这之前
3 H( |+ F. p; ~+ b我通过AssociateArcBuilder 和 FitcurveBuilder 生成了截面和引导线,' |+ Z) C* D. J7 Q( C, O4 P
但是每个Builder只返回了一个NXObject。6 e- Y) S$ L! v5 N( M+ V" e
我想把代码里的四个 FindObject 部分通过代码自动生成- k5 q5 n$ ?: ]* h
- Z  C3 g/ w' C  M" v+ U% @8 Z4 ~3 p. I
所以想请老师指导一下
+ i" K( Z# \) ^  v2 R! l7 i
; M+ X9 v" s# I. }, U, o 怎么通过 NXObject * 指针,去获取 它指向 对象的其他 指针
. _# I, y" V( R( ^1 A" J/ V/ [* u% v2 ^
比如 5 Y& \/ m$ Z8 s7 R0 ?" n# V+ I
我有一个圆柱的NXObject * ,
4 ~4 c5 C6 v$ u  E怎么通过这个指针去找到它的 Body * 之类的指针。
0 p9 _0 F. K& g4 T$ D4 _! H+ _- s或者
; z' v$ }/ \$ Z! S! r我有一个AssociateArc的 NXObject *8 k% u) u) a* B/ q
怎么通过这个去找到它对应的Arc *。。
" ~$ k+ X- I! L8 B% v
4 v& w% R+ |7 E( b! o9 I" }, H# r1 E- |4 o

  a# ?# {6 p/ O7 O' y
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了