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 |
Wyzwalane, gdy każda współrzędna w kształcie jest dodawana lub zmieniana. |
drawingchanging |
Wyzwolony, gdy jest wyświetlana dowolna współrzędna podglądu kształtu. Na przykład to zdarzenie jest uruchamiane wiele razy w miarę przeciągania współrzędnych. |
drawingcomplete |
Wyzwolony po zakończeniu rysowania lub wyjęciu kształtu z trybu edycji. |
drawingerased |
Wyzwalane po wymazaniu kształtu z menedżera rysunku w erase-geometry trybie. |
drawingmodechanged |
Wyzwolony po zmianie trybu rysunku. Nowy tryb rysunku jest przekazywany do programu obsługi zdarzeń. |
drawingstarted |
Wyzwolony, gdy użytkownik rozpoczyna rysowanie kształtu lub umieszcza kształt w trybie edycji. |
Aby zapoznać się z kompletnym roboczym przykładem wyświetlania danych ze źródła kafelka wektorowego na mapie, zobacz Zdarzenia narzędzi do rysowania w przykładach usługi Azure Maps. Ten przykład umożliwia rysowanie kształtów na mapie i obserwowanie ich w miarę wyzwalania zdarzeń. Aby zapoznać się z kodem źródłowym dla 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.
Przykłady
Zobaczmy kilka typowych scenariuszy korzystających ze zdarzeń narzędzi do rysowania.
Wybieranie punktów w obszarze wielokąta
Ten kod pokazuje, jak monitorować zdarzenie kształtów rysunku 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 dla tego przykładu, zobacz Wybieranie danych w przykładowym kodzie rysunkowego obszaru wielokątowego.
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 jest używane do określania drawingmodechanged
, kiedy użytkownik przełącza się do trybu rysunku, a to zdarzenie czyści kanwę rysunku.
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].
Tworzenie narzędzia do pomiaru
Poniższy kod pokazuje, jak zdarzenia rysunku mogą służyć do tworzenia narzędzia do pomiaru. Element drawingchanging
służy do monitorowania kształtu, ponieważ jest rysowany. 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 służy do określania drawingmodechanged
, kiedy użytkownik przełącza się w tryb rysunku. drawingmodechanged
Ponadto zdarzenie czyści kanwę rysunku i czyści stare informacje o pomiarze.
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.
Następne kroki
Dowiedz się, jak używać innych funkcji modułu narzędzi do rysowania:
Dowiedz się więcej o module usług:
Zapoznaj się z więcej przykładów kodu: