Condividi tramite


Creare un set di dati usando un pacchetto GeoJson (anteprima)

Nota

Ritiro di Creator di Mappe di Azure

Il servizio per la creazione di piante dell'interno Creator di Mappe di Azure è ora deprecato e verrà ritirato il 30/09/25. Per altre informazioni, vedere Annuncio di fine vita di Creator di Mappe di Azure.

Creator di Mappe di Azure consente agli utenti di importare i dati della mappa di interni in formato GeoJSON con Facility Ontology 2.0, che può quindi essere usato per creare un set di dati.

Prerequisiti

Importante

  • Questo articolo usa l'URL geografico us.atlas.microsoft.com. Se il servizio Creator non è stato creato negli Stati Uniti, è necessario usare un URL geografico diverso. Per altre informazioni, vedere Accesso ai servizi Creator.
  • Negli esempi di URL presenti in questo articolo sostituire {Your-Azure-Maps-Subscription-key} con la chiave di sottoscrizione di Mappe di Azure.

Creare un set di dati con il pacchetto GeoJSON

Per altre informazioni sul pacchetto GeoJSON, vedere la sezione Requisiti del pacchetto ZIP Geojson.

Caricare il pacchetto GeoJSON

Seguire i passaggi descritti nell'articolo Come creare il Registro di sistema dei dati per caricare il pacchetto GeoJSON nell'account di archiviazione di Azure e registrarlo nell'account di Mappe di Azure.

Importante

Assicurarsi di prendere nota del valore dell'identificatore univoco (udid), se ne avrà bisogno in seguito. udid è il modo in cui si fa riferimento al pacchetto GeoJSON caricato nell'account di archiviazione di Azure dal codice sorgente e dalle richieste HTTP.

Creare un set di dati

Un set di dati è una raccolta di funzionalità della pianta come edifici, livelli e stanze. Per creare un set di dati da GeoJSON, usare la nuova API Creazione di set di dati. L'API Creazione del set di dati accetta l'elemento udid ottenuto nella sezione precedente e restituisce il datasetId del nuovo set di dati.

Importante

Questa operazione è differente dalla versione precedente dell'API Creazione set di dati in quanto non richiede un oggetto conversionId da un pacchetto di disegni convertito.

Per creare un set di dati:

  1. Immettere l'URL seguente per il servizio set di dati. La richiesta dovrebbe essere simile all'URL seguente (sostituire {udid} con l'elemento udid ottenuto nella sezione Caricare il pacchetto GeoJSON):
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&udid={udid}&subscription-key={Your-Azure-Maps-Subscription-key}
  1. Copiare il valore della chiave Operation-Location nell'intestazione della risposta. La chiave Operation-Location è nota anche come status URL ed è necessaria per controllare lo stato del processo di creazione del set di dati e ottenere il datasetId, necessario per creare un set di tessere.

Controllare lo stato di creazione del set di dati

Per controllare lo stato del processo di creazione del set di dati e recuperare datasetId:

  1. Immettere l'URL di stato copiato in Creare un set di dati. La richiesta deve essere simile all'URL seguente:

    https://us.atlas.microsoft.com/datasets/operations/{operationId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key}
    
  2. Nell'intestazione della risposta HTTP copiare il valore dell'identificatore univoco contenuto nella chiave Resource-Location.

    https://us.atlas.microsoft.com/datasets/**c9c15957-646c-13f2-611a-1ea7adc75174**?api-version=2023-03-01-preview

Aggiungere dati a un set di dati esistente

I dati possono essere aggiunti a un set di dati esistente fornendo il parametro datasetId all'API Creazione del set di dati insieme all'identificatore univoco dei dati da aggiungere. L'identificatore univoco può essere udid o conversionId. In questo modo viene creato un nuovo set di dati costituito dai dati (strutture) sia dal set di dati esistente che dai nuovi dati importati. Dopo aver creato correttamente il nuovo set di dati, è possibile eliminare il set di dati precedente.

Un aspetto da considerare quando si aggiunge a un set di dati esistente è il modo in cui vengono creati gli ID funzionalità. Se un set di dati viene creato da un pacchetto di disegni convertito, gli ID funzionalità vengono generati automaticamente. Quando un set di dati viene creato da un pacchetto GeoJSON, gli ID funzionalità devono essere specificati nel file GeoJSON. Quando si aggiunge a un set di dati esistente, il set di dati originale determina la modalità di creazione degli ID funzionalità. Se il set di dati originale è stato creato usando udid, usa gli ID di GeoJSON e continuerà a farlo con tutti i pacchetti GeoJSON aggiunti a tale set di dati in futuro. Se il set di dati è stato creato usando conversionId, gli ID verranno generati internamente e continueranno a essere generati internamente con tutti i pacchetti GeoJSON aggiunti a tale set di dati in futuro.

Aggiungere al set di dati creato da un'origine GeoJSON

Se il set di dati originale è stato creato da un'origine GoeJSON e si desidera aggiungere un'altra funzionalità creata da un pacchetto di disegni, è possibile aggiungerla al set di dati esistente facendo riferimento a conversionId, come illustrato da questa richiesta HTTP POST:

https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&conversionId={conversionId}&outputOntology=facility-2.0&datasetId={datasetId}
Identifier Descrizione
conversionId ID restituito durante la conversione del pacchetto di disegni.
datasetId ID del set di dati restituito durante la creazione del set di dati originale da un pacchetto GeoJSON.

Requisiti del pacchetto ZIP Geojson

Il pacchetto ZIP GeoJSON è costituito da uno o più file GeoJSON conformi a RFC 7946, uno per ogni classe di funzionalità, tutti nella directory radice (le sottodirectory non sono supportate), compressi con compressione ZIP standard e denominati usando l'estensione .ZIP.

Ogni file di classe di funzionalità deve corrispondere alla relativa definizione in Facility Ontology 2.0 e ogni funzionalità deve avere un identificatore univoco globale.

Gli ID funzionalità possono contenere solo caratteri alfanumerici (a-z, A-Z, 0-9), trattino (-), punto (.) e carattere di sottolineatura (_).

Suggerimento

Se si desidera essere certi di avere un identificatore univoco globale (GUID), è consigliabile crearlo eseguendo uno strumento di generazione GUID, ad esempio il programma della riga di comando Guidgen.exe (disponibile con Visual Studio). Guidgen.exe non produce mai lo stesso numero due volte, indipendentemente dal numero di esecuzioni o dal numero di computer differenti in cui viene eseguito.

Convalida di Facility Ontology 2.0 nel set di dati

Facility Ontology 2.0 definisce il modo in cui Mappe di Azure Creator archivia internamente i dati delle strutture, suddivisi in classi di funzionalità, in un set di dati Creator. Quando si importa un pacchetto GeoJSON, ogni volta che viene aggiunta o modificata una funzionalità, viene eseguita una serie di convalide. Sono inclusi i controlli di integrità referenziale e la geometria e le convalide degli attributi. Queste convalide sono descritte in modo più dettagliato nell'elenco seguente.

  • Il numero massimo di funzionalità che è possibile importare in un set di dati alla volta è 150.000.
  • L'area della struttura può essere compresa tra 4 e 4.000 km quadrati.
  • L'elemento di primo livello è struttura, che definisce ogni edificio nel file facility.geojson.
  • Ogni struttura ha uno o più livelli, definiti nel file levels.goejson.
    • Ogni livello deve trovarsi all'interno della struttura.
  • Ogni livello contiene unità, strutture, verticalPenetrations e aperture. Tutti gli elementi definiti nel livello devono essere completamente contenuti nella geometria Level.
    • unit può essere costituito da un array di oggetti come corridoi, uffici e cortili, che sono definiti da elementi area, linea o punto. Le unità sono definite nel file unit.goejson.
      • Tutti gli elementi unit devono essere completamente contenuti all'interno del loro livello e si intersecano con i loro figli.
    • structure definisce aree fisiche e non sovrapposte che non possono essere attraversate, ad esempio una parete. Le strutture sono definite nel file structure.goejson.
    • verticalPenetration rappresenta un metodo per spostarsi verticalmente tra livelli, ad esempio scale e ascensori e sono definiti nel file verticalPenetration.geojson.
      • VerticalPenetrations non è in grado di intersecare con altre verticalPenetrations sullo stesso livello.
    • openings definiscono limiti attraversabili tra due unità o unit e verticalPenetration e sono definiti nel file opening.geojson.
      • Le aperture non possono intersecarsi con altre aperture sullo stesso livello.
      • Ogni opening deve essere associato ad almeno un verticalPenetration o unit.