我有一个点multimap<int,int>的多图,它围绕(无间隙)任意形状(具体来说是陆地)。我将如何遍历任意形状中包含的所有点?

我知道多图还不足以确定内部点,因此我还有一个附加点,它位于形状的内部(确定形状的内部和外部)。

进一步的信息:这些点是按x方向排序的,因为multimap是一个排序的容器。所有点都位于网格中,因为我使用的是位图。

最佳答案

如果您的点相距1个像素远,那么按x坐标排序的点将不会有很大帮助。对它们进行排序,使应连接的点彼此相邻。
Draw lines between the points
在里面找到一个点并flood fill形状。如果您自己实现,则需要对此形状内的每个像素进行迭代。

关于c++ - 遍历任意形状的点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30670262/

10-11 22:28
查看更多