Revit二次开发之“遍历材质判断材质类别的新方法”BuiltInParameter.PHY_MATERIAL_PARAM_CLASS...
新版本API的方法:
全部代码如下:
[Regeneration(RegenerationOption.Manual)]
public class cmdMaterial : IExternalCommand
{
public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
{
UIDocument uiDoc = cmdData.Application.ActiveUIDocument;
FilteredElementCollector collector = new FilteredElementCollector(uiDoc.Document);
collector.OfClass(typeof(Material));
FilteredElementIterator materialItr = collector.GetElementIterator();
materialItr.Reset();
int i = 0;
#region 新方法
while (materialItr.MoveNext())
{
Material material = materialItr.Current as Material;
Parameter curPara = material.get_Parameter(BuiltInParameter.PHY_MATERIAL_PARAM_CLASS);
switch (curPara.AsInteger())
{
case (int)StructuralMaterialType.Steel:
TaskDialog.Show("新方法", material.Name);
break;
}
}
#endregion
#region 过时的方法
materialItr.Reset();
while (materialItr.MoveNext())
{
i = i + 1;
Material material = materialItr.Current as Material;
if (material is MaterialSteel)//steel金属
{
MaterialSteel steelMa = material as MaterialSteel;
TaskDialog.Show("steel", steelMa.Name);
}
}
#endregion
TaskDialog.Show("count", i + "");
return Result.Succeeded;
}
}
from:http://revit.5d6d.com/thread-1253-1-1.html
转载于:https://www.cnblogs.com/greatverve/archive/2011/09/19/revit-api-material.html
Revit二次开发之“遍历材质判断材质类别的新方法”BuiltInParameter.PHY_MATERIAL_PARAM_CLASS...相关推荐
- Revit二次开发之获取参数绑定的类别【比目鱼原创】
项目参数保存在Revit 里,所以删除共享参数或者共享参数文件,都不会对项目参数产生影响,哪怕项目参数是通过共享参数创建的.项目参数在创建的时候,就已经和类别绑定了.也就是说和类别对应的元素都加上了新 ...
- Revit二次开发_1.过滤器笔记篇
Revit二次开发_1.过滤器笔记篇 前言 对象分类 过滤方法 前言 最近在用过滤器功能,先按照教程做了筛选墙,再自己做了筛选常规模型的功能,发现有点不一样,问题在于筛选这些Elements的时候没弄 ...
- Revit二次开发_轴网快速标注
通过Revit二次开发实现对平行轴网的快速标注.交互操作是框选轴网->点选尺寸标注出现的位置->生成两道尺寸标注. 要达到设想的结果一些地方需要特殊考虑: 框选操作容易误选轴网,起码要把与 ...
- Revit二次开发之按照标高过滤元素
Revit二次开发之按照标高过滤元素 之前群里有朋友问怎么过滤特定标高的元素,当时有人回答先都过滤出来,然后遍历判断相应的标高参数来找出特定标高的元素.今天在看书的时候看到了一个可以过滤特定标高元素的 ...
- Revit二次开发——扩展存储
Revit二次开发--扩展存储 在revitAPI中,提供了Extensible Storage framework,可以使开发者将需要存储的数据存到Revit的rvt文件中, 扩展的数据始终跟 ...
- Revit二次开发之批量修改族名称及族类型名称
昨天是参加工作整一年的好日子,在这一年中逐步开始接触C#和Revit二次开发,困扰和BUG伴随着整个学习过程.由于Revit二次开发的资料和课程不多,很多情况下都是依靠博客.技术贴和QQ群里的大神等方 ...
- Revit二次开发——结构模型构件自动扣减
**Revit二次开发实例--模型自动扣减** 本文章来源于微信公众号 '有福BIM' 有福BIM的第四篇原创文章! 阅读前望知悉: 我晓得各位读者和粉丝中不乏C#二开大佬 有福作为一个二开新手(编程 ...
- revit二次开发之多线程的正确使用
欢迎加入BIM行业开发交流1群 群号:711844216(满),二群群号:1016453207 一.背景 小伙伴们为了加快revit程序运行速度, 可能会考虑使用多线程,但是我们必须首先搞清楚一个问题 ...
- Revit二次开发从入门到精通学习之路, (含Revit二次开发教程下载)
Revit二次开发从入门到精通学习之路 Autodesk Joe Ye叶雄进 2. 18 2014 yexiongjin@hotmail.com Revit在国内的应用越来越广泛, Revit ...
最新文章
- Hadoop集群的基本操作(三:HBase的基本操作)
- 面试官:连框架都没用熟练,就这还来面试?
- 【 FPGA 】Vivado中常用的5个Tcl命令
- MultiRow发现之旅(二)- 详解属性管理器
- 日期代码的js 中将2012年显示成了112年
- Android Service下载文件并自定义通知提示下载
- 天哪!原来PWM这么简单
- c#winform演练 ktv项目 通过下标选中歌曲并且列表高亮
- ROS入门笔记(十):编写与测试简单的消息发布器和订阅器(C++)
- MySQL5.7 编译安装
- 分布式数据库中全局唯一主键
- ubuntu 分区_系统小技巧:迁移通过Wubi方式安装的Ubuntu系统
- 国内有哪些做H5走心的外包服务团队或公司?
- w10系统服务器管理器,Win10如何打开服务管理器
- RMAN传输表空间迁移数据
- 制作带边框的圆形头像
- 《7、8班课后作业千帆竞发图》
- spring boot 配置文件properties,yml语法学习及属性获取@ConfigurationProperties和@Value
- 人工智能:智慧环保(上海AI智慧环保,绿色新时代)
- 在Qt中使用OpenGL(四)
热门文章
- 浅谈android的selector,背景选择器
- Play 1.x框架学习之六:未登陆拦截机制 (Not Login intercept In play framework)
- ASP.NET 2.0 - 如何把上传的文件保存到数据库字段 (转自章立民CnBlogs)
- 软硬件融合加速技术系列文章
- OpenYurt — Overview
- linux系统巡检脚本
- 2019年企业云呈现五大技术发展趋势
- java - 把日志生成到指定目录
- 基于 Laravel、Vue.js开发的全新社交系统----ThinkSNS+
- ASM 磁盘、目录的管理