NCF参数化建筑论坛

标题: 建筑强排程序的核心算法 [打印本页]

作者: 天明2009    时间: 2019-2-14 10:53
标题: 建筑强排程序的核心算法
本帖最后由 天明2009 于 2019-2-16 18:18 编辑

对于之前发布的程序“强排助手”,很多朋友会质疑:程序考虑消防间距和日照间距了吗?答案是否定的,详细的程序原理介绍请看上一篇文章:强排助手V1.2 问答录

在《问答录》中,笔者把强排的过程分为两步:算量和排图。“算量”是算楼栋的组合情况,“排图”是对组合情况进行楼栋摆放验证。

“强排助手”虽然帮助建筑师完成了第一步,但由于“排图”算法过于复杂,暂时还没实现第二步。尽管如此,笔者在研究过程中发现,排图过程可以简化为“排样算法”。什么是排样算法呢?

排样算法,又称“排料算法”,是工业界常用的自动程序算法,分为二维排样和三维排样。典型应用如下:

二维排样:如何在一块布上,裁出最多的鞋垫;

三维排样:如何将大小不同的货物放入尽量少的车辆。


比如下图中,如何将一块块不规则的菱形表皮排布在矩形原料中。
[attach]51315[/attach]

普遍地讲,强排中的排图过程,本质就是二维排样过程,只不过需要考虑更多的因素:防火间距、日照间距、空间感受。因此,强排程序的核心算法就是排样算法。关于排样算法的原理和实现,感兴趣的朋友可以进一步搜索研究,下面介绍本次的主角:OpenNest。

OpenNest是一个免费的Grasshopper插件,它可以自动地将二维图形摆放到矩形原料中,对于想体验排样算法的朋友来说,是一个非常好的体验平台。使用步骤如下:

1、将OpenNest.gha文件加载到Grasshopper中,可以直接拖拽到Grasshopper中即可。加载成功之后,会看到如下界面;

[attach]51314[/attach]

2、加载示例电池文件OpenNestExample.gh,可以直接拖拽文件到Grasshopper中,如下图:

[attach]51313[/attach]

电池的简要说明,详细的使用方法和效果请大家自行尝试:

[attach]51312[/attach]

希望通过这次介绍,让大家了解强排程序的步骤和排图算法的原理,大家如果有任何问题或建议,请及时和我联系:微信号(ArchCoder)


OpenNest的两种下载方法:

1.官网下载:https://www.food4rhino.com/app/opennest

2.OpenNest下载链接:

链接:https://pan.baidu.com/s/1ooStpq_cTX3LN-kb6nqZKQ 提取码:sbq4
Rhino 6下载链接:
https://pan.baidu.com/s/1QPln5Ov414u1Ko4p8oXW-Q 提取码:189l

作者: darklight    时间: 2019-5-31 16:49
显示无法加载“minkowski.dll”文件,可能是什么问题啊?
作者: 天明2009    时间: 2019-6-3 16:42
darklight 发表于 2019-5-31 16:49
显示无法加载“minkowski.dll”文件,可能是什么问题啊?

缺少这个dll文件。
作者: work2011    时间: 2019-7-5 01:36
学习学习,谢谢大神了
作者: 肥璐璐熊    时间: 2019-8-19 02:30
用图标直观一些吧。
作者: 发现档案    时间: 2020-10-6 01:08
最近看了诺亚的教程,也在思考这个核心问题。
核心问题是先在有限的面积里解决最大的量
研究下先
作者: 发现档案    时间: 2020-10-6 12:01
结合最大面积算法确实可以强排

作者: lasa    时间: 2021-7-15 09:20
感谢分享,学习学习
作者: 无限ing    时间: 2021-7-29 14:21
这个电池创新用法吗,以前都看到是下料时候用,原来还可以这样




欢迎光临 NCF参数化建筑论坛 (http://www.ncf-china.com/) Powered by Discuz! X3.2