Re: Radius-Based Zip Locator

This WebDNA talk-list message is from

2005


It keeps the original formatting.
numero = 61847
interpreted = N
texte = here is a php function that works just fine for locators. you just filter the distances you want - 10m, 20m, etc... the only thing is you have to find a formula to convert degrees to radius in wc - the deg2rad() function in php is doing that here. there must be a formula somewhere on wikipedia how to do that. here is the code: function decimal_distance($lat1,$lon1,$lat2,$lon2) { //$radius is determined using the following formula //(360 degrees)*(60 minutes per degree)*(1.852) km per minute //give a circumference of 40003.2 km //radius is circumference/(2*pi) which gives us 6637km or 3956miles $radius=3956; //$radius=3958.75; $lat1 = deg2rad ($lat1); $lat2 = deg2rad ($lat2); $lon1 = deg2rad ($lon1); $lon2 = deg2rad ($lon2); //Haversine Formula (from R.W. Sinnott, "Virtues of the Haversine", //Sky and Telescope, vol. 68, no. 2, 1984, p. 159): $dlon=$lon2-$lon1; $dlat=$lat2-$lat1; $sinlat=sin($dlat/2); $sinlon=sin($dlon/2); $a=($sinlat*$sinlat)+cos($lat1)*cos($lat2)*($sinlon*$sinlon); $c=2*asin(min(1,sqrt($a))); $d=$radius*$c; // return round($d,2); } > I have a database from Census.gov containing 42,000+ zip codes - each with > longitude and latitude. I also have the zip, longitude, and latitude for > each record in my dealer database. > > Would anyone care to share the [math] that performs the distance > calculations after a visitor to enters a zip and radius in miles? > > > > On 2/7/05 9:04 AM, "Clint Davis" wrote: > >> Anyone have a radius-based zip locator written in WebDNA that they might >> share or sell for cheap? I've been using a CGI that isn't providing >> enough >> flexibility and integration. > > > > ------------------------------------------------------------- > This message is sent to you because you are subscribed to > the mailing list . > To unsubscribe, E-mail to: > To switch to the DIGEST mode, E-mail to > > Web Archive of this list is at: http://webdna.smithmicro.com/ > -- ------------------------------------------------------------- This message is sent to you because you are subscribed to the mailing list . To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/ Associated Messages, from the most recent to the oldest:

    
  1. Re: Radius-Based Zip Locator ( Clint Davis 2005)
  2. Re: Radius-Based Zip Locator ( "kalin mintchev" 2005)
  3. Re: Radius-Based Zip Locator ( David M. Dantowitz 2005)
  4. Re: Radius-Based Zip Locator ( Clint Davis 2005)
  5. Re: Radius-Based Zip Locator ( "Christian F. Gurney" 2005)
  6. Re: Radius-Based Zip Locator ( "Brian Boegershausen" 2005)
  7. Radius-Based Zip Locator ( Clint Davis 2005)
here is a php function that works just fine for locators. you just filter the distances you want - 10m, 20m, etc... the only thing is you have to find a formula to convert degrees to radius in wc - the deg2rad() function in php is doing that here. there must be a formula somewhere on wikipedia how to do that. here is the code: function decimal_distance($lat1,$lon1,$lat2,$lon2) { //$radius is determined using the following formula //(360 degrees)*(60 minutes per degree)*(1.852) km per minute //give a circumference of 40003.2 km //radius is circumference/(2*pi) which gives us 6637km or 3956miles $radius=3956; //$radius=3958.75; $lat1 = deg2rad ($lat1); $lat2 = deg2rad ($lat2); $lon1 = deg2rad ($lon1); $lon2 = deg2rad ($lon2); //Haversine Formula (from R.W. Sinnott, "Virtues of the Haversine", //Sky and Telescope, vol. 68, no. 2, 1984, p. 159): $dlon=$lon2-$lon1; $dlat=$lat2-$lat1; $sinlat=sin($dlat/2); $sinlon=sin($dlon/2); $a=($sinlat*$sinlat)+cos($lat1)*cos($lat2)*($sinlon*$sinlon); $c=2*asin(min(1,sqrt($a))); $d=$radius*$c; // return round($d,2); } > I have a database from Census.gov containing 42,000+ zip codes - each with > longitude and latitude. I also have the zip, longitude, and latitude for > each record in my dealer database. > > Would anyone care to share the [math] that performs the distance > calculations after a visitor to enters a zip and radius in miles? > > > > On 2/7/05 9:04 AM, "Clint Davis" wrote: > >> Anyone have a radius-based zip locator written in WebDNA that they might >> share or sell for cheap? I've been using a CGI that isn't providing >> enough >> flexibility and integration. > > > > ------------------------------------------------------------- > This message is sent to you because you are subscribed to > the mailing list . > To unsubscribe, E-mail to: > To switch to the DIGEST mode, E-mail to > > Web Archive of this list is at: http://webdna.smithmicro.com/ > -- ------------------------------------------------------------- This message is sent to you because you are subscribed to the mailing list . To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/ "kalin mintchev"

DOWNLOAD WEBDNA NOW!

Top Articles:

Talk List

The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...

Related Readings:

[WebDNA] Yet another call for hosts... (2009) form data submission gets truncated (1997) [movefile] create stationery files (1998) OT: Collaborative Browsing (2000) [delete] problem (1997) info (1997) tax rate off by 1 cent (1997) Any one heard from SM since that last email? (2006) WebDNA Speed Test (2008) Why is this search finding the right thing?! (2002) Fun with Dates - any progress? (1997) breaking words (1997) Webmerchant confirmation hooks? (1997) TaxTotal Problem (1997) WCS Newbie question (1997) Newbie problem blah blah blah (1997) [ModDate] & [ModTime] ? (1997) WebCat2b13MacPlugIn - [shownext method=post] ??? (1997) group field search problem (2000) [cart] Taxrate - seriously .. (2002)