Solidworks参数化设计 5.删除装配体模型中选择得一类零件

1.俺在设计过程中需要在装配体中删除大量相同的标准件,一个一个的去删除太麻烦,因此借用SW API进行简单的代码编写。

  private void Button_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                SldWorks swApp = new SldWorks();//连接SW
                ModelDoc2 swModel = (ModelDoc2)swApp.ActiveDoc;
                SelectionMgr swSelMgr = default(SelectionMgr);//选择                                                         
                Component2 swRootComp = default(Component2);//件
                swSelMgr = (SelectionMgr)swModel.SelectionManager;
                swRootComp = (Component2)swSelMgr.GetSelectedObject6(1, -1);
                if (swRootComp == null)
                {
                    MessageBox.Show("请选择零件");
                }
                else
                {

                    string s = swRootComp.GetPathName();//获取选择零件的路径,根据路径删除所有相同路径的零件

                    ConfigurationManager swConfMgr = default(ConfigurationManager);
                    Configuration swConf = default(Configuration);
                    swConfMgr = (ConfigurationManager)swModel.ConfigurationManager;
                    swConf = (Configuration)swConfMgr.ActiveConfiguration;
                    swRootComp = (Component2)swConf.GetRootComponent3(true);
                    object[] vChildComp = null;

                    vChildComp = (object[])swRootComp.GetChildren();
                    AssemblyDoc assemblyDoc = (AssemblyDoc)swModel;


                    for (int i = 0; i <= vChildComp.Length - 1; i++)//对装配体进行遍历找出所有相同路径的零件
                    {
                        swRootComp = (Component2)vChildComp[i];
                        string AssemblyTitle = swRootComp.GetPathName();
                        if (AssemblyTitle == s)//若路径相同则删除
                        {
                            swRootComp.Select4(true, null, false);
                            swModel.EditDelete();//删除
                        }
                    }
                }
            }
            catch (Exception ex)
            {
              
                MessageBox.Show("请选择零件!!!");
            }

        }

2.直接粘直接用。

3.点击按钮直接删除你选择的该装配体中,所有与你选择零件路径相同的零件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜菜王大大

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值