Creación de un conjunto de datos mediante un paquete GeoJson (versión preliminar)
Nota:
Retirada de Azure Maps Creator
El servicio de mapa de interiores de Azure Maps Creator ya está en desuso y se retirará el 30/9/25. Para más información, consulte Anuncio de fin de ciclo de vida de Azure Maps Creator.
Azure Maps Creator permite a los usuarios importar sus datos de mapas de interiores en formato GeoJSON con Facility Ontology 2.0, que luego se puede usar para crear un conjunto de datos.
Requisitos previos
- Una cuenta de Azure Maps
- Una clave de suscripción
- Un recurso Creator de Azure Maps
- Una cuenta de almacenamiento de Azure
- Conocimientos básicos de Creator para mapas de interiores
- Conocimientos básicos de Facility Ontology 2.0
- Paquete ZIP que contiene todos los archivos GeoJSON necesarios. Si no tiene archivos GeoJSON, puede descargar el ejemplo de edificio de Contoso.
Importante
- En este artículo, se usa la dirección URL geográfica
us.atlas.microsoft.com
. Si el servicio Creator no se creó en la Estados Unidos, debe usar una dirección URL geográfica diferente. Para más información, consulte Acceso a los servicios de Creator. - En los ejemplos de direcciones URL de este artículo, deberá reemplazar
{Your-Azure-Maps-Subscription-key}
por la clave de suscripción de Azure Maps.
Creación de un conjunto de datos mediante el paquete GeoJson
Para obtener más información sobre el paquete GeoJSON, consulte la sección Requisitos del paquete ZIP de Geojson.
Carga del paquete GeoJSON
Siga los pasos descritos en el artículo Cómo crear un registro de datos para cargar el paquete GeoJSON en su cuenta de almacenamiento de Azure y, a continuación, regístrelo en su cuenta de Azure Maps.
Importante
Asegúrese de anotar el valor de identificador único (udid
), ya que lo necesitará. udid
es la forma de hacer referencia al paquete GeoJSON que ha cargado en la cuenta de almacenamiento de Azure desde el código fuente y las solicitudes HTTP.
Crear un conjunto de datos
Un conjunto de datos es una colección de características de plano, como edificios, niveles y salones. Para crear un conjunto de datos a partir del paquete GeoJSON, use la nueva Dataset Create API. Dataset Create API toma el udid
que obtuvo en la sección anterior y devuelve el datasetId
del nuevo conjunto de datos.
Importante
Esto es diferente de la versión anterior de la API Dataset Create en que no requiere un conversionId
de un paquete de dibujo convertido.
Para crear un conjunto de datos
- Escriba la siguiente dirección URL para el servicio de conjunto de datos. La solicitud debe tener el siguiente aspecto URL (reemplace {udid} por el
udid
obtenido en Cargar el paquete GeoJSONsección):
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&udid={udid}&subscription-key={Your-Azure-Maps-Subscription-key}
- Copie el valor de la clave
Operation-Location
en el encabezado de respuesta. La claveOperation-Location
también se conoce comostatus URL
y es necesaria para comprobar el estado del proceso de creación del conjunto de datos y para obtenerdatasetId
, que es necesario para crear un conjunto de mosaicos.
Comprobación del estado de creación del conjunto de datos
Para comprobar el estado del proceso de creación del conjunto de datos y recuperar datasetId
:
Escriba la dirección URL de estado que copió en Creación de un conjunto de datos. La solicitud debe tener un aspecto similar a la siguiente dirección URL:
https://us.atlas.microsoft.com/datasets/operations/{operationId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key}
En el encabezado de la respuesta HTTP, copie el valor del identificador único contenido en la clave
Resource-Location
.https://us.atlas.microsoft.com/datasets/**c9c15957-646c-13f2-611a-1ea7adc75174**?api-version=2023-03-01-preview
Adición de datos a un conjunto de datos existente
Los datos se pueden agregar a un conjunto de datos existente proporcionando el parámetro datasetId
a la API de creación del conjunto de datos junto con el identificador único de los datos que quieres agregar. El identificador único puede ser udid
o conversionId
. Esto crea un nuevo conjunto de datos que consta de los datos (instalaciones) tanto del conjunto de datos existente como de los nuevos datos que se importan. Una vez que el nuevo conjunto de datos se haya creado correctamente, se puede eliminar el conjunto de datos anterior.
Una cosa que hay que tener en cuenta al agregar a un conjunto de datos existente es cómo se crean los identificadores de características. Si se crea un conjunto de datos a partir de un paquete de dibujo convertido, los identificadores de características se generan automáticamente. Cuando se crea un conjunto de datos a partir de un paquete GeoJSON, los identificadores de características deben proporcionarse en el archivo GeoJSON. Al anexar a un conjunto de datos existente, el conjunto de datos original controla la forma en que se crean los identificadores de características. Si el conjunto de datos original se creó con udid
, usa los identificadores de GeoJSON y seguirá haciéndolo con todos los paquetes GeoJSON anexados a ese conjunto de datos en el futuro. Si el conjunto de datos se creó con conversionId
, se generarán identificadores internamente y seguirán generándose internamente con todos los paquetes GeoJSON anexados a ese conjunto de datos en el futuro.
Adición al conjunto de datos creado a partir de un origen GeoJSON
Si el conjunto de datos original se creó a partir de un origen GoeJSON y quiere agregar otra instalación creada a partir de un paquete de dibujo, puede anexarla al conjunto de datos existente haciendo referencia a su conversionId
, como se muestra en esta solicitud HTTP POST:
https://us.atlas.microsoft.com/datasets?api-version=2023-03-01-preview&conversionId={conversionId}&outputOntology=facility-2.0&datasetId={datasetId}
Identificador | Descripción |
---|---|
conversionId | Identificador devuelto al convertir el paquete de dibujo. |
datasetId | El identificador del conjunto de datos devuelto al crear el conjunto de datos original a partir de un paquete GeoJSON. |
Requisitos del paquete ZIP de GeoJSON
El paquete ZIP de GeoJSON consta de uno o varios archivos GeoJSON compatibles con RFC 7946, uno para cada clase de característica, todo en el directorio raíz (no se admiten subdirectorios), comprimido con compresión ZIP estándar y denominado mediante la extensión .ZIP
.
Cada archivo de clase de característica debe coincidir con su definición en Facility Ontology 2.0 y cada característica debe tener un identificador único global.
Los identificadores de características solo pueden contener caracteres alfanuméricos (a-z, A-Z, 0-9), guion (-), punto (.) y carácter de subrayado (_).
Sugerencia
Si quiere estar seguro de que tiene un identificador único global (GUID), considere la posibilidad de crearlo mediante la ejecución de una herramienta de generación de GUID como el programa de línea de comandos Guidgen.exe (disponible con Visual Studio). Guidgen.exe nunca produce el mismo número dos veces, independientemente de cuántas veces se ejecute o en cuántas máquinas diferentes se ejecute.
Validaciones de Facility Ontology 2.0 en el conjunto de datos
Facility Ontology 2.0 define cómo Creator de Azure Maps almacena internamente los datos de las instalaciones en un conjunto de datos de Creator divididos en clases de características. Al importar un paquete GeoJSON, cada vez que se agrega o modifica una característica, se ejecuta una serie de validaciones. Esto incluye comprobaciones de integridad referencial, así como validaciones de geometría y atributos. Estas validaciones se describen con más detalle en la lista siguiente.
- El número máximo de características que se pueden importar en un conjunto de datos a la vez es 150 000.
- El área de instalaciones puede tener entre 4 y 4.000 km cuadrados.
- El elemento de nivel superior es instalación, que define cada edificio en el archivo facility.geojson.
- Cada instalación tiene uno o varios niveles, que se definen en el archivo levels.goejson.
- Cada nivel debe estar dentro de la instalación.
- Cada nivel contiene unidades, estructuras, verticalPenetrations y aperturas. Todos los elementos definidos en el nivel deben estar totalmente contenidos dentro de la geometría de nivel.
unit
puede constar de una matriz de elementos como pasillos, oficinas y patios, definidos por elementos de área, línea o punto. Las unidades se definen en el archivo unit.goejson.- Todos los elementos
unit
deben estar totalmente contenidos dentro de su nivel y formar una intersección con sus elementos secundarios.
- Todos los elementos
structure
define áreas físicas y no superpuestas en las que no se pueden navegar, como una pared. Las estructuras se definen en el archivo structure.goejson.verticalPenetration
representa un método para navegar verticalmente entre niveles, como escaleras y ascensores, y se definen en el archivo verticalPenetration.geojson.- verticalPenetrations no puede formar una intersección con otros elementos verticalPenetrations en el mismo nivel.
openings
define límites transversales entre dos unidades, ounit
yverticalPenetration
, y se definen en el archivo opening.geojson.- Las aperturas no pueden formar una intersección con otras aperturas en el mismo nivel.
- Cada
opening
debe asociarse con al menos unverticalPenetration
ounit
.