UG二次开发装配篇 添加/拖动/删除组件方法的实现

本文介绍了如何通过编程实现UG装配环境中组件的管理,包括添加新组件、移动/拖动组件以及删除组件的详细步骤。添加组件涉及复制模板文件、修正表达式和设置属性;移动组件则通过RestructureComponents方法实现;删除组件利用UpdateManager的删除列表和提交更新功能完成。

我们在UG装配的过程中,经常会遇到需要调整组件目录位置,在软件设计过程中可以通过在目录树里面拖动组件来完成。

那么,如果要用程序实现组件的移动/拖动,我们要怎么做呢?

本节就完成了添加/拖动/删除组件方法的实现,先看效果图:

根节点test下,有SHCS_01、SHCS_02、SHCS_03、SHCS_04这四个组件。

下面分别给出了添加组件、移动组件和删除组件的方法。

一、添加组件

1、实现方法

/// <summary>
/// 添加组件
/// </summary>
/// <param name="templatePrt">模板路径</param>
/// <param name="basePoint">中心点坐标位置</param>
/// <param name="orientation">矢量方向</param>
/// <param name="expModel">表达式集</param>
public static void AddComponent(string templatePrt, Point3d basePoint, Matrix3x3 orientation, ExpressionModel expModel)
{
    theUFSession = UFSession.GetUFSession();
    theSession = Session.GetSession();
    displayPart = theSession.Parts.Display;
    workPart = theSession.Parts.Work;
    componentNameList = new List<string>();
    BasePart basePart1;
    PartLoadStatus partLoadStatus1;

step1:
    string fileName = "";
    string newfile = GetNewFile(templatePrt, out fileName); //先拷贝一个备份
    try
    {
        basePart1 = theSession.Parts.OpenBase(newfile, out partLoadStatus1);
    }
    catch (Exception)
    {
        componentNameList.Add(fileName);
        goto step1;
    }
    partLoadStatus1.Dispose();

    #region 修正表达式
    ExpressionCollection expressionCollection = basePart1.Expressions;
    EventHelper.UpdateExpression(expressionCollection, expModel);
    #endregion

    #region 添加属性
    basePart1.SetAttribute("模具编号", "", Update.Option.Now);
    basePart1.SetAttribute("材料标准", "", Update.Option.Now);
    basePart1.SetAttribute("塑胶材料", "", Update.Option.Now);
    basePart1.SetAttr
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

MarcoPro

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

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

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

打赏作者

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

抵扣说明:

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

余额充值