Erstellen eines Datasets mit einem GeoJson-Paket (Vorschau)
Hinweis
Einstellung von Azure Maps Creator
Der Gebäudeplandienst Azure Maps Creator ist veraltet und wird am 30. September 2025 eingestellt. Weitere Informationen finden Sie unter Ankündigung zum Ende des Lebenszyklus von Azure Maps Creator.
Azure Maps Creator ermöglicht Benutzern das Importieren ihrer Gebäudeplandaten im GeoJSON-Format mit Facility Ontology 2.0. Anschließend können sie zum Erstellen eines Datasets verwendet werden.
Voraussetzungen
- Ein Azure Maps-Konto
- Ein Abonnementschlüssel
- Eine Creator-Ressource in Azure Maps
- Ein Azure Storage-Konto
- Grundlegendes Verständnis von Creator für Gebäudepläne
- Grundlegendes Verständnis von Facility Ontology 2.0.
- Zip-Paket mit allen erforderlichen GeoJSON-Dateien. Wenn Sie nicht über GeoJSON-Dateien verfügen, können Sie das Contoso-Gebäudebeispiel herunterladen.
Wichtig
- In diesem Artikel wird die geografische URL
us.atlas.microsoft.com
verwendet. Wenn Ihr Creator-Dienst nicht in den USA erstellt wurde, müssen Sie eine andere geografische URL verwenden. Weitere Informationen finden Sie unter Zugreifen auf Creator-Dienste. - In den URL-Beispielen in diesem Artikel müssen Sie
{Your-Azure-Maps-Subscription-key}
durch Ihren Azure Maps-Abonnementschlüssel ersetzen.
Erstellen eines Datasets mit dem GeoJSON-Paket
Weitere Informationen zum GeoJSON-Paket finden Sie im Abschnitt Anforderungen für das Geojson-Zip-Paket.
Hochladen des GeoJSON-Pakets
Führen Sie die im Artikel Erstellen der Datenregistrierung beschriebenen Schritte aus, um das GeoJSON-Paket in Ihr Azure Storage-Konto hochzuladen und dann in Ihrem Azure Maps-Konto zu registrieren.
Wichtig
Notieren Sie sich unbedingt den Wert des eindeutigen Bezeichners (udid
), da Sie ihn benötigen werden. Über udid
verweisen Sie aus Ihrem Quellcode und aus den HTTP-Anforderungen auf das GeoJSON-Paket, das Sie in Ihr Azure Storage-Konto hochgeladen haben.
Erstellen eines Datasets
Ein Dataset ist eine Sammlung von Kartenfeatures wie Gebäuden, Ebenen und Räumen. Zum Erstellen eines Datasets aus Ihrem GeoJSON verwenden Sie die neue Dataseterstellungs-API. Die Dataseterstellungs-API verwendet die udid
, die Sie im vorherigen Abschnitt erhalten haben, und gibt die datasetId
des neuen Datasets zurück.
Wichtig
Dies unterscheidet sich von der vorherigen Version der API zur Dataseterstellung insofern, als keine conversionId
aus einem konvertierten Zeichnungspaket erforderlich ist.
So erstellen Sie ein Dataset:
- Geben Sie die folgende URL für den Datasetdienst ein. Die Anforderung sollte in etwa wie die folgende URL aussehen (ersetzen Sie {udid} durch die
udid
, die Sie im Abschnitt Hochladen des GeoJSON-Pakets erhalten haben):
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&udid={udid}&subscription-key={Your-Azure-Maps-Subscription-key}
- Kopieren Sie den Wert des Schlüssels
Operation-Location
im Antwortheader. DerOperation-Location
-Schlüssel wird auch als diestatus URL
bezeichnet und ist erforderlich, um den Status des Dataseterstellungsprozesses zu überprüfen und diedatasetId
abzurufen, die zum Erstellen eines Kachelsets benötigt wird.
Überprüfen des Status der Dataseterstellung
So können Sie den Status der Dataseterstellung überprüfen und die Dataset-ID (datasetId
) abrufen:
Geben Sie die Status-URL ein, die Sie in Erstellen eines Datasets kopiert haben. Die Anforderung sollte wie die folgende URL aussehen:
https://us.atlas.microsoft.com/datasets/operations/{operationId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key}
Kopieren Sie im Header der HTTP-Antwort den Wert des eindeutigen Bezeichners, der im
Resource-Location
-Schlüssel enthalten ist.https://us.atlas.microsoft.com/datasets/**c9c15957-646c-13f2-611a-1ea7adc75174**?api-version=2023-03-01-preview
Hinzufügen von Daten zu einem vorhandenen Dataset
Daten können einem vorhandenen Dataset hinzugefügt werden, indem der API zum Erstellen von Datasets der datasetId
-Parameter zusammen mit dem eindeutigen Bezeichner der Daten bereitgestellt wird, die hinzugefügt werden sollen. Bei dem eindeutigen Bezeichner kann es sich entweder um eine udid
oder um eine conversionId
handeln. Dadurch wird ein neues Dataset erstellt, das aus den Daten (Einrichtungen) sowohl des vorhandenen Datasets als auch der zu importierenden neuen Daten besteht. Nachdem das neue Dataset erfolgreich erstellt wurde, kann das alte Dataset gelöscht werden.
Beim Hinzufügen zu einem vorhandenen Dataset muss berücksichtigt werden, wie die Feature-IDs erstellt werden. Wenn ein Dataset aus einem konvertierten Zeichnungspaket erstellt wird, werden die Feature-IDs automatisch generiert. Wenn ein Dataset aus einem GeoJSON-Paket erstellt wird, müssen die Feature-IDs in der GeoJSON-Datei angegeben werden. Beim Anfügen an ein vorhandenes Dataset steuert das ursprüngliche Dataset die Weise, wie Feature-IDs erstellt werden. Wenn das ursprüngliche Dataset mithilfe einer udid
erstellt wurde, verwendet es die IDs aus dem GeoJSON und setzt dies auch weiterhin mit allen GeoJSON-Paketen fort, die an dieses Dataset angefügt werden. Wenn das Dataset mithilfe einer conversionId
erstellt wurde, werden die IDs intern generiert, und auch für alle weiteren GeoJSON-Pakete, die in Zukunft an das Dataset angefügt werden, werden die IDs intern generiert.
Hinzufügen zu einem Dataset, das aus einer GeoJSON-Quelle erstellt wurde
Wenn Ihr ursprüngliches Dataset aus einer GeoJSON-Quelle erstellt wurde und Sie eine weitere Einrichtung hinzufügen möchten, die aus einem Zeichnungspaket erstellt wurde, können Sie sie an Ihr vorhandenes Dataset anfügen, indem Sie auf seine conversionId
verweisen, wie in dieser HTTP POST-Anforderung veranschaulicht:
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&conversionId={conversionId}&outputOntology=facility-2.0&datasetId={datasetId}
Bezeichner | BESCHREIBUNG |
---|---|
conversionId | Die ID, die beim Konvertieren des Zeichnungspakets zurückgegeben wird. |
datasetId | Die Dataset-ID, die beim Erstellen des ursprünglichen Datasets aus einem GeoJSON-Paket zurückgegeben wird. |
Anforderungen für das Geojson-ZIP-Paket
Das GeoJSON-ZIP-Paket besteht aus mindestens einer RFC 7946-konformen GeoJSON-Datei, eine für jede Featureklasse, alle im Stammverzeichnis (Unterverzeichnisse werden nicht unterstützt), mit standardmäßiger ZIP-Komprimierung komprimiert und mit der .ZIP
-Erweiterung benannt.
Jede Featureklassendatei muss mit ihrer Definition in Facility Ontology 2.0 übereinstimmen, und jedes Feature muss einen global eindeutigen Bezeichner aufweisen.
Feature-IDs dürfen nur alphanumerische Zeichen (a–z, A–Z, 0–9), Bindestriche (-), Punkte (.) und Unterstriche (_) enthalten.
Tipp
Wenn Sie sicher sein möchten, dass Sie über einen global eindeutigen Bezeichner (GUID) verfügen, sollten Sie ihn erstellen, indem Sie ein GUID-Generierungstool ausführen, z. B. das Befehlszeilenprogramm Guidgen.exe (in Visual Studio verfügbar). Guidgen.exe erzeugt nie zweimal die gleiche Zahl, unabhängig davon, wie oft oder auf wie vielen verschiedenen Computern es ausgeführt wird.
Facility Ontology 2.0-Überprüfungen im Dataset
Facility Ontology 2.0 definiert, wie Azure Maps Creator Daten von Einrichtungen, aufgeteilt auf Featureklassen, intern in einem Creator-Dataset speichert. Beim Importieren eines GeoJSON-Pakets wird bei jedem Hinzufügen oder Ändern eines Features eine Reihe von Überprüfungen ausgeführt. Dazu gehören Prüfungen der referentiellen Integrität sowie Geometrie- und Attributvalidierungen. Diese Überprüfungen werden in der folgenden Liste genauer beschrieben.
- Die maximale Anzahl Features, die gleichzeitig in ein Dataset importiert werden können, beträgt 150.000.
- Die Fläche der Einrichtung kann zwischen 4 und 4.000 Quadratkilometern betragen.
- Das Element der obersten Ebene ist facility, das jedes Gebäude in der Datei facility.geojson definiert.
- Jede Einrichtung verfügt über eine oder mehrere Ebenen, die in der Datei levels.geojson definiert sind.
- Jede Ebene muss sich innerhalb der Einrichtung befinden.
- Jede Ebene enthält Einheiten, Strukturen, verticalPenetrations und Öffnungen. Alle in der Ebene definierten Elemente müssen vollständig in der Ebenengeometrie enthalten sein.
unit
kann aus einer Reihe von Elementen wie Fluren, Büros und Höfen bestehen, die durch Flächen-, Linien- oder Punktelemente definiert sind. Einheiten sind in der Datei unit.geojson definiert.- Alle
unit
-Elemente müssen vollständig in ihrer Ebene enthalten sein und sich mit ihren untergeordneten Elementen überschneiden.
- Alle
structure
definiert physische, nicht überlappende Bereiche, durch die nicht navigiert werden kann, wie etwa eine Wand. Strukturen sind in der Datei structure.geojson definiert.verticalPenetration
stellt eine Methode zur vertikalen Navigation zwischen Ebenen wie Treppen und Aufzüge dar und ist in der Datei verticalPenetration.geojson definiert.- verticalPenetrations können sich nicht mit anderen verticalPenetrations auf derselben Ebene überschneiden.
openings
definieren durchlässige Grenzen zwischen zwei Einheiten oder einerunit
und einerverticalPenetration
und sind in der Datei opening.geojson definiert.- Öffnungen können sich nicht mit anderen Öffnungen auf derselben Ebene überschneiden.
- Jede
opening
muss mindestens einerverticalPenetration
oderunit
zugeordnet sein.