文章来源:BIM便利店
成果预览
分步解析
1、创建三个空列表,作为程序的输出。
我不打算解释导入部分,因为在前面已经解释了导入部分的原因,如遇到特殊地方会加以说明。
2、过滤视图类型
1.FilteredElementCollector可以通过搜索RevitApi进行查找。该类用于搜索、筛选和迭代一组元素,通过查找SDK,可以看到这个类有3个构造函数,我们选择
FilteredElementCollector(Document)
意思是搜索和筛选文档中的元素集。
所以程序FilteredElementCollector(doc)的意思是遍历整个Revit提供给我们的文档。
2.接着利用.ofclass方法来对这个collector实例化对象采用视图族类型的方式过滤,即.OfClass(ViewFamilyType),过滤的类别为视图族类型
3.最后.ToElements()意思是返回传递过滤器中的完整元集合。
注:这一小段代码的意思就是过滤出所有视图族类类型,这里注意的是返回值为ViewFamilyType,要和族区分开。
3、精确过滤
过滤出视图族类型之后,使用for循环遍历他们。
1.再第一个循环中,我们找到类型为Elevation的视图族,并将其追加到元素列表中。
i.ViewFamily的意思是此视图类型所对应的族。
ViewFamily.Elevation的意思就是立面族。
2.接着设置另一个循环来遍历视图族类型的的参数。一旦循环找到元素类型名称,它就会将其追加到名称列表中。
I.Parameters的意思是检索包含元素中所有参数的集合,提取立面族的所有参数。
j.Definition.Name的意思是返回参数的数据名称
.AsString()表示为返回参数中包含的字符串。
小结
该程序的意思就是过滤出立面族的族类型图元和族类型名称,过滤出族类型名称的用处是让我们更直观的去选择采取哪种族类型去创建立面。
完
谢谢观看
原创不易
转载请与我联系
Revit中文网作为国内知名BIM软件培训交流平台,几十万Revit软件爱好者和你一起学习Revit,不仅仅为广大用户提供相关BIM软件下载与相关行业资讯,同时也有部分网络培训与在线培训,欢迎广大用户咨询。
网校包含各类BIM课程320余套,各类学习资源270余种,是目前国内BIM类网校中课程最有深度、涵盖性最广、资源最为齐全的网校。网校课程包含Revit、Dynamo、Lumion、Navisworks、Civil 3D等几十种BIM相关软件的教学课程,专业涵盖土建、机电、装饰、市政、后期、开发等多个领域。
需要更多BIM考试教程或BIM视频教程,可以咨询客服获得更多免费