gpt4 book ai didi

javascript - 如果它们相距很远,则将点数组分成多个点数组

转载 作者:行者123 更新时间:2023-11-29 22:46:35 25 4
gpt4 key购买 nike

我希望我在这里很清楚,我会尝试添加图像来帮助人们理解我的问题。我有一个非常简单的 Perlin 噪声湖生成器:

Perlin noise lake generator

将湖泊输出为点数组:

[
{x: 0, y: 0},
...
]

使用简单的跟踪器从这些点生成多边形。它工作得很好,我对它很满意,直到我想到一个可能发生的问题,然后发现这个问题确实发生了。当你在一个区 block 中有两个独立的湖泊时(像这样)

two separate lakes in one chunk

多边形追踪器无法创建有效的多边形。我相信解决方案是事先将点分成点组,我查找了如何执行此操作,但我发现的只是一种算法,它需要知道在它可以工作之前应该有多少组(我这样做不知道)。我完全被难住了,想要一些关于从哪里开始的建议。我不需要完整的代码答案(我可以自己实现),但最好有一个概念。

在等待答案的同时,我仍然会环顾四周并尝试一些事情,尽管我怀疑我是否能够找到有用的东西。哦,如果这很重要,我的多边形追踪器会使用行进方 block 。

最佳答案

您需要的是 Clustering algorithm .既然你说你事先不知道集群的数量,我会推荐 Mean Shift algoritm .

关于javascript - 如果它们相距很远,则将点数组分成多个点数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58313320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com