itext table与上一个table隔一行_一个立面的“计算”解读

本文探讨了如何利用算法生成上疏下密的立面效果,借助numpy和二维数组模拟建筑立面的开窗分布。通过调整每一行窗户的移除比例实现渐变效果,为建筑设计提供了一种计算方法。完整代码可在文中找到,适合对图形算法感兴趣的读者。
摘要由CSDN通过智能技术生成

我对于图案,图形有关的算法一直有很大兴趣,前几天读到 @梦符佳月 的深度文章(https://zhuanlan.zhihu.com/p/66806074),看到评论区 @不忌惮 提的一个有趣问题,不禁想展开来写一下。

077d0dd8758e0fd182fce5d2eb85027f.png

问题大概是这种上疏下密的立面怎么生成,有何算法依据。

一个小先决条件,这里使用了 numpy。并且是用 Jupyter Notebook 来做的 Prototype,并不能直接放进 Rhino 里。但是这个思路应该是行的通的。

首先想到用何种数据结构表达这个立面,马上想到二维数组(2D array)。先假设立面全部都铺满:

import numpy as np


class Facade:
    
    def __init__(self, width, height):
        self.width = width
        self.height = height
        self.facade = np.asarray([["O" for j in range(self.width)] for i in range(self.height)])

其中 self.facade 就是我们的开窗,用 “O” 来表示。看起来像这样:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值