Wayfinding - Get Path
Utilize para calcular o melhor caminho entre duas localizações numa instalação.
O Serviço Wayfinding faz parte do Criador e cumpre o padrão Open Geospatial Consortium . O Wayfinding utiliza dados de mapa interior do conjunto de rotas para calcular o melhor caminho entre duas localizações dentro da mesma instalação. Para obter mais informações, consulte o artigo Wayfinding in the Creator for indoor maps concepts (Conceitos do Criador para mapas interiores ).
GET https:///wayfinding/path?api-version=2023-03-01-preview&routesetId={routesetId}&facilityId={facilityId}&fromPoint={fromPoint}&fromLevel={fromLevel}&toPoint={toPoint}&toLevel={toLevel}
GET https:///wayfinding/path?api-version=2023-03-01-preview&routesetId={routesetId}&facilityId={facilityId}&fromPoint={fromPoint}&fromLevel={fromLevel}&toPoint={toPoint}&toLevel={toLevel}&avoidFeatures={avoidFeatures}&minWidth={minWidth}
Parâmetros do URI
Name | Em | Necessário | Tipo | Description |
---|---|---|---|---|
api-version
|
query | True |
string |
Número da versão da API Azure Maps. |
facility
|
query | True |
string |
O identificador da instalação no conjunto de rotas onde encontrar o caminho. |
from
|
query | True |
integer int32 |
O nível de origem do caminho. |
from
|
query | True |
string |
O ponto de origem do caminho no seguinte formato: {latitude},{longitude}. |
routeset
|
query | True |
string |
O ID do conjunto de rotas a partir do que pretende consultar. |
to
|
query | True |
integer int32 |
O nível de destino do caminho. |
to
|
query | True |
string |
O destino do caminho no seguinte formato: {latitude},{longitude}. |
avoid
|
query |
Para evitar determinados tipos de conectores no caminho resultante. Podem ser especificados vários valores. |
||
min
|
query |
number |
A largura mínima (em metros) das aberturas no caminho pesquisado. Por exemplo, se tiver especificado uma largura mínima de 0,85, o caminho pesquisado evitará aberturas com menos de 85 centímetros de largura. Nota: ao utilizar este valor, os pontos de caminho resultantes serão colocados em memória intermédia das paredes e outros obstáculos verticais por metade da largura fornecida. |
Cabeçalho do Pedido
Name | Necessário | Tipo | Description |
---|---|---|---|
x-ms-client-id |
string |
Especifica a conta que se destina à utilização em conjunto com o modelo de segurança Microsoft Entra ID. Representa um ID exclusivo para a conta Azure Maps e pode ser obtido a partir da API de Conta do plano de gestão Azure Maps. Para utilizar Microsoft Entra ID segurança no Azure Maps consulte os seguintes artigos para obter orientações. |
Respostas
Name | Tipo | Description |
---|---|---|
200 OK |
OK |
|
Other Status Codes |
Ocorreu um erro inesperado. |
Segurança
AADToken
Estes são os Fluxos OAuth2 do Azure Active Directory . Quando emparelhado com o controlo de acesso baseado em funções do Azure, pode ser utilizado para controlar o acesso às APIs REST Azure Maps. Os controlos de acesso baseados em funções do Azure são utilizados para designar o acesso a uma ou mais Azure Maps conta de recursos ou sub-recursos. Qualquer utilizador, grupo ou principal de serviço pode ter acesso através de uma função incorporada ou de uma função personalizada composta por uma ou mais permissões para Azure Maps APIs REST.
Para implementar cenários, recomendamos que veja os conceitos de autenticação. Em resumo, esta definição de segurança fornece uma solução para modelar aplicações através de objetos com capacidade de controlo de acesso em APIs e âmbitos específicos.
Notas
- Esta definição de segurança requer a utilização do
x-ms-client-id
cabeçalho para indicar a que recurso Azure Maps a aplicação está a pedir acesso. Isto pode ser adquirido a partir da API de gestão do Maps.
O Authorization URL
é específico da instância da cloud pública do Azure. As clouds soberanas têm URLs de Autorização exclusivos e configurações do Azure Active Directory.
* O controlo de acesso baseado em funções do Azure está configurado a partir do plano de gestão do Azure através de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
* A utilização do SDK Web Azure Maps permite a configuração baseada na configuração de uma aplicação para vários casos de utilização.
- Atualmente, o Azure Active Directory v1.0 ou v2.0 suporta o Trabalho, a Escola e os Convidados, mas não suporta contas Pessoais.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Esta é uma chave partilhada que é aprovisionada quando Cria uma conta Azure Maps no portal do Azure ou com o PowerShell, a CLI, os SDKs do Azure ou a API REST.
Com esta chave, qualquer aplicação pode aceder a toda a API REST. Por outras palavras, esta chave pode ser utilizada como uma chave mestra na conta na qual são emitidas.
Para aplicações expostas publicamente, a nossa recomendação é utilizar a abordagem de aplicações cliente confidenciais para aceder Azure Maps APIs REST para que a sua chave possa ser armazenada de forma segura.
Type:
apiKey
In:
query
SAS Token
Este é um token de assinatura de acesso partilhado criado a partir da operação Listar SAS no recurso Azure Maps através do plano de gestão do Azure através de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.
Com este token, qualquer aplicação está autorizada a aceder com controlos de acesso baseados em funções do Azure e controlo detalhado para a expiração, taxa e regiões de utilização para o token específico. Por outras palavras, o Token de SAS pode ser utilizado para permitir que as aplicações controlem o acesso de uma forma mais segura do que a chave partilhada.
Para aplicações expostas publicamente, a nossa recomendação é configurar uma lista específica de origens permitidas no recurso da conta de Mapa para limitar o abuso de composição e renovar regularmente o Token de SAS.
Type:
apiKey
In:
header
Exemplos
Get the shortest path between two points in the facility.
Sample Request
GET https:///wayfinding/path?api-version=2023-03-01-preview&routesetId=[routeset-Id]&facilityId=[facility-Id]&fromPoint=47.652882287901065,-122.13400410050512&fromLevel=-1&toPoint=47.652870534630466,-122.13382884389553&toLevel=0
Sample Response
{
"noResultExplanation": "NoExplanation",
"paths": [
{
"lengthInMeters": 51.27548,
"timeInSeconds": 60,
"legs": [
{
"mode": "Default",
"lengthInMeters": 14.7605,
"timeInSeconds": 15,
"startLevel": 0,
"endLevel": 0,
"points": [
{
"latitude": 47.6528823,
"longitude": -122.1340041
},
{
"latitude": 47.6528688,
"longitude": -122.1340336
},
{
"latitude": 47.6528591,
"longitude": -122.1340534
},
{
"latitude": 47.6528309,
"longitude": -122.1341107
},
{
"latitude": 47.6527984,
"longitude": -122.1341556
}
]
},
{
"mode": "Stair",
"lengthInMeters": 7.88608,
"timeInSeconds": 16,
"startLevel": 0,
"endLevel": 1,
"points": [
{
"latitude": 47.6527984,
"longitude": -122.1341556
},
{
"latitude": 47.6527843,
"longitude": -122.1341395
}
]
},
{
"mode": "Default",
"lengthInMeters": 28.6289,
"timeInSeconds": 29,
"startLevel": 1,
"endLevel": 1,
"points": [
{
"latitude": 47.6527843,
"longitude": -122.1341395
},
{
"latitude": 47.6527843,
"longitude": -122.1341395
},
{
"latitude": 47.6527843,
"longitude": -122.1341395
},
{
"latitude": 47.6527846,
"longitude": -122.1341332
},
{
"latitude": 47.652789,
"longitude": -122.1341315
},
{
"latitude": 47.6527898,
"longitude": -122.1341312
},
{
"latitude": 47.6527913,
"longitude": -122.1341306
},
{
"latitude": 47.6527938,
"longitude": -122.1341295
},
{
"latitude": 47.6528309,
"longitude": -122.1341137
},
{
"latitude": 47.652856,
"longitude": -122.1340564
},
{
"latitude": 47.6528694,
"longitude": -122.1340372
},
{
"latitude": 47.652873,
"longitude": -122.1339296
},
{
"latitude": 47.6528735,
"longitude": -122.1339124
},
{
"latitude": 47.6528733,
"longitude": -122.1339095
},
{
"latitude": 47.6528732,
"longitude": -122.1338288
}
]
}
]
}
]
}
Definições
Name | Description |
---|---|
avoid |
Para evitar determinados tipos de conectores no caminho resultante. Podem ser especificados vários valores. |
Error |
Informações adicionais sobre o erro de gestão de recursos. |
Error |
O detalhe do erro. |
Error |
Resposta a erros |
Leg |
Uma secção do caminho geral. |
No |
Caso não sejam encontrados caminhos, a |
Path |
Os detalhes sobre um caminho específico entre a origem e o destino. Pode ser composto por uma ou mais pernas. |
Point |
Um ponto dentro das instalações. |
Wayfind |
O objeto devolvido por este pedido Wayfinding Path. |
avoidFeatures
Para evitar determinados tipos de conectores no caminho resultante. Podem ser especificados vários valores.
Name | Tipo | Description |
---|---|---|
elevators |
string |
Evite elevadores. |
stairs |
string |
Evite escadas. |
ErrorAdditionalInfo
Informações adicionais sobre o erro de gestão de recursos.
Name | Tipo | Description |
---|---|---|
info |
object |
As informações adicionais. |
type |
string |
O tipo de informações adicionais. |
ErrorDetail
O detalhe do erro.
Name | Tipo | Description |
---|---|---|
additionalInfo |
As informações adicionais do erro. |
|
code |
string |
O código de erro. |
details |
Os detalhes do erro. |
|
message |
string |
A mensagem de erro. |
target |
string |
O destino do erro. |
ErrorResponse
Resposta a erros
Name | Tipo | Description |
---|---|---|
error |
O objeto de erro. |
Leg
Uma secção do caminho geral.
Name | Tipo | Description |
---|---|---|
endLevel |
integer |
O chão onde esta perna termina. |
lengthInMeters |
number |
O comprimento da perna, em metros, desta perna. |
mode |
string |
O modo de pernas do percurso para esta perna. Pode ser predefinição (tudo no mesmo nível), elevadores ou escadas ao mover-se verticalmente entre níveis. |
points |
Point[] |
Os pontos da forma da perna. A posição vertical é determinada da seguinte forma: todos os pontos têm a mesma altura quando startLevel e endLevel são os mesmos, caso contrário, a matriz conterá apenas dois pontos: o primeiro em startLevel e o segundo no endLevel. |
startLevel |
integer |
O chão onde esta perna começa. |
timeInSeconds |
integer |
O tempo de viagem da perna, em segundos, para viajar entre o primeiro e o último ponto desta perna. |
NoResultExplanation
Caso não sejam encontrados caminhos, a paths
matriz estará vazia. Se não for possível determinar o motivo pelo qual não foram encontrados caminhos, esta propriedade fornecerá uma explicação do motivo.
Name | Tipo | Description |
---|---|---|
NoExplanation |
string |
Valor predefinido fornecido quando um resultado é devolvido ou não foi possível determinar o motivo pelo qual um caminho não foi encontrado. |
Path
Os detalhes sobre um caminho específico entre a origem e o destino. Pode ser composto por uma ou mais pernas.
Name | Tipo | Description |
---|---|---|
legs |
Leg[] |
As diferentes secções de viagem deste caminho. |
lengthInMeters |
number |
O comprimento do caminho, em metros, de todo o caminho. |
timeInSeconds |
integer |
O tempo total do caminho, em segundos, para percorrer entre a origem e o destino ao seguir este caminho. |
Point
Um ponto dentro das instalações.
Name | Tipo | Description |
---|---|---|
latitude |
number |
a latitude do ponto |
longitude |
number |
a longitude ponto |
WayfindResult
O objeto devolvido por este pedido Wayfinding Path.
Name | Tipo | Description |
---|---|---|
noResultExplanation |
Caso não sejam encontrados caminhos, a |
|
paths |
Path[] |
Uma matriz de resultados de caminho wayfinding. Será devolvida uma matriz vazia se não forem encontrados resultados. |