平铺镶嵌-随机图案
20260721
n = 滑动条(0, 20,1)
m = 滑动条(0, 7,1)
#随机矩阵代码
m1=序列(序列(区间随机数(0,3),i,1,n),j,1,n)
ListLines={线段((0.5, 0), (0, 0.5)), 线段((0.5, 1), (1, 0.5))}
ListArcs={圆弧((0, 0), (0.5, 0), (0, 0.5)), 圆弧((1, 1), (0.5, 1), (1, 0.5))}
ListPolys={多边形((0, 0), (1, 0), (1, 1)), 圆扇形((0, 0), (1, 0), (1, 1)), 圆扇形((0, 0), (1, 0), (0, 1)), 圆扇形((0, 0), (1;pi/6), (1;pi/3)),多边形((0, 0), (0.5, 0), (0, 0.5)),圆扇形((0, 0), (0.5, 0), (0, 0.5))}
ListPolysArcs={{多边形((0, 0), (0.5, 0), (0, 0.5)), 多边形((1, 1), (1, 0.5), (0.5, 1))}, {圆扇形((0, 0), (0.5, 0), (0, 0.5)),圆扇形((1, 1), (0.5, 1), (1, 0.5))},{多边形((0, 0), (0.5, 0), (0, 0.5)),圆扇形((1, 1), (0.5, 1), (1, 0.5)) }}
#生成图案。在原点生成三角形(基本图案),并按矩阵代码旋转和平移
#m3=序列(序列(平移(旋转(多边形((0,0),(1,0),(1,1)),元素(m1,i,j)*90°,(0.5,0.5)),向量(i (1,0)+j (0,1))),i,1,n),j,1,n)
#序列(序列(平移(旋转(元素(l1, 1), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Lines1=序列(序列(平移(旋转(ListLines, 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Lines2=序列(序列(平移(旋转(元素(ListLines, 2), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Arcs1=序列(序列(平移(旋转(ListArcs, 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Arcs2=序列(序列(平移(旋转(元素(ListArcs, 2), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys1=序列(序列(平移(旋转(元素(ListPolys, 1), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys2=序列(序列(平移(旋转(元素(ListPolys, 2), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys3=序列(序列(平移(旋转(元素(ListPolys, 3), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys4=序列(序列(平移(旋转(元素(ListPolys, 4), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys5=序列(序列(平移(旋转(元素(ListPolys, 5), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Polys6=序列(序列(平移(旋转(元素(ListPolys, 6), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
PolysArcs1=序列(序列(平移(旋转(元素(ListPolysArcs, 1), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
PolysArcs2=序列(序列(平移(旋转(元素(ListPolysArcs, 2), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
PolysArcs3=序列(序列(平移(旋转(元素(ListPolysArcs, 3), 元素(m1, i, j) * 90°, (0.5, 0.5)), 向量((i, j))), i, 1, n), j, 1, n)
Mtr={{1,0,1},{0,1,0},{0,0,1}}
Mtu={{1,0,0},{0,1,1},{0,0,1}}
Mr={{cos(1°),-sin(1°),0},{sin(1°),cos(1°),0},{0,0,1}}
Mr90={{0,-1,0},{1,0,0},{0,0,1}}
Arcs3=序列(序列(应用矩阵(Mtu^j Mtr^i Mr^(元素(m1, i, j) * 90), ListArcs), i, 1, n), j, 1, n)
Arcs4=序列(序列(应用矩阵(Mtu^j Mtr^i Mr90^(元素(m1, i, j)), ListArcs), i, 1, n), j, 1, n)