Zdarzenia narzędzi do rysowania

W przypadku korzystania z narzędzi do rysowania na mapie warto reagować na określone zdarzenia, gdy użytkownik korzysta z mapy. Ta tabela zawiera listę wszystkich zdarzeń obsługiwanych przez klasę DrawingManager .

Wydarzenie opis
drawingchanged Wywoływane, gdy dowolna współrzędna w kształcie zostanie dodana lub zmieniona.
drawingchanging Uruchamiane, gdy wyświetlana jest dowolna współrzędna podglądu kształtu. Na przykład to zdarzenie jest wywoływane wielokrotnie podczas przeciągania współrzędnej.
drawingcomplete Wyzwalane po zakończeniu rysowania kształtu lub po wyjściu z trybu edycji.
drawingerased Wyzwalane po wymazaniu kształtu z menedżera rysunku w erase-geometry trybie.
drawingmodechanged Wywoływane, gdy zmienia się tryb rysowania. Nowy tryb rysunku jest przekazywany do programu obsługi zdarzeń.
drawingstarted Uruchamiane, gdy użytkownik rozpoczyna rysowanie kształtu lub przełącza kształt w tryb edycji.

Aby zapoznać się z kompletnym przykładem wyświetlania danych ze źródła kafelków wektorowych na mapie, zobacz Zdarzenia narzędzi do rysowania w Azure Maps Samples. W tym przykładzie można rysować kształty na mapie i obserwować, jak wywoływane są zdarzenia. Aby zapoznać się z kodem źródłowym tego przykładu, zobacz Przykładowy kod zdarzeń narzędzi do rysowania.

Na poniższej ilustracji przedstawiono zrzut ekranu przedstawiający kompletny przykład roboczy, który pokazuje, jak działają zdarzenia w module Narzędzia rysunkowe.

Zrzut ekranu przedstawiający mapę wyświetlającą dane ze źródła kafelków wektorowych.

Przykłady

Przyjrzyjmy się kilku typowym scenariuszom wykorzystującym zdarzenia narzędzi do rysowania.

Wybieranie punktów w obszarze wielokąta

Ten kod pokazuje, jak monitorować zdarzenie rysowania kształtów przez użytkownika. W tym przykładzie kod monitoruje kształty wielokątów, prostokątów i okręgów. Następnie określa, które punkty danych na mapie znajdują się w obszarze narysowanym. Zdarzenie drawingcomplete jest używane do wyzwalania logiki wybierania. W logice select kod przechodzi przez wszystkie punkty danych na mapie. Sprawdza, czy występuje przecięcie punktu i obszaru narysowanego kształtu. W tym przykładzie użyto biblioteki open source Turf.js do wykonywania obliczeń dotyczących skrzyżowania przestrzennego.

Aby zapoznać się z kompletnym roboczym przykładem użycia narzędzi do rysowania obszarów wielokąta na mapie z punktami, które można wybrać, zobacz Wybieranie danych w rysowanym obszarze wielokąta w przykładach usługi Azure Maps. Aby zapoznać się z kodem źródłowym tego przykładu, zobacz Kod przykładowy: wybieranie danych w obszarze narysowanego wielokąta.

Zrzut ekranu przedstawiający mapę wyświetlającą punkty w obszarach wielokątnych.

Rysowanie i wyszukiwanie w obszarze wielokąta

Ten kod wyszukuje punkty zainteresowań wewnątrz obszaru kształtu po zakończeniu rysowania kształtu przez użytkownika. Zdarzenie drawingcomplete jest używane do wyzwalania logiki wyszukiwania. Jeśli użytkownik rysuje prostokąt lub wielokąt, wykonywane jest wyszukiwanie wewnątrz geometrii. Jeśli okrąg jest rysowany, promień i położenie środkowe są używane do wyszukiwania punktu orientacyjnego. Zdarzenie drawingmodechanged służy do określenia, kiedy użytkownik przełącza się do trybu rysowania, a zdarzenie to czyści obszar rysowania.

Aby zapoznać się z kompletnym roboczym przykładem użycia narzędzi rysunkowych do wyszukiwania punktów zainteresowań w obszarach narysowanych, zobacz Rysowanie i wyszukiwanie obszaru wielokąta w przykładach usługi Azure Maps. Aby uzyskać kod źródłowy dla tego przykładu, zobacz [Rysuj i wyszukaj przykładowy kod obszaru wielokątowego].

Zrzut ekranu przedstawiający mapę z przykładem „Rysowanie i wyszukiwanie w obszarze wielokąta”.

Tworzenie narzędzia do pomiaru

Poniższy kod pokazuje, jak zdarzenia rysunku mogą służyć do tworzenia narzędzia do pomiaru. drawingchanging służy do śledzenia kształtu podczas jego rysowania. Gdy użytkownik przesuwa mysz, wymiary kształtu są obliczane. Zdarzenie drawingcomplete jest używane do wykonania końcowego obliczenia kształtu po zakończeniu rysunku. Zdarzenie drawingmodechanged jest używane do określania momentu, w którym użytkownik przełącza się do trybu rysowania. Ponadto drawingmodechanged zdarzenie czyści obszar rysunku i usuwa stare informacje o pomiarach.

Aby zapoznać się z kompletnym roboczym przykładem używania narzędzi do rysowania w celu mierzenia odległości i obszarów, zobacz Tworzenie narzędzia do pomiaru w przykładach usługi Azure Maps. Aby zapoznać się z kodem źródłowym dla tego przykładu, zobacz Tworzenie przykładowego kodu narzędzia do pomiaru.

Zrzut ekranu przedstawiający mapę przedstawiającą przykładowe narzędzie do pomiaru.

Następne kroki

Dowiedz się, jak używać innych funkcji modułu narzędzi do rysowania:

Zapoznaj się z więcej przykładów kodu: