st_distance between a point and an edge using GeographicLib.
Thank you very much for the answer. But don't curse me yet :) I care, but I can probably work around it. I can modify my edge and add interior vertices that are on the wgs84 edge (tessellate) and thus reduce the error when projecting a point to the edge on the sphere.
> Yes, you've got it right. The projected point is done in sphere world for > speed, and then the point-to-point distance is done on spheroid. Most > people don't care. Curse you for caring :) > P
>> Hello, >> >> I am trying to verify the distance calculation (using geographies and >> use_spheroid=true) between a line and a point. >> >> I have used GeographicLib to generate a geodesic (using the wgs84 >> ellipsoid) between points 0 0 and 10 50 (lng lat). I generate a point lies >> on the edge (at the mid point) which is 3.<a href="tel:91451185%2025" value="+19145118525" style="font-size:12.8px">91451185 25.11977359. When I use >> st_distance to compute the distance between the edge and the point I expect >> the answer to be close to 0. But it is not. >> >> select st_distance(st_geogfromtext('SRID=4326;point( 3.91451185 >> 25.11977359 )'),st_geogfromtext('SRID=4326;linestring(0.00000000 >> 0.00000000, 10 50 )'), true); >> produces: 274.54332271 meters. If I use use_spheroid=false the answer >> is 274.10911308. >> >> Is this because the distance calculation between a point and a line is >> done by projecting the point to the line assuming a perfect sphere? Or am I >> doing something wrong? >> >> I am using Postgresql-9.5 and PostGIS-2.2 on Ubuntu 16.04.