PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

PLM之家PLMHome-国产软件践行者

[二次开发源码] NX二次开放源码分享: 获取装配下所有的实体

[复制链接]

2018-7-27 10:56:17 1902 0

admin 发表于 2018-7-27 10:56:17 |阅读模式

admin 楼主

2018-7-27 10:56:17

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

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

x

0 f; Q* s& {) E6 R& y8 dNX二次开放源码分享: 获取装配下所有的实体+ W+ u) _# q6 C

1 C2 M0 D+ F: x. \* f( P8 D
3 {9 s* c- j, E; J, L
- s8 g) v1 n( gpublic class report_all_bodies_in_assembly_level4 J9 ?1 D) g9 N* I
{% f- U5 q$ J5 [! i$ }/ d2 [* ^( h
  public static void Main(string[] args)
3 e  X0 E1 v5 X7 i$ E" F9 a; a  {- |7 W0 _. g2 _3 o- @. V
    Session theSession = Session.GetSession();
! e( \5 O/ s- L( Q8 `) `    UFSession theUFSession = UFSession.GetUFSession();
4 x" \4 i+ P! a    ListingWindow theLW = theSession.ListingWindow;
2 W6 ~- Z/ u1 A" b& I& ?
+ L4 I, A& W/ y0 ~0 r7 O
4 N, R  y4 b4 Y/ k" S( v8 a
    Part theDispPart = theSession.Parts.Display;
! h$ F. e! c+ ]2 F. n" i9 O7 t    List<Body> theBodies = new List<Body>();
8 U6 k" p- Y  u3 d' J* [    Tag aTag = Tag.Null;
1 P6 g5 M7 I$ _) M  F% e    int type = 0, subtype = 0;
) K4 `" E4 b% p/ [" O) p) a8 n- S
  _+ _. i3 _- b9 p! q
    theLW.Open();
/ s. X' r9 h: i/ I    do3 l! B; Z' o4 k/ n
    {0 M: Q, N: S: Q9 i5 u
      theUFSession.Obj.CycleObjsInPart(theDispPart.Tag, UFConstants.UF_solid_type, ref aTag);
1 E: c+ k0 [, `3 }      if (aTag == Tag.Null) break;
+ d) g& b* U+ w) s      theUFSession.Obj.AskTypeAndSubtype(aTag, out type, out subtype);' u' j: K; S! `6 g! k1 _* C0 ~

1 \, |) O1 B  x: m% ~; T. f3 {

! c1 s* l% g/ q8 {9 M- p+ q6 V      if (subtype == UFConstants.UF_solid_body_subtype)- i1 @( M7 d/ w
      {
( }$ \8 U. X& k: W) C1 v" a        Body obj = (Body)theSession.GetObjectManager().GetTaggedObject(aTag);
# U# {' k: n2 `! c) [' V        if (obj is Body) theBodies.Add(obj);7 p, y2 [# _0 Z1 K8 j! {
      }
0 f0 c9 u# D/ z1 i! c+ A5 x    } while (true);
# w; W) Z% ~6 |: Z0 g0 t# U+ \3 `) [# X. O- ?/ t) I

* R% g5 v8 M9 A/ i    theLW.WriteLine("Bodies in the list: " + theBodies.Count.ToString());  o: M+ d* S0 m- ?. v/ o
    foreach( Body theBody in theBodies )
8 q( d1 D- f  ?& l& B    {& P0 U3 p4 Y# p" [& q
      if (theBody.IsOccurrence)- W7 e; L1 ^# Z; Q: J
        theLW.WriteLine(String.Format("Body: {0}, Layer: {1}, IsOccurrence: {2}, Component: {3}",3 w* m& ?- e% m: W
          theBody.ToString(), theBody.Layer, theBody.IsOccurrence, theBody.OwningComponent.DisplayName));" N4 w) l7 y1 w8 q& w
      else* W, ?5 q  y) E8 P( X. B7 d3 s  v" @
        theLW.WriteLine(String.Format("Body: {0}, Layer: {1}, IsOccurrence: {2}, Part: {3}",, a. S# N# x0 C
          theBody.ToString(), theBody.Layer, theBody.IsOccurrence, theBody.OwningPart.Leaf));: r  x4 f2 Y! @1 ]
    }
' z9 r# P0 h( n$ e$ A# V  }& `1 s. I0 X; O7 s/ i
}
! B- y: N5 \! w, }6 K) S# i% v2 v. q7 V
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了