Search Postgresql Archives

Re: earthdistance compass bearing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/18/2013 11:16 AM, Jeff Herrin wrote:
I don't need it to be too accurate. We're pushing hotel info into the GDS (sabre, expedia, orbitz, etc). They require airport info relative to the hotel. Example: DFW is 25 miles NW of the property. I thought about just faking it...comparing the hotel's lat/long from the airports. I can probably get N,S,E,W reliably enough, but i'm not sure at what point N becomes NW, etc. That just seems like a really crude bad way to do it, but the alternatives seem unnecessarily complex. I found some examples that use bearing but they all take headings in degrees (which im not seeing in earthdistance). I guess I'm going to have to either setup postGIS or brush up on my trig.

half the difference. like, if NW is 45 degrees, then its anything +/- 22.5 degrees of that.

if you're willing to accept the error in cartesian vs spherical, its fairly simple. theta is asin(X/R) where X is the delta longitude, and R is the radius, aka your earthdistance. asin returns radians, so multiply by 180/pi() to get degrees. divide the degrees by 16/360 and truncate to an integer, and you should get 0-15, index the string array ('N','NW','NW','W','W','SW','SW','S','S','SE','SE','E','E','NE','NE','N') to get compass direction points. verify you got the polarity right on the delta longitude such that 0 == North and 90 degrees == West.



--
john r pierce                                      37N 122W
somewhere on the middle of the left coast



--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux