Post

Latitudine e longitudine

In Diario, Personalizzazione on 20/12/2009 by paooolino

Le prossime variabili da parametrizzare sono latitudine e longitudine, in modo da poter centrare la mappa alle coordinate desiderate.

Il procedimento è del tutto simile a quello utilizzato per parametrizzare le dimensioni; vediamo comunque in dettaglio come fare.

Dichiariamo due nuove variabili membro, $latitude e $longitude ed inizializzamole nel costruttore.

class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
	private $latitude;
	private $longitude;

	function __construct($_apikey){
		$this->apikey = $_apikey;
		$this->dimX = 500;
		$this->dimY = 300;
		$this->latitude = 0;
		$this->longitude = 0;
	}

Scriviamo la funzione setCoordinates che si occupa di impostare le variabili appena dichiarate:

	function setCoordinates($lat, $long){
		$this->latitude = $lat;
		$this->longitude = $long;
	}

Modifichiamo il metodo renderJS in modo che prenda in considerazione le nuove variabili:

	function renderJS(){
		echo "
			<script src=\"http://maps.google.com/maps?file=api&v=2&key=". $this->apikey ."&sensor=false\" type=\"text/javascript\">
			</script>
		";

		echo "
			<script type=\"text/javascript\">
				window.onload = initialize;
				window.onunload = GUnload;

				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\"map_canvas\"));
						map.setCenter(new GLatLng(".$this->latitude.", ".$this->longitude."), 13);
						map.setUIToDefault();
					}
				}
			</script>
		";
	}

Aggiungiamo alla pagina base.php una chiamata a setCoordinates con le coordinate (che ormai conosciamo) di Palo Alto:

	$map->setCoordinates(37.4419, -122.1419);

Et Voilà.

Naturalmente potete cambiare le coordinate in modo da poter centrare la vostra mappa in qualunque parte del mondo. Ma non è così facile sapere le coordinate di… casa vostra vero?

Per questo sfrutteremo, nel prossimo post, il servizio GeoCoding che permette di trasformare un indirizzo (Piazza Duomo 4, Milano ad esempio) in coordinate da dare in pasto alla nostra mappa. Andiamo!

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Follow

Get every new post delivered to your Inbox.