首页/技术分享

二次开发教程:Revit开发之判断参数是否为项目参数

发布于:2019-08-26 16:50:11
8033人 分享

Revit里有一种参数叫项目参数,如果要判断一个


参数是否是项目参数,RevitAPI里没有直接提供


方法,那到底有没有方法来判断一个参数是否是


项目参数呢? 下面来做一些尝试:




首先通过Document.ParameterBindings


发现这里面包括了项目参数和共享参数


那如果一个参数不是共享参数,而又包含


在这里面,那它是不是就是项目参数呢?


经过简单测试,发现可以判断项目参数




下面是关键代码:


            Document doc = commandData.Application.ActiveUIDocument.Document;

            UIDocument uidoc = new UIDocument(doc);

            BindingMap map = doc.ParameterBindings;          


            Element testElem = doc.GetElement(uidoc.Selection.PickObject(ObjectType.Element));

            ParameterSet ps = testElem.Parameters;

            int i = 0;

            foreach (Parameter p in ps)

            {

                if (p.IsShared)

                {

                    continue;

                }

                else {

                    if (map.Contains(p.Definition))

                    {

                        i++;

                    }

                }

            }

            TaskDialog.Show("Num", i.ToString());

转载请注明来源本文地址:https://www.tuituisoft/blog/3487.html

上一篇:

二次开发教程:Revit开发之调用过滤器设置窗体设置过滤器

下一篇:

二次开发教程:Revit开发之导出明细表到Excel