Criador para mapas internos
Nota
Aposentadoria do Azure Maps Creator
O serviço de mapa interno do Azure Maps Creator foi preterido e será desativado em 30/09/25. Para obter mais informações, consulte Anúncio de fim da vida útil do Azure Maps Creator.
Este artigo apresenta conceitos e ferramentas que se aplicam ao Azure Maps Creator. Recomendamos que leia este artigo antes de começar a utilizar a API e o SDK do Azure Maps Creator.
Você pode usar o Creator para desenvolver aplicativos com recursos de mapa baseados em dados de mapas internos. Este artigo descreve o processo de upload, conversão, criação e uso dos dados do mapa. Normalmente, o fluxo de trabalho é completado por duas personas diferentes com áreas de especialização e responsabilidade distintas:
- Map maker: responsável pela curadoria e preparação dos dados do mapa.
- Usuário de dados de mapa do criador: usa dados de mapa do cliente em aplicativos.
O diagrama a seguir ilustra todo o fluxo de trabalho.
Criar o Azure Maps Creator
Para usar os serviços do Criador, um recurso do Azure Maps Creator deve ser criado e associado a uma conta do Azure Maps com a camada de preços Gen 2. Para obter informações sobre como criar um recurso do Azure Maps Creator no Azure, consulte Manage Azure Maps Creator.
Gorjeta
Para obter informações sobre preços, consulte a seção Criador em Preços do Azure Maps.
Autenticação do criador
O Creator herda as configurações do Controle de Acesso do Azure Maps (IAM). Todas as chamadas de API para acesso a dados devem ser enviadas com regras de autenticação e autorização.
Os dados de utilização do criador são incorporados nos gráficos de utilização e no registo de atividades do Azure Maps. Para obter mais informações, consulte Gerenciar autenticação no Azure Maps.
Importante
Recomendamos o uso:
ID do Microsoft Entra em todas as soluções criadas com uma conta do Azure Maps usando os serviços do Criador. Para obter mais informações sobre o Microsoft Entra ID, consulte Autenticação do Microsoft Entra.
Configurações de controle de acesso baseadas em função. Usando essas configurações, os criadores de mapas podem atuar como a função de Colaborador de Dados do Azure Maps e os usuários de dados de mapa do Criador podem atuar como a função de Leitor de Dados do Azure Maps. Para obter mais informações, consulte Autorização com controle de acesso baseado em função.
Tipos de item de dados do criador
Os serviços de criador criam, armazenam e usam vários tipos de dados que são definidos e discutidos nas seções a seguir. Um item de dados do criador pode ser dos seguintes tipos:
- Dados convertidos
- Conjunto de dados
- Tileset
- style
- Configuração do mapa
- Conjunto de rotas
Carregar um pacote de desenho
O Creator coleta dados de mapas internos convertendo um pacote de desenho carregado. O pacote de desenho representa uma instalação construída ou remodelada. Para obter informações sobre os requisitos do pacote de desenho, consulte Requisitos do pacote de desenho.
Siga as etapas descritas no artigo Como criar registro de dados para carregar o pacote de desenho em sua conta de armazenamento do Azure e registrá-lo em sua conta do Azure Maps.
Importante
Certifique-se de anotar o valor do identificador exclusivo (udid
), você precisará dele. O udid
é necessário para converter o pacote carregado em dados de mapa interno.
Converter um pacote de desenho
O serviço de conversão converte um pacote de desenho carregado em dados de mapa interno. O serviço de conversão também valida o pacote. Os problemas de validação são classificados em dois tipos:
- Erros: Se algum erro for detetado, o processo de conversão falhará. Quando ocorre um erro, o serviço de Conversão fornece um link para o aplicativo Web autônomo do Visualizador de Erros de Desenho do Azure Maps. Você pode usar o Visualizador de Erros de Desenho para inspecionar avisos e erros do pacote de desenho que ocorreram durante o processo de conversão. Depois de corrigir os erros, você pode tentar carregar e converter o pacote.
- Avisos: Se algum aviso for detetado, a conversão será bem-sucedida. No entanto, recomendamos que reveja e resolva todos os avisos. Um aviso significa que parte da conversão foi ignorada ou corrigida automaticamente. A não resolução dos avisos pode resultar em erros em processos posteriores. Para obter mais informações, consulte Avisos e erros do pacote de desenho.
Criar dados de mapa interno
O Azure Maps Creator fornece os seguintes serviços que dão suporte à criação de mapas:
- Serviço de conjunto de dados.
- Serviço de Tileset. Use o serviço Tileset para criar uma representação baseada em vetor de um conjunto de dados. Os aplicativos podem usar um conjunto de blocos para apresentar uma exibição visual baseada em bloco do conjunto de dados.
- Serviço de styling personalizado. Use o serviço de estilo ou o editor de estilo visual para personalizar os elementos visuais de um mapa interno.
- Serviço de Wayfinding. Use a API wayfinding para gerar um caminho entre dois pontos dentro de uma instalação. Use a API do conjunto de rotas para criar os dados de que o serviço de wayfinding precisa para gerar caminhos.
Conjuntos de Dados
Um conjunto de dados é uma coleção de recursos de mapa interno. Os recursos do mapa interno representam recursos que são definidos em um pacote de desenho convertido. Depois de criar um conjunto de dados com o serviço Dataset, você pode criar qualquer número de conjuntos de blocos.
A qualquer momento, os desenvolvedores podem usar o serviço Dataset para adicionar ou remover recursos a um conjunto de dados existente. Para obter mais informações sobre como atualizar um conjunto de dados existente usando a API, consulte as opções de acréscimo no serviço Conjunto de dados. Para obter um exemplo de como atualizar um conjunto de dados, consulte Manutenção de dados.
Tilesets
Um conjunto de blocos é uma coleção de dados vetoriais que representa um conjunto de blocos de grade uniformes. Os desenvolvedores podem usar o serviço Tileset para criar conjuntos de blocos a partir de um conjunto de dados.
Para refletir diferentes estágios de conteúdo, você pode criar vários conjuntos de blocos a partir do mesmo conjunto de dados. Por exemplo, você pode fazer um conjunto de azulejos com móveis e equipamentos, e outro conjunto de azulejos sem móveis e equipamentos. Você pode optar por gerar um conjunto de blocos com as atualizações de dados mais recentes e outro conjunto de blocos sem as atualizações de dados mais recentes.
Além dos dados vetoriais, o tileset fornece metadados para otimização de renderização de mapas. Por exemplo, os metadados do conjunto de blocos contêm um nível de zoom mínimo e máximo para o conjunto de blocos. Os metadados também fornecem uma caixa delimitadora que define a extensão geográfica do conjunto de blocos. Um aplicativo pode usar uma caixa delimitadora para definir programaticamente o ponto central correto. Para obter mais informações sobre metadados tileset, consulte Tileset List.
Depois que um conjunto de blocos é criado, ele é recuperado usando o serviço Renderizar.
Se um conjunto de blocos ficar desatualizado e não for mais útil, você poderá excluí-lo. Para obter informações sobre como excluir conjuntos de blocos, consulte Manutenção de dados.
Nota
Um conjunto de blocos é independente do conjunto de dados a partir do qual foi criado. Se você criar conjuntos de blocos a partir de um conjunto de dados e, posteriormente, atualizar esse conjunto de dados, os conjuntos de blocos não serão atualizados.
Para refletir as alterações em um conjunto de dados, você deve criar novos conjuntos de blocos. Da mesma forma, se você excluir um conjunto de blocos, o conjunto de dados não será afetado.
Estilo personalizado (visualização)
Um estilo define a aparência visual de um mapa. Ele define quais dados desenhar, a ordem para desenhá-los e como estilizar os dados ao desenhá-los. Os estilos do Azure Maps Creator suportam o padrão MapLibre para camadas de estilo e sprites.
Quando você converte um pacote de desenho depois de carregá-lo em sua conta do Azure Maps, os estilos padrão são aplicados aos elementos do seu mapa. O serviço de estilo personalizado permite que você personalize a aparência visual do seu mapa. Você pode fazer isso editando manualmente o estilo JSON e importando-o para sua conta do Azure Maps usando a solicitação HTTP Style - Create, no entanto, a abordagem recomendada é usar o editor de estilo visual. Para obter mais informações, consulte Criar estilos personalizados para mapas internos.
Camada de exemplo no arquivo 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"
},
Propriedades da camada | Description |
---|---|
id | O nome da camada |
tipo | O tipo de renderização para esta camada. Alguns dos tipos mais comuns incluem: preenchimento: um polígono preenchido com uma borda traçada opcional. Linha: Uma linha traçada. Símbolo: um ícone ou um rótulo de texto. extrusão de enchimento: Um polígono extrudido (3D). |
filtrar | Somente os recursos que correspondem aos critérios de filtro são exibidos. |
esquema | Propriedades de layout para a camada. |
minzoom | | Um número entre 0 e 24 que representa o nível mínimo de zoom para a camada. Em níveis de zoom inferiores ao minzoom, a camada fica oculta. |
pintura | Propriedades de pintura padrão para esta camada. |
camada de origem | Uma fonte fornece os dados, a partir de uma fonte de mosaico vetorial, exibidos em um mapa. Necessário para fontes de telha vetorial; proibida para todos os outros tipos de fontes, incluindo fontes GeoJSON. |
Configuração do mapa
A configuração do mapa é uma matriz de configurações. Cada configuração consiste em um mapa base e uma ou mais camadas, cada camada consistindo de uma tupla de tileset de estilo + .
A configuração de mapa é usada quando você Instancia o Gerenciador Interno de um objeto Map ao desenvolver aplicativos no Azure Maps. É referenciado usando o mapConfigurationId
ou alias
. As configurações do mapa são imutáveis. Ao fazer alterações em uma configuração de mapa existente, uma nova configuração de mapa é criada, resultando em um mapConfigurationId
arquivo . Sempre que você cria uma configuração de mapa usando um alias já usado por uma configuração de mapa existente, ela aponta para a nova configuração de mapa.
O JSON a seguir é um exemplo de uma configuração de mapa padrão. Consulte a tabela a seguir para obter uma descrição de cada elemento do arquivo:
{
"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"
}
]
}
]
}
Propriedades do objeto de estilo | Description |
---|---|
Name | O nome do estilo. |
displayName | O nome para exibição do estilo. |
descrição | O usuário definiu a descrição do estilo. |
miniatura | Use para especificar a miniatura usada no seletor de estilos para esse estilo. Para obter mais informações, consulte o controle seletor de estilo. |
Mapa base | Use para definir o estilo do mapa base. |
camadas | A matriz de camadas consiste em um ou mais tileset + tuplas de estilo , sendo cada uma uma camada do mapa. Isso permite vários edifícios em um mapa, cada edifício representado em seu próprio conjunto de azulejos. |
Informações adicionais
- Para obter mais informações sobre como modificar estilos usando o editor de estilos, consulte Criar estilos personalizados para mapas internos.
- Para obter mais informações sobre a API Rest de estilo, consulte Estilo na referência da API Rest do Maps Creator.
- Para obter mais informações sobre a API Rest de configuração de mapa, consulte Creator - map configuration Rest API.
Wayfinding (pré-visualização)
O serviço Wayfinding permite que você forneça aos seus clientes o caminho mais curto entre dois pontos dentro de uma instalação. Depois de importar os dados do mapa interno e criar o conjunto de dados, você pode usá-los para criar um conjunto de rotas. O conjunto de rotas fornece os dados necessários para gerar caminhos entre dois pontos. O serviço de wayfinding leva em conta coisas como a largura mínima das aberturas e, opcionalmente, pode excluir elevadores ou escadas ao navegar entre os níveis.
O criador wayfinding é alimentado pela Havok.
Caminhos de descoberta de caminhos
Quando um caminho de localização é gerado com êxito, ele encontra o caminho mais curto entre dois pontos na instalação especificada. Cada andar da viagem é representado como uma perna separada, assim como quaisquer escadas ou elevadores usados para se mover entre andares.
Por exemplo, a primeira etapa do caminho pode ser desde a origem até o elevador naquele andar. A próxima perna é o elevador e, em seguida, a perna final é o caminho do elevador para o destino. O tempo de viagem estimado também é calculado e retornado na resposta HTTP JSON.
Estrutura
Para que o wayfinding funcione, os dados da instalação devem conter uma estrutura. O serviço de wayfinding calcula o caminho mais curto entre dois pontos selecionados em uma instalação. O serviço cria o caminho navegando em torno de estruturas, como paredes e quaisquer outras estruturas impermeáveis.
Penetração vertical
Se a origem e o destino selecionados estiverem em andares diferentes, o serviço de wayfinding determina quais objetos verticalPenetração , como escadas ou elevadores, estão disponíveis como possíveis caminhos para navegar verticalmente entre os níveis. Por padrão, a opção que resulta no caminho mais curto é usada.
O serviço Wayfinding inclui escadas ou elevadores em um caminho baseado no valor da propriedade da penetração direction
vertical. Para obter mais informações sobre a propriedade direction, consulte verticalPenetration no artigo Facility Ontology. Consulte as avoidFeatures
propriedades e minWidth
na documentação da API wayfinding para saber mais sobre outros fatores que podem afetar a seleção de caminho entre os níveis de piso.
Para obter mais informações, consulte o artigo de instruções do serviço de wayfinding de mapas internos.
Utilizar mapas interiores
Renderizar - Obter API de bloco de mapa
A API do Azure Maps [Renderizar - Obter Mosaico de Mapas] foi alargada para suportar conjuntos de mosaicos do Criador.
Os aplicativos podem usar a API Render - Get Map Tile para solicitar conjuntos de blocos. Os tilesets podem então ser integrados em um controle de mapa ou SDK. Para obter um exemplo de um controle de mapa que usa o serviço Renderizar, consulte Módulo de mapas internos.
API de serviço de recurso da Web
Você pode usar o serviço de recurso da Web (WFS) para consultar conjuntos de dados. O WFS segue os recursos da API do Open Geospatial Consortium. Você pode usar a API do WFS para consultar recursos dentro do próprio conjunto de dados. Por exemplo, você pode usar o WFS para encontrar todas as salas de reuniões de médio porte de uma instalação específica e nível do andar.
Alias API
Serviços de criação, como Conversão, Conjunto de Dados e Tileset, retornam um identificador para cada recurso criado a partir das APIs. A API Alias permite atribuir um alias para fazer referência a um identificador de recurso.
Módulo de Mapas do interior
O SDK da Web do Azure Maps inclui o módulo Mapas Indoor. Este módulo oferece funcionalidades estendidas para a biblioteca de Controle de Mapa do Azure Maps. O módulo Mapas internos renderiza mapas internos criados no Creator. Ele integra widgets como o seletor de piso que ajudam os usuários a visualizar os diferentes andares.
Você pode usar o módulo Mapas internos para criar aplicativos Web que integram dados de mapas internos com outros serviços do Azure Maps. As configurações de aplicativos mais comuns incluem a adição de conhecimento de outros mapas - como estradas, imagens, clima e trânsito - a mapas internos.
O módulo Mapas internos também suporta estilo de mapa dinâmico para obter mais informações, consulte Aprimorar seus mapas internos com estilo de recurso de mapa em tempo real.
Integração do Azure Maps
À medida que começa a desenvolver soluções para mapas interiores, pode descobrir formas de integrar as capacidades existentes do Azure Maps. Por exemplo, você pode implementar o rastreamento de ativos ou cenários de segurança usando o serviço Geofence com mapas internos do Creator. Por exemplo, você pode usar a API Geofence para determinar se um trabalhador entra ou sai de áreas internas específicas.
Manutenção de dados
Você pode usar a Lista do Criador do Azure Maps, Atualizar e Excluir API para listar, atualizar e excluir seus conjuntos de dados e conjuntos de blocos.
Nota
Ao revisar uma lista de itens para determinar se deseja excluí-los, considere o impacto dessa exclusão em todas as APIs ou aplicativos dependentes. Por exemplo, se você excluir um conjunto de blocos que está sendo usado por um aplicativo por meio da API [Render - Get Map Tile], o aplicativo não conseguirá renderizar esse conjunto de blocos.
Exemplo: Atualizando um conjunto de dados
O exemplo a seguir mostra como atualizar um conjunto de dados, criar um novo conjunto de blocos e excluir um conjunto de blocos antigo:
- Siga as etapas nas seções Carregar um pacote de desenho e Converter um pacote de desenho para carregar e converter o novo pacote de desenho.
- Use Dataset Create para acrescentar os dados convertidos ao conjunto de dados existente.
- Use Tileset Create para gerar um novo conjunto de blocos a partir do conjunto de dados atualizado.
- Salve o novo tilesetId para a próxima etapa.
- Para habilitar a visualização do conjunto de dados do campus atualizado, atualize o identificador do conjunto de blocos em seu aplicativo. Se o conjunto de blocos antigo não for mais usado, você poderá excluí-lo.