Google Maps – Mapa na własną stronę WWW

Google Maps to niezwykle przydatne narzędzie. Poza możliwością szukania miejsc i tras udostępnia API, które pozwala na tworzenie nawet bardzo zaawansowanych aplikacji wykorzystujących mapy. W tym wpisie postanowiłem przedstawić krótkie wprowadzenie do API w wersji 3.



Przykład omawiany w tym wpisie będzie budowany z wykorzystaniem API w wersji 3.

Jak to działa?

Działa to dość prosto. Praca sprowadza się do tego, że najpierw trzeba podpiąć odpowiednią bibliotekę Google. Następnie stworzyć w kodzie strony odpowiedni kontener na mapę. A na koniec korzystając z biblioteki Google Maps API i Java Script można stworzyć na stronie odpowiedni mechanizm wyświetlający mapę.

Krok 1: Podłączenie biblioteki Google Maps API

Podpięcie do strony biblioteki wymaga dodania następującej linijki kodu:

<script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script>

Od tego momentu na stronie możliwe jest korzystanie z Google Maps API.

Krok 2: Kontener dla mapy

Bardzo ważnym elementem korzystania z map jest stworzenie na stronie kontenera, w którym będzie wyświetlana mapa. Pozniżej zaprezentowany jest kod, który tworzy kontener o identyfikatorze map_canvas. Identyfikator ten będzie wykorzystywany podczas generowania mapy.

<div id="map_canvas" style="width: 600px; height: 500px;"></div>

W podanym przykładzie mapa ma wymiary 600 na 500 pikseli. Nic nie stoi na przeszkodzie, żeby wymiary mapy przyjęły dowolne wartości.

Krok 3: Obsługa mapy plus jQuery

Ostatni etap dla tego prostego przykładu to stworzenie funkcji, która zainicjuje działanie mapy oraz doda na niej jeden marker. W tym przypadku będzie to marker pokazujący Lotnisko im. Chopina w Warszawie.
Znajdująca się poniżej funkcja odpowiada za utworzenie mapy hybrydowej wyśrodkowanej na lotnisko im. Chopina z markerem na nie wskazującym:

function google_maps_initialize()
{
var lotniskoWarszawa = new google.maps.LatLng(52.172517,20.973716);
var myOptions =
{
zoom: 16,
center: lotniskoWarszawa,
mapTypeId: google.maps.MapTypeId.HYBRID
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions)
var marker = new google.maps.Marker(
{
map: map,
position: lotniskoWarszawa
});
}

Zmienna lotniskoWarszawa zawiera współrzędne geograficzne lotniska. W podanym przykładzie należy podać dokładne współrzędne punktu jaki ma być wskazywany, ale biblioteka Google Maps oferuje narzędzie tłumaczące adresy na współrzędne geograficzne. Temat ten wybiega poza zakres tego wspisu i będzie poruszony w osobnym.

var lotniskoWarszawa = new google.maps.LatLng(52.172517,20.973716);

Następnie ustawiane są parametry mapy. W tym przypadku ustawiany jest zoom określający przybliżenie mapy. Czym wyższa wartość tym przybliżenie jest większe. Następny parametr to center określający punkta jaki ma się znaleźć na środku mapy. W tym wypadku będą to współrzędne wskazywane przez zmienną lotniskoWarszawa. Ostatnia wartość to wybranie typu mapy. Tutaj będzie to mapa hybrydowa.

var myOptions =
{
zoom: 16,
center: lotniskoWarszawa,
mapTypeId: google.maps.MapTypeId.HYBRID
}

Kolejny krok polega na utworzeniu w kontenerze o indetyfikatorze map_canvas mapy zgodnie z ustawieniami zapisanymi w zmiennej myOptions.

var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions)

Ostatni etap to utworzenie markera. W tym celu należy wskazać zmienną zawierającą mapę oraz lokalizację w jakiej ma być umieszczony marker. W omawianym przykładzie jest to lokalizacja lotniska, czyli marker powinien pokazać się na środku mapy.

var marker = new google.maps.Marker(
{
map: map,
position: lotniskoWarszawa
});
}

Na koniec warto wykorzystując jQuery stworzyć wyzwalacz funkcji tworzącej mapę Google dopiero po pełnym załadowaniu strony:

$(document).ready(function()
{
google_maps_initialize()
});

Przykładowa mapa

Poniżej znajduje się mapa będąca efektem działania omawianego przykładu:

Podsumowanie

I to w sumie wszystko co jest nieznędne do uruchomienia mapy. Tymi paroma krokami można stworzyć mapę na własnej stronie. W kolejnych wpisach na temat Google Maps opiszę bardziej zaawansowane opcje, a dla tych, którzy są mniej cierpliwi polecam lekturę dokumentacji Google Maps API V3 dostarczanej przez Google.

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Warning: Use of undefined constant XML - assumed 'XML' (this will throw an Error in a future version of PHP) in /home/klient.dhosting.pl/trajluk/zenbox/trajdos.pl/public_html/wp-content/plugins/wp-syntaxhighlighter/wp-syntaxhighlighter.php on line 1048