Я работаю со спрайтом, и мне нужно создать многоугольник (массив вершин) для детектора столкновения.Получить вершины изображения?
У меня есть метод getPixel(x, y)
, который я могу использовать для получения цвета пикселя. Мне не нужны какие-либо причудливые определения цвета или что-то еще, просто сплошные пиксели и прозрачные пиксели. Вот что я начал, прежде чем мой мозг начал плавиться:
boolean[] hasColor = new boolean[size];
for (int i = 0; i < size; i++) {
int row;
row = i % width;
if ((pixmap.getPixel(i, row) != 0) || (pixmap.getPixel(row, i) != -256)) {
hasColor[i] = true;
} else {
hasColor[i] = false;
}
}
Это должно следить за то, что пиксели являются пустыми, а какие нет. Но я не знаю, куда мне идти.
Есть ли алгоритм или что-то, что я могу использовать, чтобы помочь? Может ли кто-нибудь предоставить вход?
Возможно, вы ищете что-то вроде этого? http://en.wikipedia.org/wiki/Gift_wrapping_algorithm – AlchemicalApples