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 5737 5

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

mstn 楼主

2015-10-22 20:26:29

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

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

x
我录制了一段创建扫略的代码 ,想改给自己用,
% ?8 s6 v; e8 \- l  m. T2 c扫略的目标是一个圆 , 一条样条曲线做引导线  + H, y- U+ q% G( \
在之前都获得了 圆和曲线的 NXObject
1 `) v8 I' I8 d$ b5 A: o- t然而在创建扫略录制的代码里都需要用sections添加对象
! f, U, a' H$ e0 K0 y比如sweptBuilder1->AlignmentMethod()->SetSections(sections1);
3 i. g" G7 t+ l+ I3 ^" |9 [/ R; G然而在创建对应的sections之前需要创建这个
0 M6 C7 g& @2 k5 @( IcurveFeatureTangentRule1 = workPart->ScRuleFactory()->CreateRuleCurveFeatureTangent(features1, arc1, nullNXOpen_Curve, true, 0.00095, toleranceAngle);. U6 K& y) m* ^) n2 o; P  M
+ N/ X9 S' ^1 r" p/ Y: W
想问,有什么方法能把NXObject* 转成 对应的Feature * 或者 Arc * 或者FiTCurve * 或者Spline * 呢。. h+ ]6 \$ J) p) l. b5 B
然后再想问,有什么简单方便的方法创建扫略特征么?" {, e7 [; }& z- Q) Y

1 [' T& Y7 c4 R自己的函数声明是这样的。# R# k6 ]# y  X" q+ i
NXOpen::NXObject * CreateSweptThrCurveAndGuideline(NXObject * associativeArc,NXOpen:oint3d helpPoint,NXObject * fitCurve)
5 X- H1 f' B1 L& ]. q) I
& U) F, q, z% H' q( L# e) Q: L, a) r3 u- E+ S
上海点团信息科技有限公司,承接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

还有一个问题就是
9 `# b# p9 x. T5 b- e# IAssociativeArc 和 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));$ S8 u) p" q6 m9 E, k. z6 D# b) m
        features2[0] = fitCurve1;" a3 _' r$ Z( p# E& p0 O* [- h
        NXOpen::Spline *spline1(dynamic_cast<NXOpen::Spline *>(fitCurve1->FindObject("CURVE 1")));
. v/ r7 {( v1 }4 l1 p今天发现这样是可以用的,- d! l- h1 x9 ]/ G: l  C8 e5 f
但是 不知道 fitcurve1 和 spline1 这两个指针的关系,# Z5 @' F- v+ d4 j- K2 y. a
以及怎么通过fitcurve1 找到 spline1
4 r8 p' z; A8 e7 t7 n4 l9 w8 V5 q
上海点团信息科技有限公司,承接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(); ' r1 g# l9 i* y( V$ T5 l2 G
发现两个的tag是不一样的。
: V6 g6 m- L0 W: Y) L+ }但是通过FitCurveBuilder ->commit 之后 只生成了一个NXObject 。
% ^: M/ f$ f4 E9 m8 H: A可以将这个NXObject 动态转换层fitCurve指针,
7 O; I$ f* U' p+ b" V0 |6 i但是第二个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 有什么关系?
4 Y: Q# d' M5 h0 G- V4 M% a$ [- z' k, N
0 Q* n7 E% t* T8 V" t# h" ~  I圆弧和 曲线直接用UI 选择不久完了
' F) e/ J% ~8 u9 N* _
; L) `$ ]5 S/ z- j
上海点团信息科技有限公司,承接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$ Y+ v8 ]. N; v7 A
你录制个JA 哪来这么多 , fitcurve spline 有什么关系?; O% `0 \  r8 d8 ^5 v1 A: K
. ?7 E6 a; e  [( P
圆弧和 曲线直接用UI 选择不久完了

2 @9 L' ^% O; K$ B; c2 \老师,4 {  N' b" F4 |: q" Q
Fitcurve 和 Spline 是这样的" g( N: |& |! o$ m& I1 k  ]
我选择圆做截面,拟合样条做引导线,
; k& B5 c) p" x! a6 T1 T2 b
: O" ~9 Q9 K0 m+ v+ k2 _在录制JA里生成了这一的代码,这一部分是引导线的。
. n; k& }+ U9 ^6 p2 k+ ENXOpen::Features::FitCurve *fitCurve1(dynamic_cast<NXOpen::Features::FitCurve *>(workPart->Findobject("Fitcurve 6")));
7 \4 _* W9 z+ p/ ?7 f8 |NXOpen::Spline *spline1(dynamic_cast<NXOpen::Spline *>(fitCurve1->FindObject("CURVE 1")));, o( i) r/ K' j# Q% C

- V: b0 h* R2 B9 \4 z1 k在截面部分也有类似的代码4 L8 y9 l& y  O# G" Q6 e
Features::AssociateArc * associativeArc1(dynamic_cast<Features::AssociateArc * associativeArc1>)......# M# K# o0 c3 ?* y4 ?1 p0 A
Arc * arc1(dynamic_cast<NXOpen::Arc *>(associativeArc1->FindObject("ARC 1")));
7 O6 V8 `% o8 E+ l( B. M# `
" j' ?) z2 ^/ e$ A' d4 V在这之前
1 ~, i% L; a  Z# \) x$ {5 R我通过AssociateArcBuilder 和 FitcurveBuilder 生成了截面和引导线,
- L9 o8 v# G( f4 Y/ _* D8 l但是每个Builder只返回了一个NXObject。
. Z8 ?; F! Z, O我想把代码里的四个 FindObject 部分通过代码自动生成
1 S1 y# ^" p& ~; {5 v
8 @* c" }8 Y) A& E2 V% i' V7 U所以想请老师指导一下
* ~9 z' @& N  I; R% K, J% S( N& N) U: W  O: B) D% X: g6 U2 m
怎么通过 NXObject * 指针,去获取 它指向 对象的其他 指针
6 ?' _: O( G) l
, J% ?! k1 R% Z! j( l比如
- ~+ B, B1 y7 \/ N0 {- m9 i( i1 d我有一个圆柱的NXObject * ,) o5 l7 l+ a$ t# |; Y9 E
怎么通过这个指针去找到它的 Body * 之类的指针。& M8 [- k" o% f8 w& C2 U& t) a
或者
- {! f4 G0 Z$ s  x2 c& i" _! A2 m我有一个AssociateArc的 NXObject *5 A9 X- S1 i8 N$ {% C
怎么通过这个去找到它对应的Arc *。。6 @2 c2 u- D% k3 ?
- {. t+ _  f3 ?) ?7 K! U3 y# m3 q
* w. Y0 F; t  P4 i* l7 T3 S
4 o/ ]+ p' I2 {% C% t4 g5 w2 l
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了