Cálculo de área poligonal usando Latitude e Longitude geradas a partir do espaço cartesiano e um arquivo mundial
Dada uma série de pares de coordenadas GPS, preciso calcular a área de um polígono (n-gon). Isso é relativamente pequeno (não superior a 50.000 pés quadrados). Os geocódigos são criados aplicando uma transformação afim com dados de um arquivo mundial.
Tentei usar uma abordagem em duas etapas convertendo os geocódigos em coordenadas cartesianas:
double xPos = (lon-lonAnchor)*( Math.toRadians( 6378137 ) )*Math.cos( latAnchor );
double yPos = (lat-latAnchor)*( Math.toRadians( 6378137 ) );
então eu uso umproduto cruzado cálculo para determinar a área.
A questão é que os resultados têm um pouco de precisão (cerca de 1%). Existe algo que eu possa procurar para melhorar isso?
Obrigado.