@Marcio
Joga no PostGIS e parte para o abraco.
exemplo: executando em um servidor remoto a seguinte SQL em Lon/Lat WGS84 escrita em um arquivo texto distlola.sql
begin;
SELECT ST_Distance('SRID=4326;POINT(-52.1235 -20.0000)'::geometry,'SRID=4326;POINT(-52.1235 -19.0000)'::geometry, false) as Distancia_m;
SELECT ST_Length('SRID=4326;LINESTRING ( -52.1235 -20.0000, -52.1235 -19.0000)'::geometry, false) as comprimento_m;
SELECT ST_Length('SRID=4326;LINESTRING ( -52.1235 -20.0000, -52.1235 -19.5000, -52.1235 -19.0000)'::geometry, false) as comprimento3_m;
commit;
Executando o
commit;jmenezes@gnu000:/tmp$ psql -h
cartognu.org -d ibge < distlola.sql
Senha para usuário jmenezes:
BEGIN
distancia_m
-----------------
111195.07973463
(1 registro)
comprimento_m
------------------
111195.079734632
(1 registro)
comprimento3_m
------------------
111195.079734632
(1 registro)
COMMIT