Revit二次开发学习笔记002

本文介绍了Revit API开发的基本步骤,包括用户手动获取数据的方法,如利用选择集选取对象、通过事务更改元素属性;同时也讲解了后台自动获取数据的技术,如使用过滤器筛选文档中的特定元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户自己手动获取数据

1.当前文件中的内容

public Result Execute(ExternalCommandData commandData,ref string message,ElementSet elements)
        {
            UIDocument uidoc = commandData.Application.ActiveUIDocument;//需要和用户交互的接口内容,例如切换视图
            Document doc = uidoc.Document; //不需要和用户交互的数据接口,例如利用数据创建墙          
            return Result.Succeeded;
        }

2. 获取当前用户所选对象 Selection, 是管理着所有与用户选择有关的操作

using Autodesk.Revit.UI.Selection;

Selection sel = uidoc.Selection;

3. 利用lookup对元素进行查找,可获得当中的属性参数及操作方法。

Parameter parameter= duct.get_Parameter(BuiltInParameter.RBS_CURdouble //获取元素

area = parameter.AsDouble();VE_SURFACE_AREA);//获取元素面积

4. Revit中开始一个新操作需要修改模型中的数据时,需要新建事务,避免动作重复报错。

  using (Transaction tr = new Transaction(doc, "demo1"))
            {
                tr.Start();
                parameter.SetValueString("3000");
                tr.Commit();
            }

5.选中元素之后通过lookup查找该元素的parameters -想操作的属性-definition中可以看到相关的属性名称及方法名称。

后台自动获取数据

1.通过过滤器获取文档中的元素。

   ofClass:通过元素的类名来过滤元素,用来获取界面已有的该类型的构件

   ofCategary通过元素的Catagary来过滤元素,即使元素不在文件中,也会获取到该元素。

   WherePasses(某一个过滤器,例如 new ElementClassFilter(Typeof(Duct)))

Revit二次开发学的就是API,学的是Revit开放给用户的接口方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值