Uso de Creator para planos interiores
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.
En este artículo se presentan los conceptos y herramientas que se aplican a los servicios de Azure Maps Creator. Le recomendamos que lea este artículo antes de empezar a usar la API y el SDK de Azure Maps Creator.
Puede usar Creator para desarrollar aplicaciones con características de mapa basadas en datos de mapas de interiores. En este artículo se describe el proceso de carga, conversión, creación y uso de los datos del plano. Normalmente, el flujo de trabajo lo completan dos roles diferentes con distintas áreas de experiencia y responsabilidad:
- Creador de mapas: responsable de la protección y preparación de los datos del mapa.
- Usuario de datos del mapa de Creator: usa los datos del mapa del cliente en las aplicaciones.
En el siguiente diagrama se muestra todo el flujo de trabajo.
Para usar los servicios de Creator, se debe crear un recurso de Azure Maps Creator en una cuenta de Azure Maps con el plan de tarifa de Gen 2. Para obtener información sobre cómo crear un recurso de Azure Maps Creator en Azure, consulte Administración de Azure Maps Creator.
Sugerencia
Para obtener información de precios, vea la sección Creator de Precios de Azure Maps.
Creator hereda la configuración de Access Control (IAM) de Azure Maps. Todas las llamadas de API para el acceso a los datos se deben enviar con reglas de autenticación y autorización.
Los datos de uso de Creator se incorporan en los gráficos de uso de Azure Maps y en el registro de actividad. Para obtener más información, consulte Administrar la autenticación en Azure Maps.
Importante
Recomendamos usar lo siguiente:
Microsoft Entra ID en todas las soluciones que se han creado con una cuenta de Azure Maps mediante los servicios de Creator. Para más información sobre Microsoft Entra ID, vea Autenticación de Microsoft Entra.
Configuración del control de acceso basado en roles. Con esta configuración, los creadores de mapas pueden actuar como si tuvieran el rol Colaborador de datos de Azure Maps, mientras que los usuarios de datos de mapas de Creator pueden actuar con el rol Lector de datos de Azure Maps. Para obtener más información, vea Autorización con el control de acceso basado en rol.
Los servicios de Creator crean, almacenan y usan varios tipos de datos que se definen y se analizan en las secciones siguientes. Un elemento de datos de Creator puede ser de los siguientes tipos:
- Datos convertidos
- Dataset
- Conjunto de mosaicos
- style
- Configuración de mapa
- Conjunto de rutas
La instancia de Creator recopila datos de mapa de interiores mediante la conversión de un paquete de dibujo que esté cargado. El paquete de dibujo representa una instalación construida o remodelada. Para obtener información sobre los requisitos de los paquetes de dibujo, consulte Requisitos de los paquetes de dibujo.
Siga los pasos que se indican en el artículo Creación de registros de datos para cargar el paquete de dibujos en su cuenta de Azure Storage y, posteriormente, regístrarlo en su cuenta de Azure Maps.
Importante
Asegúrese de anotar el valor de identificador único (udid
), ya que lo necesitará. Para convertir el paquete cargado en datos de mapa de interiores, se necesita udid
.
El servicio de conversión convierte un paquete de dibujo cargado en datos de un plano interior. El servicio de conversión también valida el paquete. Los problemas de validación se clasifican en dos tipos:
- Errores: si se detecta algún error, se produce un error en el proceso de conversión. Cuando se produce un error, el servicio de conversión proporciona un vínculo a la aplicación web independiente Visualizador de errores de dibujo de Azure Maps. Puede usar el Visualizador de errores de dibujo para inspeccionar los errores y advertencias del paquete de dibujo que se produjeron durante el proceso de conversión. Después de corregir los errores, puede intentar cargar y convertir el paquete.
- Advertencias: si se detecta alguna advertencia, la conversión se realiza correctamente. Sin embargo, recomendamos que revise y resuelva todas las advertencias. Una advertencia significa que parte de la conversión se ignoró o corrigió automáticamente. Si no se resuelven las advertencias, podrían producirse errores en procesos posteriores. Para obtener más información, consulte Advertencias y errores del paquete de dibujo.
Azure Maps Creator proporciona los siguientes servicios que admiten la creación de mapas:
- Servicio de conjunto de datos.
- Servicio de conjunto de mosaicos. Use el servicio de conjunto de mosaicos para crear una representación basada en vectores de un conjunto de datos. Las aplicaciones pueden utilizar un conjunto de mosaicos para presentar una vista visual basada en mosaicos del conjunto de datos.
- Servicio de estilo personalizado. Use el servicio de estilo o el editor de estilo visual para personalizar los elementos visuales de un mapa de interiores.
- Servicio Wayfinding. Use la API de Wayfinding para generar una ruta entre dos puntos dentro de una instalación. Use la API de conjunto de rutas para crear los datos que el servicio Wayfinding necesita para generar rutas.
Un conjunto de datos es una colección de características del plano interior. Las características de los mapas de interiores representan las instalaciones definidas en un paquete de dibujo convertido. Después de crear un conjunto de datos con el servicio de conjunto de datos, puede crear cualquier número de conjuntos de mosaicos.
En cualquier momento, los desarrolladores pueden utilizar el servicio de conjunto de datos para agregar o eliminar instalaciones en un conjunto de datos existente. Para obtener más información sobre cómo actualizar un conjunto de datos existente mediante la API, consulte las opciones para anexar contenido en el servicio de conjunto de datos. Para obtener un ejemplo de cómo actualizar un conjunto de datos, consulte Mantenimiento de datos.
Un conjunto de mosaicos es una colección de datos vectoriales que representa un conjunto de mosaicos de cuadrícula uniformes. Los desarrolladores pueden usar el servicio de conjunto de mosaicos para crear conjuntos de mosaicos desde un conjunto de datos.
Para reflejar diferentes fases de contenido, puede crear varios conjuntos de mosaicos desde el mismo conjunto de datos. Por ejemplo, puede crear un conjunto de mosaicos con mobiliario y equipamiento, y otro conjunto de mosaicos sin mobiliario ni equipamiento. Puede generar un conjunto de mosaicos con las actualizaciones de datos más recientes y otro sin las actualizaciones de datos más recientes.
Además de los datos vectoriales, el conjunto de mosaicos proporciona metadatos para la optimización de la representación de planos. Por ejemplo, los metadatos del conjunto de mosaicos contienen un nivel de zoom mínimo y máximo para ese conjunto de mosaicos. Asimismo, los metadatos proporcionan un cuadro de límite que define la extensión geográfica del conjunto de mosaicos. Una aplicación puede utilizar un cuadro de límite para establecer mediante programación el punto central correcto. Para obtener más información sobre los metadatos del conjunto de mosaicos, consulte Lista de conjunto de mosaicos.
Una vez que se ha creado un conjunto de mosaicos, se recupera mediante el servicio Render.
Si un conjunto de mosaicos se queda obsoleto y ya no es útil, puede eliminar ese conjunto de mosaicos. Para obtener información sobre cómo eliminar conjuntos de mosaicos, consulte Mantenimiento de datos.
Nota
Un conjunto de mosaicos es independiente del conjunto de datos del que se creó. Si crea conjuntos de mosaicos a partir de un conjunto de datos y, después, actualiza ese conjunto de datos, los conjuntos de mosaicos no se actualizarán.
Para reflejar los cambios en un conjunto de datos, debe crear nuevos conjuntos de mosaicos. Del mismo modo, si elimina un conjunto de mosaicos, el conjunto de datos no se verá afectado.
Un estilo define la apariencia visual de un mapa. Define los datos que se van a dibujar, el orden de dibujarlos y cómo aplicar un estilo a los datos al dibujarlos. Los estilos de Azure Maps Creator son compatibles con el estándar MapLibre para las capas de estilo y los sprites.
Al convertir un paquete de dibujo después de cargarlo en la cuenta de Azure Maps, los estilos predeterminados se aplican a los elementos del mapa. El servicio de estilo personalizado le permite personalizar la apariencia visual del mapa. Puede hacerlo mediante la edición manual del JSON del estilo y la importación en su cuenta de Azure Maps a través de la solicitud HTTP Estilo - Crear, sin embargo, el enfoque recomendado es utilizar el editor de estilo visual. Para obtener más información, consulte Crear estilos personalizados para mapas de interiores.
Capa de ejemplo en el archivo style.json:
{
"id": "indoor_unit_gym_label",
"type": "symbol",
"filter": ["all", ["has","floor0"], ["any", ["==", "categoryName", "room.gym"]]],
"layout": {
"visibility": "none",
"icon-image": "gym",
"icon-size": {"stops": [[17.5, 0.7], [21, 1.1]]},
"symbol-avoid-edges": true,
"symbol-placement": "point",
"text-anchor": "top",
"text-field": "{name}",
"text-font": ["SegoeFrutigerHelveticaMYingHei-Medium"],
"text-keep-upright": true,
"text-letter-spacing": 0.1,
"text-offset": [0, 1.05],
"text-size": {"stops": [[18, 5], [18.5, 6.5], [19, 8], [19.5, 9.5], [20, 11]]}
},
"metadata": {"microsoft.maps:layerGroup": "labels_indoor"},
"minzoom": 17.5,
"paint": {
"text-color": "rgba(0, 0, 0, 1)",
"text-halo-blur": 0.5,
"text-halo-color": "rgba(255, 255, 255, 1)",
"text-halo-width": 1,
"text-opacity": ["step", ["zoom"], 0, 18, 1]
},
"source-layer": "Indoor unit"
},
Propiedades de capa. | Descripción |
---|---|
id | Nombre de capa. |
type | Tipo de representación de esta capa. Algunos de los tipos más comunes son: relleno: un polígono relleno con un borde trazo opcional. Línea: una línea de trazos. Símbolo: icono o etiqueta de texto. extrusión de relleno: polígono extruido (3D). |
filter | Solo se muestran las características que coinciden con los criterios de filtrado. |
diseño | Propiedades de diseño de la capa. |
minzoom | Número comprendido entre 0 y 24 que representa el nivel de zoom mínimo de la capa. En niveles de zoom inferiores al minzoom, la capa está oculta. |
pintar | Propiedades de pintura predeterminadas para esta capa. |
capa de origen | Un origen proporciona los datos, a partir de un origen de mosaico vectorial, que se muestra en un mapa. Obligatorio para los orígenes de mosaico vectorial; prohibido para todos los demás tipos de origen, incluidos los orígenes GeoJSON. |
La configuración del mapa es una matriz de configuraciones. Cada configuración consta de un mapa base y una o varias capas, cada capa que consta de una tupla de conjunto de mosaicos + de estilo.
La configuración del mapa se usa cuando crea una instancia el administrador interior de un objeto de mapa al desarrollar aplicaciones en Azure Maps. Se hace referencia a él mediante mapConfigurationId
o alias
. Las configuraciones de mapa son inmutables. Al realizar cambios en una configuración de mapa existente, se crea una nueva configuración de mapa, lo que da lugar a otro mapConfigurationId
. Cada vez que cree una configuración de mapa con un alias ya usado por una configuración de mapa existente, apuntará a la nueva configuración de mapa.
El siguiente JSON es un ejemplo de una configuración de mapa predeterminada. Vea la tabla siguiente para obtener una descripción de cada elemento del archivo:
{
"version": 1.0,
"description": "This is the default Azure Maps map configuration for facility ontology tilesets.",
"defaultConfiguration": "indoor_light",
"configurations": [
{
"name": "indoor_light",
"displayName": "Indoor light",
"description": "A base style for Azure Maps.",
"thumbnail": "indoor_2022-01-01.png",
"baseMap": "microsoft_light",
"layers": [
{
"tilesetId": "fa37d225-924e-3f32-8441-6128d9e5519a",
"styleId": "microsoft-maps:indoor_2022-01-01"
}
]
},
{
"name": "indoor_dark",
"displayName": "Indoor dark",
"description": "A base style for Azure Maps.",
"thumbnail": "indoor_dark_2022-01-01.png",
"baseMap": "microsoft_dark",
"layers": [
{
"tilesetId": "fa37d225-924e-3f32-8441-6128d9e5519a",
"styleId": "microsoft-maps:indoor_dark_2022-01-01"
}
]
}
]
}
propiedades de objetos de estilo | Descripción |
---|---|
Nombre | Nombre del estilo. |
DisplayName | El nombre para mostrar el estilo. |
description | Descripción definida por el usuario del estilo. |
thumbnail | Use para especificar la miniatura usada en el selector de estilos para este estilo. Para obtener más información, vea el control selector de estilos. |
baseMap | Use para establecer el estilo de mapa base. |
capas | La matriz de capas está formada por una o más tuplas de conjunto de mosaicos + estilo, cada una de las cuales es una capa del mapa. Esto permite varios edificios en un mapa, cada edificio representado en su propio conjunto de mosaicos. |
- Para obtener más información sobre cómo modificar estilos mediante el editor de estilos, vea Crear estilos personalizados para mapas interiores.
- Para obtener más información sobre el estilo de la API de Rest, consulte el estilo en la referencia de la API de Rest del Creador de Mapas.
- Para más información sobre la API de Rest de configuración de mapas, consulte Creador - API de Rest de configuración de mapas.
El servicio Wayfinding le permite proporcionar a sus clientes la ruta más corta entre dos puntos dentro de una instalación. Una vez que haya importado los datos del mapa de interiores y haya creado el conjunto de datos, puede usarlo para crear un conjunto de rutas. El conjunto de rutas proporciona los datos necesarios para generar rutas entre dos puntos. El servicio Wayfinding tiene en cuenta aspectos como el ancho mínimo de las aberturas y, como consecuencia, puede excluir ascensores o escaleras al desplazarse entre plantas.
El servicio Wayfinding del creador cuenta con tecnología de Havok.
Cuando se genera correctamente una ruta de Wayfinding, se encuentra la ruta más corta entre dos puntos de la instalación especificada. Cada piso del recorrido se representa como una etapa independiente, igual que las escaleras o los ascensores utilizados para moverse entre pisos.
Por ejemplo, la primera etapa de la ruta podría ser desde el origen hasta el ascensor de ese piso. La siguiente etapa es el ascensor y, a continuación, la última etapa es la ruta desde el ascensor hasta el destino. El tiempo de desplazamiento estimado también se calcula y se devuelve en el JSON de respuesta HTTP.
Para que Wayfinding funcione, los datos de la instalación deben contener una estructura. El servicio Wayfinding calcula la ruta más corta entre dos puntos seleccionados de una instalación. El servicio crea la ruta navegando por las estructuras, como paredes y cualquier otra estructura impermeable.
Si el origen y el destino seleccionados están en diferentes plantas, el servicio Wayfinding determina qué objetos de penetración vertical, como escaleras o ascensores, están disponibles como posibles vías para desplazarse verticalmente entre niveles. De manera predeterminada, se usa la opción que de como resultado la ruta más corta.
El servicio Wayfinding incluye escaleras o ascensores en una ruta según el valor de la propiedad direction
de la penetración vertical. Para más información sobre la propiedad de dirección, consulte verticalPenetration en el artículo Ontología de instalaciones. Consulte las propiedades avoidFeatures
y minWidth
en la documentación de la API de Wayfinding para obtener información sobre otros factores que pueden afectar a la selección de la ruta entre los niveles de planta.
Para obtener más información, consulte el artículo de procedimientos del servicio Wayfinding de mapas de interiores.
La API Render: Get Map Tile de Azure Maps se ha ampliado para admitir los conjuntos de mosaicos de Creator.
Las aplicaciones pueden usar Render: Get Map Tile API para solicitar conjuntos de mosaicos. El conjunto de mosaicos se puede integrar en un control de plano o un SDK. Para obtener un ejemplo de un control de mapa que use el servicio Render, consulte el módulo de Indoor Maps.
Puede usar Web Feature Service (WFS) para consultar conjuntos de datos. WFS sigue las características de Open Geospatial Consortium API. Puede usar la API WFS para consultar características en el propio conjunto de datos. Por ejemplo, puede usar WFS para buscar todas las salas de reuniones de tamaño medio de una instalación y una planta determinadas.
Los servicios de Creator, como la conversión, el conjunto de datos y el conjunto de mosaicos, devuelven un identificador para cada recurso que se crea a partir de las API. Alias API le permite asignar un alias para hacer referencia a un identificador de recurso.
El SDK web de Azure Maps incluye el módulo Indoor Maps. Este módulo ofrece funcionalidades extendidas para la biblioteca del control de mapa de Azure Maps. El módulo Indoor Maps representa los planos interiores creados en Creator. Integra widgets, como el selector de plantas, que ayuda a los usuarios a visualizar las distintas plantas.
Puede usar el módulo de Indoor Maps para crear aplicaciones web que integren datos de mapas de interiores con otros servicios de Azure Maps. Las configuraciones de aplicaciones más comunes incluyen la adición de conocimiento a mapas de interiores desde otros mapas, como carreteras, imágenes, el tiempo y el tránsito.
El módulo Indoor Maps también admite el estilo de mapa dinámico para obtener más información; consulte Mejorar los mapas interiores con el estilo de características de mapa en tiempo real.
Cuando empiece a desarrollar soluciones para planos interiores, puede descubrir diferentes maneras de integrar las capacidades de Azure Maps existentes. Por ejemplo, puede implementar escenarios de seguridad o de seguimiento de recursos mediante el uso del servicio de geovalla con los mapas de interiores de Creator. Por ejemplo, puede usar Geofence API para determinar si un trabajador entra o sale de determinadas áreas interiores.
Puede usar la API Enumerar, actualizar y eliminar de Azure Maps Creator para enumerar, actualizar y eliminar sus conjuntos de datos y conjuntos de mosaicos.
Nota
Cuando revise una lista de elementos para determinar si debe eliminarlos, considere el impacto que esa eliminación tendrá en todas las API o aplicaciones dependientes. Por ejemplo, si elimina un conjunto de mosaicos que usa una aplicación mediante la API [Render - Get Map Tile], la aplicación no podrá representar ese conjunto de mosaicos.
En el ejemplo siguiente se muestra cómo actualizar un conjunto de datos, crear un nuevo conjunto de mosaicos y eliminar un conjunto de mosaicos antiguo:
- Siga los pasos de las secciones Carga de un paquete de dibujo y Conversión de un paquete de dibujo para cargar y convertir el nuevo paquete de dibujo.
- Use Crear conjunto de datos para anexar los datos convertidos al conjunto de datos existente.
- Use Crear conjunto de mosaicos para generar un nuevo conjunto de mosaicos fuera del conjunto de datos actualizado.
- Guarde el nuevo valor de tilesetId para el paso siguiente.
- Para habilitar la visualización del conjunto de datos actualizado del campus, actualice el identificador del conjunto de mosaicos en la aplicación. Si el antiguo conjunto de mosaicos ya no está en uso, puede eliminarlo.