我希望能够将图像作为矩阵并将其转换为多边形。
图像将是一个具有多个角度的不规则形状,并且基本上可以找到可以加工成多边形(顶点数组)的外边缘
图像已经编码,因此我可以获得所有像素,使其形成总体形状(填充)。我知道如何获得它的原点并用它来抵消其他像素。
[背景] 我想把风险变成游戏。我想将所有地区映射为多边形,以便我可以对它们进行鼠标检测。
我知道我可以通过鼠标x,y并迭代像素,但地图很大,效率不高。
注意:我打算使用libgdx的多边形库来映射它。它的顶点需要一个浮点数的单维数组。
答案 0 :(得分:0)
我能做到这一点的一种方法是遍历形状中的所有像素,找到(并分开)那些不在图像之外的像素旁边的像素。
示例:
00111000
01111100
01111000
00111110
我可以把上面的内容变成
00111000
01000100
01001000
00111100
这很棒但是,我真正想要的是它看起来像这样:
00101000
01000100
01001000
00100100
所以我可以通过2,0 - > 4,0 - > 5,1 ......等等