Revit二次开发——自动生成构件图(总结)
之前测试导出构件图的功能实现,拆分了各模块分布进行测试:
- Revit二次开发——一键导出构件图(1)
- Revit二次开发——叠合板自动配筋(2)
- Revit二次开发——自动标注钢筋思路(3)
本篇为这个系列的总结篇,包括一些实现方式的优化,以及遇到的技术问题
由于工作业务模式的影响,基于Revit直接导出构件图,有两种形式:
- 在施工图阶段完成的装配式模型中,直接生成图纸;
- 在施工图阶段完成的装配式模型基础上,导出构件数据再另行排布构件后,批量生成图纸;
两种形式在代码编写逻辑会有些差异,主要是第一种需要增加构件旋转、非关键元素隐藏的考量
本文基础第二种形式进行说明思路
1、自动布图:
- 创建视图:根据构件的坐标点及尺寸数据,计算BoundingBoxXYZ.Max、Min坐标,以及Transform转化,创建详图视图;
- 创建尺寸标注:根据各视图的需要,获取构件面的参照,进行尺寸标注,预制构件尺寸标注可按需要加上文字框;
- 创建图纸:新建图纸,将各视图添加到图纸中(API不能调整视口标题的位置,采用无视口标题+常规注释族的形式);
2、自动生成钢筋+钢筋标注+钢筋明细表
- 配筋设置:在插件界面预留设计师手动调整的余地;
- 钢筋形状:对于标准化构件,所使用的钢筋形状是固定的,建议提前制作钢筋形状族;
- 生成钢筋:根据配筋设置,计算钢筋的位置,调用api生成钢筋,revit提供生成钢筋的api有两种: Rebar.CreateFromCurves / Rebar.CreateFromRebarShape ,前者适用于直线钢筋、需要根据构件角度变化的钢筋(例如预制楼梯的①号筋),后者适用于固定形状的钢筋(例如箍筋);
- 钢筋标注:根据钢筋设置的生产规则,生成钢筋标注的情况有:(1)等间距钢筋,只标注首尾两根,标注文体替换为 数量x间距=总距离;(2)钢筋与构件面距离标注;
钢筋标注需要注意:
- 获取rebar的geometry时,option要设置view属性;
- 获取rebar的中心线参照时,如果钢筋是直线段钢筋,可以用rebar.getCentreLineCurves(false,false,false)方法;
- 如果是有弯折的多段钢筋,可以从geometryobject→solid→edges拿到所有边线,并根据方向、距离找到需要标注段的edge参照:
3、预埋件(由于预埋件的点位提资需要外部单位提供,暂不考虑自动化生产)
遇到的问题:
- revit中的钢筋直径是实际值,不能达到现有cad构件图的标准。例如cad图面的构件钢筋图面直径会比实际直径大一号,在revit中的实体钢筋则不能实现;
- revit中视图的遮挡关系,是真实状态,不能达到现有cad构件图中遮挡的效果;例如cad同一个剖面内,既要显示部分遮挡的钢筋,又要隐藏部分露出的钢筋,revit的视图样板就不能单独控制,元素隐藏也无法达到效果;
- 钢筋一次生成的效率,revit按配筋方案运算后生成实体钢筋,远比不上cad插件仅表达图面的速度;
- ...
总结:
如上提到的问题,归其原因都是因为出发点:用revit生成cad效果的图纸。每个软件都有各自的特性及优缺点,发挥各自优势。
讨论问题可以私信或加QQ群↓
点击链接加入群聊【歌手Revit插件交流群】:https://jq.qq.com/?_wv=1027&k=5iKkLNi
关于歌手
Revit二次开发——自动生成构件图(总结)相关推荐
- cad通过钢筋大样生成钢筋明细表插件_Revit二次开发——自动生成构件图(总结)...
之前测试导出构件图的功能实现,拆分了各模块分布进行测试:Revit二次开发--一键导出构件图(1) Revit二次开发--叠合板自动配筋(2) Revit二次开发--自动标注钢筋思路(3) 本篇为这个 ...
- Revit二次开发 自动生成剖面楼梯标注
引用 revit坐标与屏幕坐标的转换 前置 关于Revit中楼梯竖向标注的问题记录及生成方式的解决方案 样式 内容 上面链接文件中提供了一种屏幕坐标转换为项目坐标的办法,原理时通过屏幕中的点与边界的比 ...
- 陈伯雄lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图
龙源期刊网 http://www.qikan.com.cn 基于 AutoLisp 的 AutoCAD 二次开发自动 生成系统图 作者:郎建山 金江 来源:<科技视界> 2013 年第 2 ...
- CAD自控lisp_基于AutoLisp的AutoCAD二次开发自动生成系统图
基于 AutoLisp 的 AutoCAD 二次开发自动生成系统图 [摘 要]本文主要阐述了应用 autolisp 语言二次开发 autocad 自动生成系统图的实现方案. [关键词] autocad ...
- Revit二次开发——自动标注轴网
引言:在自动标注大主题下,自动标注轴网:利弊等望读者自行改进(仅限平面视图) 开始: using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; ...
- Revit二次开发——自动标注钢筋思路(3)
仍然是接上一篇 本篇分析标注钢筋的思路 (另:构件图思路分享系列的阅读顺序是2-3-1) 测试环境visual studio2017 + revit2016 demo: 实现思路: 测试时,首先想到的 ...
- Revit二次开发-自动线性尺寸标注
在这里就不多说什么,直接上主要代码,分享给大家,希望对各位有帮助,有更好的意见的也欢迎大家留言. /// <summary>/// 自动创建所选中的一组图元的线性距离尺寸/// </ ...
- Revit二次开发案例一(第1讲)
这期起,将为大家带来二次开发的小案例讲解,通过借助Revit建模与二次开发,帮助大家快速提高开发水平,快快参加吧!!! 族实例是通过族类型创建的,而创建族实例是Revit二次开发尤其重要的,因此小伙伴 ...
- Revit二次开发——结构模型构件自动扣减
**Revit二次开发实例--模型自动扣减** 本文章来源于微信公众号 '有福BIM' 有福BIM的第四篇原创文章! 阅读前望知悉: 我晓得各位读者和粉丝中不乏C#二开大佬 有福作为一个二开新手(编程 ...
最新文章
- swift3.0三种反向传值
- [解题报告] The Collatz Sequence
- docker run -it 如何退出_Docker学习笔记(4)容器的基本命令 1 - 你个小秃头
- jQuery插件-json2.js
- 如果使用StateServer或SQLServer,会遇到的问题。。。。
- Java——网络编程(实现基于命令行的多人聊天室)
- Odoo10参考系列--混合而有用的类
- 前端每周清单第 39 期: OpenAI 与 gRPC, Gitlab 的 Vue 年度总结,GraphQL 技术栈漫游
- postgresql-窗口函数使用
- 初识C语言—如何创建第一个C语言项目
- 我的团长我的团第二十七集
- C++知识点(持续更新)
- 从GraalVM到Quarkus系列-B002篇-Quarkus中的字节码框架gizmo
- (五)DDR协议命令波形时序二——(Precharge、Refresh、Self Refresh、Power Down)
- uva 557 Buger 概率
- 从零到一搭建基础架构(2)-如何构建基础架构模块划分
- Matlab + Gurobi入门
- java错误 找不到或无法加载主类_JAVA报找不到或无法加载主类的错误
- 琐记之生活感悟(关于日常生活的东西都丢这里)
- javascript 正则方法 exec()