青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 1992|回复: 6

[疑难] 用C#语言编写一个调用装配图各零件装配关系的程序

  [复制链接]
发表于 2014-9-25 10:31 | 显示全部楼层 |阅读模式
悬赏200G币已解决
小弟急需做一个用C#语言对ug二次开发的程序,目标是从UG数据库调出装配图各个零件的装配关系,求各位大侠帮着编个程序,谢谢了7 L! c) f/ p( i) }, q

最佳答案

查看完整内容

public class AssmTree (){ private static Session theSession; private static UI theUI; private static UFSession theUfSession; private static ListingWindow listwindow; private static Form AssmTreeForm; private static TreeView PartTree; public AssmTree() { theSession = Session.GetSession(); theUI ...
发表于 2014-9-25 10:31 | 显示全部楼层
本帖最后由 danyfer 于 2014-10-17 21:26 编辑 ) Z& E# ^. P. i0 y- N
# O. q9 K! M0 e& f  ~$ M; R
public class  AssmTree (){              private static Session theSession;
& q1 v9 F- {2 k) X1 ^1 q        private static UI theUI;. n2 j; W; d7 X* j) I
        private static UFSession theUfSession;
( p& \% E3 l8 z. c: w+ ?2 `4 C        private static ListingWindow listwindow;
. o7 |* b! B3 _; w  @! R$ a
, S; T5 a; f4 L* H( U# M        private static Form AssmTreeForm;6 O5 i+ d: A9 p3 l! U! _) T
        private static TreeView PartTree;
  x/ m  S3 p9 ^' J. R+ z
5 m8 L6 V4 C+ b& C/ h; L" s3 t        
5 D  S6 o$ o) }        public AssmTree()- v6 j+ G  c, G! o) q
        {
( e' A4 V2 f% V* K            theSession = Session.GetSession();
, q& |5 u- p+ ~2 Q4 K            theUI = UI.GetUI();
5 N' x+ i9 C+ S& c& g8 y# n, E            theUfSession = UFSession.GetUFSession();- U  p0 u' D+ i6 D4 N" ~/ X2 h0 O
            listwindow = theSession.ListingWindow;
" r( Q1 x+ H# d5 y# r. Z            listwindow.Open();           
8 B. ~( V$ n1 i9 R' K, }$ |2 B# Y4 M* K% M% i" Q" H
            AssmTreeForm = new Form();
: A4 A, E+ w: X) y3 k$ R
$ T  r. t1 I) j* H            PartTree = new TreeView();
+ o5 {1 m( u7 H, k$ e( ~            PartTree.Parent = AssmTreeForm;
1 Z6 C* S7 m3 Y" G9 s: b7 t% g, L9 ]            PartTree.Dock = DockStyle.Fill;
4 t" u0 S8 k7 K% d( _        }
/ R+ _+ R3 \; p' Rpublic void GetAssmPartTree()
2 l8 f2 c$ l; F" S! K# z1 K        {/ f% t7 ]9 D* }" X/ h/ z, e6 L
            NXOpen.Assemblies.Component rootComponent = theSession.Parts.Work.ComponentAssembly.RootComponent;
  a1 O- {1 \& u2 k- r            & \1 [' ^% a% @" \3 f  j. \
            TreeNode parentNode = new TreeNode() ;
6 Q  ^& q2 I) ?; i1 A            parentNode.Name = rootComponent.JournalIdentifier;
. @* M  t1 v8 A; ~# P7 N, o            parentNode.Text = rootComponent.DisplayName;
& y# [' F# _% W& j* S3 w: o5 U            
# F# j) Q$ U$ c2 V+ s+ ~            PartTree.Nodes.Add(parentNode);; `$ F3 G; ]4 o
            getSubComponent(rootComponent, parentNode);3 a) h1 a% k  B* F& Q$ j: L/ w
6 Q7 {- u9 e7 _* l9 S" N/ V% D1 m
            AssmTreeForm.ShowDialog();$ v- ]+ Y" u' |1 z7 c7 R
        }4 @# X) L4 H2 G7 Y/ K4 T6 i

* Q1 s$ p6 }: ?; U; c) ~        private static void getSubComponent(NXOpen.Assemblies.Component ParentComponent, TreeNode parentNode)
% D8 [8 S$ B: K        {- G  K0 ~+ e' J5 V( |
            NXOpen.Assemblies.Component[] sub_component = ParentComponent.GetChildren();# x! [+ K* H+ m3 Y6 W
            foreach (NXOpen.Assemblies.Component comp in sub_component)* a8 i) q& H! @% o4 O3 H
            {
$ `* d  I. y/ K                TreeNode subNode = new TreeNode();
/ j& y6 n: y$ d! ^7 k& o0 z/ T4 I+ m                subNode.Name = comp.JournalIdentifier;
% D+ c/ {- Q+ w                subNode.Text = comp.DisplayName;& M  [8 U" d* a& ]! E# I
                parentNode.Nodes.Add(subNode);
+ E+ n; K" ~/ N                if (comp.GetChildren().Length > 0)
& G' D/ Z% Y1 n. x: C3 Y& R% Q                {. j/ K0 c9 g& d+ S
                    getSubComponent(comp, subNode);
! _9 e( @3 i- Y2 W                }0 U- \( L& _7 C  S% A2 l) e
            }% D- A( F& i1 v& F4 ~- _8 X0 g
            ParentComponent.Blank();
7 H7 l/ m/ A  j6 O            int sub_num = sub_component.Length;
( g) b! e0 W* ?* ?        }
. i' ~( |7 S/ W0 q$ B( d}
4 Z3 k! ?$ y; r8 \; o# I; X/ V3 _3 e
回复

使用道具 举报

发表于 2014-9-26 06:05 来自手机 | 显示全部楼层
支持一下…………
回复

使用道具 举报

 楼主| 发表于 2014-9-26 09:24 | 显示全部楼层
danyfer 发表于 2014-9-26 06:05
  T! s# R! i" Z' m8 A8 r支持一下…………

% v$ ?3 w2 _; F( u7 j谢谢,能帮着编一个这样的程序吗?) {& f5 |6 G4 ?: r) ?. x
回复

使用道具 举报

 楼主| 发表于 2014-10-3 19:42 | 显示全部楼层
danyfer 发表于 2014-9-29 13:18" T4 Z( _' q, x" Y3 b2 c- E  v5 m
private static Session theSession;6 @: ~) F( e$ M$ ^5 U0 G
        private static UI theUI;
. F. f$ d- y9 e1 h& G        private static UFSessi ...
2 F& K8 h# c6 X0 T; J6 ~1 D
太感谢了,我试试/ S+ B0 R: \  X; }8 g2 Z0 A7 U

3 H, z. A5 d3 O; E4 n8 J
回复

使用道具 举报

发表于 2014-10-23 21:49 | 显示全部楼层
楼主的话真如“大音希声扫阴翳”,犹如“拨开云雾见青天”,使我等网民看到了希望,看到了未来!
回复

使用道具 举报

发表于 2018-5-9 15:34 | 显示全部楼层
5555555555556666
回复

使用道具 举报

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

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-6-27 13:08 , Processed in 0.137916 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表