我尝试为网站创建一个像下面这样的随机背景图像,但经过多次尝试,我无法找到一个可以完成这项工作的算法。
程序应该做什么?
它应该能够随机填充平面三角形。这些三角形应该是独立的,因此我不希望只是在画布上绘制长线并着色创建的三角形。
我尝试过的算法:
1.
- 生成随机点
- 使用小于特定值的长度生成随机连接(这可能导致三角形网中出现孔洞)
- 尝试找出哪些连接构成三角形(我在这里失败了)
2.
3.
- 生成随机点
- 建立所有可能的连接(每个点到其他每个点)
- 按长度对连接进行排序
- 对于每个以最短距离开始的连接,如果它没有与任何其他已绘制的线相交,则绘制。否则删除该连接。
即使只有少数点,这实际上是我的最佳尝试,但程序需要很长时间才能完成。这是结果的样子:
我找不到一种方法来确定哪些连接成三角形,因此我无法将它们独立着色...
希望你知道一种创建像第一张图片中填充三角形的漂亮画布的方法并让我知道...