Tworzenie zestawu danych przy użyciu pakietu GeoJson (wersja zapoznawcza)
Usługa Azure Mapy Creator umożliwia użytkownikom importowanie danych mapy wewnętrznej w formacie GeoJSON za pomocą funkcji Facility Ontology 2.0, która następnie może służyć do tworzenia zestawu danych.
Uwaga
W tym artykule wyjaśniono, jak utworzyć zestaw danych na podstawie pakietu GeoJSON. Aby uzyskać informacje na temat dodatkowych kroków wymaganych do ukończenia mapy wewnętrznej, zobacz Następne kroki.
Wymagania wstępne
- Konto usługi Azure Mapy
- Klucz subskrypcji
- Zasób usługi Azure Mapy Creator
- konto usługi Azure Storage
- Podstawowa wiedza o twórcy na potrzeby map w pomieszczeniach
- Podstawowa wiedza na temat ontologii obiektu 2.0
- Pakiet zip zawierający wszystkie wymagane pliki GeoJSON. Jeśli nie masz plików GeoJSON, możesz pobrać przykład kompilacji firmy Contoso.
Ważne
- W tym artykule jest używany
us.atlas.microsoft.com
adres URL geograficzny. Jeśli usługa Creator nie została utworzona w Stany Zjednoczone, musisz użyć innego adresu URL geograficznego. Aby uzyskać więcej informacji, zobacz Access to Creator services (Dostęp do usług dla twórców). - W przykładach adresów URL w tym artykule należy zastąpić
{Your-Azure-Maps-Subscription-key}
kluczem subskrypcji usługi Azure Mapy.
Tworzenie zestawu danych przy użyciu pakietu GeoJSON
Aby uzyskać więcej informacji na temat pakietu GeoJSON, zobacz sekcję Wymagania dotyczące pakietu zip Geojson.
Przekazywanie pakietu GeoJSON
Wykonaj kroki opisane w artykule How to create data registry (Jak utworzyć rejestr danych), aby przekazać pakiet GeoJSON na konto usługi Azure Storage, a następnie zarejestrować go na koncie usługi Azure Mapy.
Ważne
Pamiętaj, aby zanotować wartość unikatowego identyfikatora (udid
), która będzie potrzebna. W udid
ten sposób odwołujesz się do pakietu GeoJSON przekazanego do konta usługi Azure Storage z kodu źródłowego i żądań HTTP.
Tworzenie zestawu danych
Zestaw danych to kolekcja funkcji mapy, takich jak budynki, poziomy i pokoje. Aby utworzyć zestaw danych na podstawie pliku GeoJSON, użyj nowego interfejsu API tworzenia zestawu danych. Interfejs API tworzenia zestawu danych pobiera dane udid
z poprzedniej sekcji i zwraca datasetId
nowy zestaw danych.
Ważne
Różni się to od poprzedniej wersji interfejsu API tworzenia zestawu danych, ponieważ nie wymaga conversionId
on elementu z przekonwertowanego pakietu rysunkowego.
Aby utworzyć zestaw danych:
- Wprowadź następujący adres URL do usługi zestawu danych. Żądanie powinno wyglądać podobnie do następującego adresu URL (zastąp element {udid} ciągiem uzyskanym
udid
w sekcji Przekazywanie pakietu GeoJSON):
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&udid={udid}&subscription-key={Your-Azure-Maps-Subscription-key}
- Skopiuj wartość
Operation-Location
klucza w nagłówku odpowiedzi. KluczOperation-Location
jest również znany jakostatus URL
i jest wymagany do sprawdzenia stanu procesu tworzenia zestawu danych i pobraniadatasetId
, który jest wymagany do utworzenia zestawu kafelków.
Sprawdzanie stanu tworzenia zestawu danych
Aby sprawdzić stan procesu tworzenia zestawu danych i pobrać element datasetId
:
Wprowadź adres URL stanu skopiowany w obszarze Tworzenie zestawu danych. Żądanie powinno wyglądać podobnie do następującego adresu URL:
https://us.atlas.microsoft.com/datasets/operations/{operationId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key}
W nagłówku odpowiedzi HTTP skopiuj wartość unikatowego identyfikatora zawartego w kluczu
Resource-Location
.https://us.atlas.microsoft.com/datasets/**c9c15957-646c-13f2-611a-1ea7adc75174**?api-version=2023-03-01-preview
Zobacz Następne kroki , aby uzyskać linki do artykułów, które ułatwiają ukończenie mapy wnętrz.
Dodawanie danych do istniejącego zestawu danych
Dane można dodać do istniejącego zestawu danych, podając datasetId
parametr do interfejsu API tworzenia zestawu danych wraz z unikatowym identyfikatorem danych, które chcesz dodać. Unikatowy identyfikator może być identyfikatorem udid
lub conversionId
. Spowoduje to utworzenie nowego zestawu danych składającego się z danych (obiektów) zarówno z istniejącego zestawu danych, jak i zaimportowanych nowych danych. Po pomyślnym utworzeniu nowego zestawu danych można usunąć stary zestaw danych.
Jedną z kwestii, które należy wziąć pod uwagę podczas dodawania do istniejącego zestawu danych, jest sposób tworzenia identyfikatorów funkcji. Jeśli zestaw danych jest tworzony na podstawie przekonwertowanego pakietu rysunkowego, identyfikatory funkcji są generowane automatycznie. Po utworzeniu zestawu danych na podstawie pakietu GeoJSON identyfikatory funkcji muszą być podane w pliku GeoJSON. Podczas dołączania do istniejącego zestawu danych oryginalny zestaw danych napędza sposób tworzenia identyfikatorów funkcji. Jeśli oryginalny zestaw danych został utworzony przy użyciu udid
elementu , używa identyfikatorów z pliku GeoJSON i będzie nadal to robić wraz ze wszystkimi pakietami GeoJSON dołączonymi do tego zestawu danych w przyszłości. Jeśli zestaw danych został utworzony przy użyciu conversionId
identyfikatora , zostaną wygenerowane wewnętrznie i będą nadal generowane wewnętrznie przy użyciu wszystkich pakietów GeoJSON dołączonych do tego zestawu danych w przyszłości.
Dodawanie do zestawu danych utworzonego na podstawie źródła GeoJSON
Jeśli oryginalny zestaw danych został utworzony na podstawie źródła goeJSON i chcesz dodać inny obiekt utworzony na podstawie pakietu rysunkowego, możesz dołączyć go do istniejącego zestawu danych, odwołując się do niego conversionId
, jak pokazano w tym żądaniu HTTP POST:
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&conversionId={conversionId}&outputOntology=facility-2.0&datasetId={datasetId}
Identyfikator | opis |
---|---|
identyfikator konwersji | Identyfikator zwrócony podczas konwertowania pakietu rysunkowego. Aby uzyskać więcej informacji, zobacz Konwertowanie pakietu rysunku. |
datasetId | Identyfikator zestawu danych zwrócony podczas tworzenia oryginalnego zestawu danych z pakietu GeoJSON. |
Wymagania dotyczące pakietu zip w formacie Geojson
Pakiet zip GeoJSON składa się z co najmniej jednego zgodnego pliku GeoJSON RFC 7946 , jeden dla każdej klasy funkcji, wszystkie w katalogu głównym (podkatalogi nie są obsługiwane), skompresowane ze standardową kompresją zip i nazwane przy użyciu .ZIP
rozszerzenia.
Każdy plik klasy cech musi być zgodny z definicją w klasie Facility Ontology 2.0 , a każda funkcja musi mieć unikatowy identyfikator globalny.
Identyfikatory funkcji mogą zawierać tylko znaki alfanumeryczne (a-z, A-Z, 0-9), łącznik (-), kropkę (.) i znaki podkreślenia (_).
Napiwek
Jeśli chcesz mieć pewność, że masz unikatowy identyfikator globalny (GUID), rozważ utworzenie go, uruchamiając narzędzie do generowania identyfikatora GUID, takiego jak program wiersza polecenia Guidgen.exe (dostępny w programie Visual Studio). Guidgen.exe nigdy nie generuje tej samej liczby dwa razy, niezależnie od tego, ile razy jest uruchamiany lub ile różnych maszyn jest uruchomionych.
Walidacje ontologii obiektu 2.0 w zestawie danych
Funkcja Ontology 2.0 definiuje sposób, w jaki usługa Azure Mapy Creator wewnętrznie przechowuje dane obiektów, podzielone na klasy cech w zestawie danych twórcy. Podczas importowania pakietu GeoJSON po dodaniu lub zmodyfikowaniu funkcji zostanie uruchomiona seria walidacji. Obejmuje to kontrole integralności referencyjnej oraz weryfikacje geometrii i atrybutów. Te weryfikacje zostały szczegółowo opisane na poniższej liście.
- Maksymalna liczba funkcji, które można zaimportować do zestawu danych, wynosi 150 000.
- Powierzchnia obiektu może należeć do zakresu od 4 do 4000 km kw.
- Element najwyższego poziomu to obiekt, który definiuje każdy budynek w pliku facility.geojson.
- Każdy obiekt ma co najmniej jeden poziom zdefiniowany w pliku levels.goejson.
- Każdy poziom musi znajdować się wewnątrz obiektu.
- Każdy poziom zawiera jednostki, struktury, pionowePenetrations i otwory. Wszystkie elementy zdefiniowane na poziomie muszą być w pełni zawarte w geometrii poziomu.
unit
może składać się z tablicy elementów, takich jak korytarze, biura i dziedzińce, które są zdefiniowane według elementów obszaru, linii lub punktu . Jednostki są definiowane w pliku unit.goejson.- Wszystkie
unit
elementy muszą być w pełni zawarte w ich poziomie i przecinać się ze swoimi elementami podrzędnymi.
- Wszystkie
structure
definiuje fizyczne, nienakładujące się obszary, przez które nie można przechodzić, takich jak ściana. Struktury są definiowane w pliku structure.goejson.verticalPenetration
reprezentuje metodę nawigowania w pionie między poziomami, takimi jak schody i windy, i są zdefiniowane w pliku verticalPenetration.geojson.- verticalPenetrations nie może przecinać się z innymi pionowymipenetrations na tym samym poziomie.
openings
zdefiniuj granice przechodzenia między dwiema jednostkami lub elementamiunit
iverticalPenetration
są zdefiniowane w pliku opening.geojson.- Otwory nie mogą przecinać się z innymi otworami na tym samym poziomie.
- Każdy
opening
musi być skojarzony z co najmniej jednymverticalPenetration
lubunit
.