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:

Cybersource and WebCat ... again (2000) EIMS Problems (1997) WebCatalog + WebMerchant 2.1 for Windows released (1998) [include] (1998) (2000) webcat method for waiting specific amount of time? (2000) Re:quit command on NT (1997) encryption in browser? (1998) Webcat engine freezes when [tcpconnect] can't connect (2003) OT: Amazon Patents (2000) Webmerchant (1999) 2.0Beta Command Ref (can't find this instruction) (1997) Dates - Search and Sorting (1999) Extended [ConvertChars] (1997) Almost a there but..bye bye NetCloak (1997) Frames and cart values (1998) Secure server question (1997) Frames and WebCat (1997) One other big addition... (1997) Changing price for a SLU based on options (size, etc.) (1997)