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 .

Zdarzenie opis
drawingchanged Wyzwolono, gdy każda współrzędna kształtu została dodana lub zmieniona.
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 Wyzwolono, gdy tryb rysunku uległ zmianie. 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 Mapy. W tym przykładzie możesz rysować kształty na mapie i obserwować je jako wyzwalane zdarzenia. 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.

Screenshot showing a map displaying data from a vector tile source.

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 Turf.js typu open source 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 platformy Azure Mapy. Aby zapoznać się z kodem źródłowym dla tego przykładu, zobacz Wybieranie danych w przykładowym kodzie rysunkowego obszaru wielokątowego.

Screenshot showing a map displaying points within polygon areas.

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. Kod można zmodyfikować i wykonać, klikając pozycję "Edytuj w piórze kodu" w prawym górnym rogu ramki. 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 do rysowania w celu wyszukiwania punktów zainteresowań w obszarach narysowanych, zobacz Rysowanie i wyszukiwanie obszaru wielokąta w przykładach usługi Azure Mapy. Aby zapoznać się z kodem źródłowym dla tego przykładu, zobacz Rysowanie i wyszukiwanie przykładowego kodu obszaru wielokątowego.

Screenshot showing a map displaying the Draw and search in polygon area sample.

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 jego narysaniu. 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 Mapy. Aby zapoznać się z kodem źródłowym dla tego przykładu, zobacz Tworzenie przykładowego kodu narzędzia do pomiaru.

Screenshot showing a map displaying the measuring tool sample.

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: