Flex i Google Maps API – markery

06-09-2010 przez Piotr Wierzgała Zostaw odpowiedź »

Markery służą do oznaczania wybranych pozycji na mapie. Domyślna ikona markera to mały, blado-czerwony, obrazek z czarnym obramowaniem w kształcie odwróconej łzy.

marker

Spis treści

Aplikacja

Poniższa aplikacja pozwala na przetestowanie działania większości pól opcji markera. Dostęp do źródła można uzyskać poprzez kliknięcie prawym przyciskiem myszy w obszar aplikacji i wybranie opcji “View Source” z menu kontekstowego.

Marker

Marker tworzymy za pomocą klasy Marker. Jej konstruktor przyjmuje dwa parametry: współrzędne geograficzne, które będzie oznaczał marker, oraz opcjonalnie obiekt klasy MarkerOptions definiujący właściwości markera. Po stworzeniu markera dodajemy go do mapy za pomocą metody addOverlay.

Przykład:

var marker:Marker = new Marker(
    new LatLng(51.24,22.56),
    new MarkerOptions()
);
map.addOverlay(marker);

Opcje markera

Właściwości markera jakie możemy ustawić za pomocą klasy MarkerOptions to:

  • clickable: Wartość logiczna określająca czy marker będzie klikalny. Markery, które nie są klikalne nie generują zdarzeń MapMouseEvent.CLICK i MapMouseEvent.DOUBLE_CLICK, ale mogą, o ile ich zmienna draggable ma wartość true, generować inne zdarzenia. Nad markerami, które nie są klikalne nie pojawia się kursor dłoni.
  • distanceScaling: Wartość logiczna określająca czy marker będzie skalowany wraz ze zmianą odległości na mapie 3D. Wartość tej zmiennej jest ignorowana jeżeli mapa 3D nie jest aktywna.
  • draggable: Wartość logiczna określająca czy marker będzie mógł przeciągany po mapie.
  • gravity: Siła z jaką marker będzie przyciągany do mapy.
  • hasShadow: Wartość logiczna określająca czy marker będzie rzucał cień.
  • tooltip: Treść napisu pojawiającego się po najechaniu na marker.
  • label: Treść napisu wyświetlanego na markerze.
  • labelFormat: Obiekt typu TextFormat definiujący wygląd napisu wyświetlanego na markerze.
  • radius: Określa promień (rozmiar) markera.
  • fillStyle: Obiekt typu FillStyle określający styl wypełnienia markera.
  • strokeStyle: Obiekt typu StrokeStyle określający styl obrysowania markera.
  • icon: Obiekt typu DisplayObject określający ikonę markera.
  • iconAlignment: Określa punkt markera, który zostanie użyty do wyrównania jego pozycji względem przypisanych mu współrzędnych geograficznych.
  • iconOffset: Obiekt klasy Point określający wartości przesunięcia markera wzdłuż osi X i Y względem punktu wyrównania markera (icon alignment).

Przykład:

var markerOptions:MarkerOptions = new MarkerOptions({
    clickable: true,
    hasShadow: true,
    radius: 20,
    gravity: 10,
    iconOffset: new Point(0,0),
    tooltip: "tooltip",
    label: "label ",
    fillStyle: new FillStyle({
        color: 0xff0000,
        alpha: .7
    }),
    strokeStyle: new StrokeStyle({
        color: 0x000000,
        alpha: 1,
        thickness: 2
    })
});

Żeby zastosować tak stworzony obiekt klasy MarkerOptions przekazujemy go jako drugi parametr konstruktora klasy Marker lub jako parametr metody setOptions klasy Marker.

Reklama

1 komentarz

  1. adrian pisze:

    zajebisty opis , dzieki bardzo , pomogles mi

Dodaj komentarz

Flexmaniaks on Facebook