Dodawanie ikon obiektów na mapę
Jeśli chcemy zaznaczyć ikoną punkt (lub punkty) na mapie używamy funkcji addIconsToMap.
Parametrami tej funkcji są lista obiektów (punktów na mapie) oraz nazwa grupy
dodawanych obiektów.
Przed dodaniem punktów na mapę tworzymy ich listę. Każdy element listy jest
obiektem MapgoIcon. Obiekt MapgoIcon ma następujące zmienne:
lon - długość geograficzna punktu
lat - szerokość geograficzna punktu
descr - opis pojawiający się w dymku po najechaniu kursorem na ikonę
(patrz punkt Tooltipy ikon)
width - szerokość ikony
height - wysokość ikony
image - źródło ikony np. 'http://www.mapGO.pl/portal/gfx/adres.png'
(ikonami muszą być obrazy .png 24bit)
icon_offx - przesunięcie ikony na mapie w osi x
icon_offy - przesunięcie ikony na mapie w osi y
Dodatkowego komentarza wymagają zmienne icon_offx i icon_offy.
Służą one do optymalnego spozycjonowania ikony na mapie. Jeśli nie ustawimy
tych wartości to punkt na mapie będzie wskazywać lewy górny róg ikony co nie
zawsze odpowiada naszym oczekiwaniom. Jeśli np. chcemy żeby punkt na mapie
wskazywał środek ikony to :
icon_offx=-SZEROKOŚĆ_IKONY/2
icon_offy=-WYSOKOŚĆ_IKONY/2
Dlaczego takie wartości? Środek ikony ma współrzędne
SZEROKOŚĆ_IKONY/2,WYSOKOŚĆ_IKONY/2. Przesuwamy go w górę/lewo więc musimy odjąć
od domyślnej lokalizacji ikony połowę szerokości/wysokości ikony żeby jej
środek wskazywał punkt na mapie.
Jeśli nie mamy własnej ikony możemy użyć standardowej ikony :
http://www.mapGO.pl/portal/gfx/adres.png do zaznaczania punktu na
mapie. W takiej sytuacji podajemy tylko współrzędne punktu na mapie i opis
punktu. Przykład ze standardową ikoną:
//tworzymy tablicę w którą będziemy wstawiać kolejne obiekty do wyświetlenia na mapie var object_list=new Array(); //tworzymy obiekt ikony var icon1=new MapgoIcon(); //podajemy opis obiektu - pojawi się w dymku po najechaniu kursorem myszy na obiekt icon1.descr='Warszawa Górczewska 212/226'; //podajemy współrzędne obiektu icon1.lon=21.000656; icon1.lat=52.222992; //dodajemy obiekt do listy object_list.push(icon1); //dodajemy listę obiektów do mapy, "sample_objects" - nazwa grupy obiektów dodawanych //do mapy (warstwa obiektów) mapobject.addIconsToMap(object_list,"sample_objects");
Przykład z dowolną ikoną:
//tworzymy tablicę w którą będziemy wstawiać kolejne obiekty do wyświetlenia na mapie var object_list=new Array(); //tworzymy obiekt ikony var icon1=new MapgoIcon(); //podajemy opis obiektu - pojawi się w dymku po najechaniu kursorem myszy na obiekt icon1.descr='Warszawa ul. Koszykowa'; //źródło ikony (.png 23bit) icon1.image='http://www.mapGO.pl/portal/gfx/push_red.png'; //szerokość ikony icon1.width=21; //wysokość ikony icon1.height=30; //przesunięcie ikony w osi x icon1.icon_offx=-3; //przesunięcie ikony w osi y icon1.icon_offy=-30; //podajemy współrzędne obiektu icon1.lon=21.000656; icon1.lat=52.222992; //dodajemy obiekt do listy object_list.push(icon1); //dodajemy listę obiektów do mapy, "sample_objects" - nazwa grupy obiektów dodawanych //do mapy (warstwa obiektów) mapobject.addIconsToMap(object_list,"sample_objects"); //ustalamy centrum i skalę mapy mapobject.centerMap(21.000656,52.222992,5);