Thomas Hambach - Web engineer

Web development & web design
home   -   portfolio   -   resume -   contact
Vroooooooaaaap, i'm an airplane
December 15th, 2007

Postcodes van alle gemeentes van België met GPS coördinaten

Voor een project, waarin ik de afstand moest weten tussen Belgische steden, had ik alle postcodes en plaatsnamen met GPS Coordinaten (breedte en lengte graad) nodig. Alle steden tesamen komt neer op zo’n 2000+ locaties elk met zijn unieke breedte en lengtegraad combinatie. Deze database van gemeentes en steden is handig indien je je gebruikers de mogelijkheid wil geven alles (autodealers, postkantoren, …) in een straal van X kilometer rondom hun gemeente of stad weer te geven.

Je kan deze database GRATIS downloaden. Moest je echter nog wat “spare-cash” hebben, mag je altijd wat geld naar paypal account thomas@rdlt.com sturen :D

Gratis download

Klik hier om de (My)SQL versie te downloaden

Klik hier om de CSV versie te downloaden

Klik hier om de XML versie te downloaden

Support

Support zal alleen gegeven worden aan donors. Doneer met paypal! Mijn paypal adres: thomas@rdlt.com

Data

(My)SQL Database layout

tabel: province (bevat alle provincies)

1
2
3
ID
Name: Naam van de provincie


tabel: city (bevat alle steden, gemeentes & dorpen)
1
2
3
4
5
6
7
8
ID
Alpha: URL-veilige naam van de stad
longitude: Lengtegraad
latitude: Breedtegraad
code: postcode
name: naam van de stad
province: Id van de provincie

CSV (Comma seperated)

Moet eigenlijk voor zich spreken.

XML

Moet eigenlijk voor zich spreken.

Afstanden berekenen

Om de afstanden te berekenen van stad A tot stad B kan je de volgende PHP code gebruiken

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

/*
*
* Geeft de afstand van A tot B adhv breedte- & lengtegraad
*
* @param float $lat1 Breedtegraad van A
* @param float $lat2 Breedtegraad van B
* @param float $lon1 Lengtegraad van A
* @param float $lon2 Lengtegraad van B
* @param string $unit Afstand in kilometer (K) of mijlen (M)
*
*/
function distance($lat1, $lon1, $lat2, $lon2, $unit)
{

$theta = $lon1 - $lon2;
$dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
$dist = acos($dist);
$dist = rad2deg($dist);
$miles = $dist * 60 * 1.1515;
$unit = strtoupper($unit);

if ($unit == “K”)
{
return ($miles * 1.609344);
}
else
{
return $miles;
}

}

Categories

Archives


Linky stuff

copyright 2008 by http://www.rdlt.com
Entries (RSS) - Register - Log in
Wordpress - RDLT Media - mortgage companies