纹理特色
- 原点造型呈现出波浪形状排列
- 其中大的波浪原点呈错位重复出现
- 大波浪之间还有渐变的圆点阵列
算法步骤
- 1波浪线单元体
- 2波浪线单元体做等距移动
- 3波浪曲线两两之间生成曲线间平分线
- 4去掉重合的线
- 5波浪线内渐变半径的圆形阵列
- 6创建边界的圆形
- 7创建网格实体
- 8Grasshopper算法电池图下连接关系
详细步骤
1波浪线单元体
波兰线单体由两条线构成的。
一般画波浪想用函数映射器(Graph mapper)中的sine函数就可以输出波动数据了。
只要把函数输出值做数列偏移(Shift List)运算,然后再输入点坐标当中,就可以得到错位波浪曲线。
以下是Grasshopper算法:
2波浪线单元体做等距移动
把波浪线复制N分,再做等距移动运算,这样就得到整个纹理的主要框架。这里要注意的是移动间距要比波浪线的波峰数值大,否则两个波浪曲线将会相交到一起。
以下是Grasshopper算法:
3波浪曲线两两之间生成曲线间平分线
曲线之间的平分线是作为内部填充圆的基础线条。
以下是Grasshopper算法:
4去掉重合的线
以下是Grasshopper算法:
5波浪线内渐变半径的圆形阵列
获取主干线的点,然后计算内部点到主干点的距离,映射出合适的点距离作为圆形的半径,最终形成渐变的圆形矩阵。
由于内部的波浪有些地方的间距过小,会形成很多些小的圆点密集或者相交,那么要设定一个最小间距值,把小于改间距的图形删除,本案例设定的值为1.712(见下图)。
以下是Grasshopper算法:
6创建边界的圆形
主干线的点阵也要创建圆形图案,边界上的圆形没有做渐变处理,但是我们还得主要其最小间距,否则这些圆形将会相交碰撞到一起。
获得最小间距方法主要是通过点生成线框架(Graph mapper),通过计算线框架(Graph mapper)的边线长度得来的。从线框架得到按线长度排列的数据列表,获取第一个(最小值排第一位)就可以了。
以下是Grasshopper算法:
7创建网格实体
以下是Grasshopper算法:
8Grasshopper算法电池图下连接关系
以下是Grasshopper算法: