geometry - Cartesian to Latitude/Longtitude -


i have 3d model of 10km x 10km topographic map i've imported sketch-up , model bunch of x,y,z points (where x+ north , z+ straight up, perpendicular ground)

i know latitude longitude values of (0,0,0) point. given x,y,z point how latitude longitude values?

i need pretty accurate can't assume earth perfect sphere (you can assume it's ellipsoid)

for best accuracy need know map projection map drawn in. should able find out map. example in uk ordnance survey maps use osgb36 datum, , projection transverse mercator. projection tells how convert geographic (lat,long datum ellipsoid) coordinates map coordinates (easting , northing) , how reverse calculation, pretty want.

if don't know projection, next best thing if find out -- again map, written on -- scale-factor , convergence of projection @ points on map. point there spatially varying difference between map north (the direction north axis points in) , true north (the direction of north pole point, direction of latitude axis) , there spatiallty varying scale factor, ratio of distance in map coordinates , true distance. note not same thing scale of printed map (an inch mile or whatever), property of projection.

over 10km square, reasonably accurate treat both scale , convergence constants. given x,y point compute map bearing 0,0 using

b = atan2(x,y) 

and convert true bearing subtracting convergence.

you compute map distance

r = hypot(x,y)*s 

where s scale of map, e.g. if change of 1 in x coordinates represents distance of 100m, s 100

and convert r true distance dividing scale-factor.

finally want compute lat,long given distance , bearing given point (the lat,long of 0,0). accurate way use vincenty's formulae.

one thing note here scale , convergence, if quoted on map relative ellipoid used in construction of map, computing lat,long coordinates ellipsoid.


Comments

Popular posts from this blog

php - How to display all orders for a single product showing the most recent first? Woocommerce -

asp.net - How to correctly use QUERY_STRING in ISAPI rewrite? -

angularjs - How restrict admin panel using in backend laravel and admin panel on angular? -