Revit二次开发——新建墙类型
新建墙类型
取一个墙类型,复制并重命名修改参数
public static ElementId CreatWallType(Document doc, string wallTypeName, double width)
{ElementId wallTypeId = null;FilteredElementCollector Col = new FilteredElementCollector(doc);var familySymbolList = Col.OfClass(typeof(WallType)).ToList();WallType baseWallType = null;WallType newWallType = null;using (Transaction transaction = new Transaction(doc)){if (transaction.Start("创建新墙类型") == TransactionStatus.Started){try{//获取一个墙类型复制并重命名foreach (WallType item in familySymbolList){if (item.Category.Name == "墙" && item.FamilyName == "基本墙"&& item.Name == "常规 - 200mm"){baseWallType = item;continue;}}foreach (WallType item in familySymbolList){if (item.Name == wallTypeName){TaskDialog.Show("创建墙", "墙类型已经存在");transaction.Commit();}}newWallType = baseWallType.Duplicate(wallTypeName) as WallType;doc.Regenerate();//改变厚度CompoundStructure wallTypeStructure = newWallType.GetCompoundStructure();double wallThickness = wallTypeStructure.GetWidth();//得到厚度int endIndex = wallTypeStructure.GetLastCoreLayerIndex();//分层看情况wallTypeStructure.SetLayerWidth(endIndex, width/304.8);newWallType.SetCompoundStructure(wallTypeStructure);//修改后设置if (TransactionStatus.Committed != transaction.Commit()){TaskDialog.Show("创建新墙类型", "提交失败!");}}catch{transaction.RollBack();throw;}}}wallTypeId = newWallType.Id;return wallTypeId;
}
Revit二次开发——新建墙类型相关推荐
- 【Revit二次开发】“附加模块”中添加“外部工具”AND外部工具中添加新建插件
写在前面,今天第一次接触Revit二次开发,要做的两件事情 第一,搭建环境(安装的是破解版2017的Revit软件.下载SDK2017的并安装.还有开发平台VS2015). 第二,首先就是运行Hell ...
- Revit二次开发学习笔记
Revit二次开发学习笔记1 20220314: 概念:Application与Document 接口函数:IExternalCommand.ActiveView与Selection 20220316 ...
- Revit二次开发之绘制钢筋
第一次在博客园上写东西,也不知道该写些什么,我想就写点最近项目到遇到的问题吧. 最近在做一个小项目,具体需求大概是在一个revit模型中的对应的楼板位置绘制钢筋. 由于刚接触Revit二次开发,之前也 ...
- Revit二次开发前期准备
Revit二次开发前期准备 程序是什么:输入-处理-输出 给工程人员带来什么:1.解决重复性的工作2.提供创造性的工作3.互联互通 如何学习编程:跟学,以解决问题为目的,不懂就过,查阅API C#重点 ...
- C# Revit二次开发基础/核心编程---建筑建模-标高和轴网
一.本节课程 C# Revit二次开发基础/核心编程---建筑建模-标高和轴网 二.本节要讲解的知识点 1.标高的高度.创建标高 2.轴网曲线.创建轴网 具体内容 1.标高 标高是有限水平平面,大多数 ...
- C# Revit二次开发基础/核心编程--- Application\Document\Transaction
一.本节课程 C# Revit二次开发基础/核心编程--- Application\Document\Transaction 二.本节要讲解的知识点 Application\Document\Tran ...
- Revit二次开发—参数的读取与写入
关注公众号及时获取文章更新 注:本文转自公众号:BIMCoder梁老师 一.前言 在Revit二次开发中,参数是非常重要的组成部分,那么我们该如何从构件获取参数并修改该参数. 二.方法 首先得到一个E ...
- Revit二次开发之批量修改族名称及族类型名称
昨天是参加工作整一年的好日子,在这一年中逐步开始接触C#和Revit二次开发,困扰和BUG伴随着整个学习过程.由于Revit二次开发的资料和课程不多,很多情况下都是依靠博客.技术贴和QQ群里的大神等方 ...
- 【Revit 二次开发 】创建带箭头的文字注释(字体设置+引线箭头设置)
此篇文章仅是自己的开发经验分享,不具备官方参考价值,如有不足,欢迎批评指正 开发目的: 创建一个带箭头的文字注释 字体为新宋体,大小2.5mm,宽度系数0.7,箭头为30度实心箭头 like this ...
- Revit二次开发——结构模型构件自动扣减
**Revit二次开发实例--模型自动扣减** 本文章来源于微信公众号 '有福BIM' 有福BIM的第四篇原创文章! 阅读前望知悉: 我晓得各位读者和粉丝中不乏C#二开大佬 有福作为一个二开新手(编程 ...
最新文章
- Educational Codeforces Round 11C. Hard Process two pointer
- AI公开课:19.02.27周逵(投资人)《AI时代的投资逻辑》课堂笔记以及个人感悟
- 轮换html有虚宽出现,乒乓球理论考试复习资料
- Java记录 -6- 流程控制语句
- 让别人和自己看懂自己的程序代码?一文掌握Java单行多行、文档注释以及注解(Annotation)超详细的理解使用,IDEA注释注解快捷键和模板,提高程序代码更有可读性
- R-CNN学习笔记2:Rich feature hierarchies for accurate object detection and semantic segmentation
- 基于springboot的客栈(酒店)系统
- Android源码在线查看工具
- python判断手机号运营商_js判断手机号运营商的方法
- Android一个类似腾讯 QQ 背景图片可以上下左右移动的 imageview
- 2020-10-16 js实现模拟双色球摇号
- 上海航芯| BMS专题之BMS基础功能模块概述分享
- 摄像头8mm可以看多远_折叠屏、透明屏、卷曲屏、拼接屏、屏下摄像头...未来屏显的先机都在这里...
- 自己动手写一个strlen()函数
- 关于3G手机USIM卡的电话簿
- 什么软件可以图片转文字?建议收藏这些软件
- 达梦数据库服务器模式不匹配
- android访问相册、拍照
- eNodeB 伪基站辨识与优化
- C#实现类似百度网盘、360云盘在“我的电脑”磁盘驱动器