2024, 16(4): 49-53. doi: 10.16670/j.cnki.cn11-5823/tu.2024.04.09
两种在Revit中切割复杂轮廓楼板的新算法
云汉时代数字科技有限公司,上海 200122 |
Two New Algorithms for Cutting Complex Contour Floor in Revit
Yunhan Times Digital Technology Co., Ltd., Shanghai 200122, China |
引用本文: 章琛, 陈云浩, 曾胤升, 杨新元. 两种在Revit中切割复杂轮廓楼板的新算法[J]. 土木建筑工程信息技术, 2024, 16(4): 49-53. doi: 10.16670/j.cnki.cn11-5823/tu.2024.04.09
Citation: Chen Zhang, Yunhao Chen, Yinsheng Zeng, Xinyuan Yang. Two New Algorithms for Cutting Complex Contour Floor in Revit[J]. Journal of Information Technologyin Civil Engineering and Architecture, 2024, 16(4): 49-53. doi: 10.16670/j.cnki.cn11-5823/tu.2024.04.09
摘要:楼板切割本质上是一个多边形裁剪问题,然而现有算法涉及的数据结构和实现流程较为复杂,难以在实际中广泛应用。市场上一些主流的BIM深化软件虽然提供了楼板切割功能,但大多只能处理规则的楼板,而无法应对曲线、凹多边形等复杂边界的楼板。本文研究了两种在Revit中切割楼板的新方法:一种是基于几何计算,通过对切割线与楼板原轮廓线之间碰撞点的排序来求解切割后的新轮廓,该方法也适用于Revit之外的BIM软件平台,适用范围广泛;另一种方法基于升维法思想,将二维平面问题转化为三维问题,并利用Revit开放的三维实体布尔运算接口进行求解。这两种方法均不涉及复杂的数据结构,易于实现,为二次开发人员提供了有价值的参考。
Abstract: Floor slab cutting is fundamentally a polygon clipping problem. However, existing algorithms involve complex data structures and implementation processes, making them difficult to apply broadly in practice. While some mainstream BIM software on the market offer floor slab cutting functions, most can only handle regular slabs and cannot address complex boundaries such as curves and concave polygons. This paper presents two new methods for cutting floor slabs in Revit. The first method is based on geometric calculations, which solves the new profile after cutting by sorting collision points between the cutting lines and the original slab contour lines. This method is applicable to BIM software platforms beyond Revit and has a broad range of applicability. The second method, based on the concept of dimensional elevation, transforms the two-dimensional problem into a three-dimensional one and utilizes Revit's open 3D solid Boolean operation interface for solving. Both methods avoid complex data structures and are easy to implement, providing valuable references for developers involved in secondary development.
[1] |
宦国胜. API开发指南: Autodesk Revit[M]. 1版. 北京: 中国水利水电出版社, 2016: 110-112. |
[2] |
鲍虎军, 彭群生. 一个有效的多边形裁剪算法[J]. 自动化学报, 1996, 22(6): 741-742. |
[3] |
王巧雯. 基于BIM技术的装配式建筑协同化设计研究[J]. 建筑学报, 2017(S1): 18-21. |
[4] |
刘洪磊, 宋久乐, 王广斌, 等. BIM使用者满意度及其影响因素研究[J]. 土木工程学报, 2019, 52(02): 118: 128. |
[5] |
鲍跃, 全李惠. 人工智能时代的土木工程[J]. 土木工程学报, 2019, 52(05): 1-11. |
[6] |
付迎春, 袁修孝. 一种有效的任意多边形裁剪算法[J]. 计算机工程, 2006, 32(7): 278-280. |
[7] |
孙喜亮, 孙志勇, 薛小龙, 等. 智能建造技术协同创新主体互动关系研究[J]. 土木工程学报, 2022, 55(11): 108-117. |
[8] |
宫志群, 王永志, 廖少明. 基于数字孪生的建设工程项目管理数字化[J]. 土木工程学报, 2024, 57(07): 106-128. |
[9] |
章琛. 图解Revit二次开发101问[M]. 1版. 北京: 机械工业出版社, 2023: 5-6. |
[10] |
何援军. 几何计算[M]. 1版. 北京: 高等教育出版社, 2013: 33-35. |
[11] |
Anany Levitin. 算法设计与分析基础[M]. 3版. 北京: 清华大学出版社, 2015: 78-79. |
[12] |
杨远丰. 建筑工程BIM创新深度应用——BIM软件研发[M]. 1版. 北京: 中国建筑工业出版社, 2021: 67-70. |
[13] |
Autodesk Asia Pte Ltd. Autodesk Revit二次开发基础教程[M]. 1版. 上海: 同济大学出版社, 2015: 89-91. |
[14] |
王君峰. 建筑结构BIM设计思维课堂[M]. 1版. 北京: 机械工业出版社, 2022: 16-19. |
[15] |
[美]史蒂·J. 戈特勒. 3D计算机图形学基础[M]. 1版. 北京: 清华大学出版社, 2020: 33-34. |
计量
- PDF下载量(7)
- 文章访问量(333)
- HTML全文浏览量(241)