Estou precisando verificar se um dado ponto está contido por um poligono qualquer.
Bem, a API Java já faz (porcamente) esse serviço. Porem ela encontra o menor retangulo que contem o poligono e depois verifica se o ponto está contido por esse retangulo. Ou seja, a API Java só me informa COM CERTEZA se um ponto é contido por um retangulo.
Alguem sabe como resolver isso? Estava querendo algo pronto…
Leia o código da classe java.awt.Polygon com mais atenção.
Ela realmente diz que se o ponto não estiver contido no retângulo que circunscreve o polígono, então ele não está contido no polígono.
Mas se estiver contido nesse retângulo, então ele usa aquele método de checar se o número de cruzamentos de uma reta (vertical ou horizontal) entre os vértices do retângulo é par ou ímpar, que você deve conhecer.