Wayfinding - Get Path
Slouží k výpočtu nejlepší cesty mezi dvěma umístěními v rámci zařízení.
Služba Wayfinding je součástí creatoru a dodržuje standard Open Geospatial Consortium . Wayfinding používá data vnitřní mapy z routeset k výpočtu nejlepší cesty mezi dvěma místy v rámci stejného zařízení. Další informace najdete v tématu Wayfinding v článku Creator for indoor maps concepts (Koncepce interiérových map ).
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}
Parametry identifikátoru URI
Name | V | Vyžadováno | Typ | Description |
---|---|---|---|---|
api-version
|
query | True |
string |
Číslo verze rozhraní API Azure Maps. |
facility
|
query | True |
string |
Identifikátor zařízení v sadě tras, kde se má cesta najít. |
from
|
query | True |
integer int32 |
Úroveň původu cesty. |
from
|
query | True |
string |
Počáteční bod cesty v následujícím formátu: {zeměpisná šířka},{zeměpisná délka}. |
routeset
|
query | True |
string |
ID sady tras, ze které se má dotazovat. |
to
|
query | True |
integer int32 |
Cílová úroveň cesty. |
to
|
query | True |
string |
Cíl cesty v následujícím formátu: {zeměpisná šířka},{zeměpisná délka}. |
avoid
|
query |
Chcete-li se vyhnout určitým typům konektorů ve výsledné cestě. Je možné zadat více hodnot. |
||
min
|
query |
number |
Minimální šířka (v metrech) otvorů ve hledané cestě. Pokud jste například zadali minimální šířku 0,85, hledaná cesta zabrání otvorům širokým než 85 centimetrů. Poznámka: Při použití této hodnoty se výsledné body cesty od zdí a jiných svislých překážek uloží do vyrovnávací paměti polovinou poskytnuté šířky. |
Hlavička požadavku
Name | Vyžadováno | Typ | Description |
---|---|---|---|
x-ms-client-id |
string |
Určuje, který účet je určený pro použití ve spojení s modelem zabezpečení Microsoft Entra ID. Představuje jedinečné ID účtu Azure Maps a je možné ho načíst z rozhraní API účtu roviny správy Azure Maps. Pokud chcete použít Microsoft Entra ID zabezpečení v Azure Maps pokyny najdete v následujících článcích. |
Odpovědi
Name | Typ | Description |
---|---|---|
200 OK |
OK |
|
Other Status Codes |
Došlo k neočekávané chybě. |
Zabezpečení
AADToken
Toto jsou toky Azure Active Directory OAuth2 . Při spárování s řízením přístupu na základě role v Azure se dá použít k řízení přístupu k Azure Maps rozhraní REST API. Řízení přístupu na základě role v Azure slouží k určení přístupu k jednomu nebo několika Azure Maps účtu prostředku nebo dílčím prostředkům. Každému uživateli, skupině nebo instančnímu objektu je možné udělit přístup prostřednictvím předdefinované role nebo vlastní role složené z jednoho nebo více oprávnění k Azure Maps rozhraní REST API.
Pokud chcete implementovat scénáře, doporučujeme zobrazit si koncepty ověřování. Souhrnně řečeno, tato definice zabezpečení poskytuje řešení pro modelování aplikací prostřednictvím objektů schopných řízení přístupu pro konkrétní rozhraní API a obory.
Poznámky
- Tato definice zabezpečení vyžaduje použití hlavičky
x-ms-client-id
k označení Azure Maps prostředku, ke kterému aplikace žádá o přístup. Můžete ho získat z rozhraní MAPS MANAGEMENT API.
Je Authorization URL
specifický pro instanci veřejného cloudu Azure. Suverénní cloudy mají jedinečné autorizační adresy URL a konfigurace Azure Active Directory.
* Řízení přístupu na základě role v Azure se konfiguruje z roviny správy Azure prostřednictvím Azure Portal, PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
* Použití sady AZURE MAPS Web SDK umožňuje nastavení aplikace na základě konfigurace pro více případů použití.
- Azure Active Directory verze 1.0 nebo 2.0 v současné době podporuje pracovní, školní a hosta, ale nepodporuje osobní účty.
Typ:
oauth2
Tok:
implicit
URL autorizace:
https://login.microsoftonline.com/common/oauth2/authorize
Rozsahy
Name | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
Jedná se o sdílený klíč, který se zřídí při vytvoření účtu Azure Maps v Azure Portal nebo pomocí PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
S tímto klíčem může každá aplikace přistupovat ke všem rozhraním REST API. Jinými slovy, tento klíč se dá použít jako hlavní klíč v účtu, ve kterému je vystavený.
U veřejně vystavených aplikací doporučujeme pro přístup k Azure Maps rozhraní REST API použít přístup k důvěrným klientským aplikacím, aby se váš klíč mohl bezpečně uložit.
Typ:
apiKey
V:
query
SAS Token
Jedná se o token sdíleného přístupového podpisu, který se vytvoří z operace List SAS v Azure Maps prostředku prostřednictvím roviny správy Azure prostřednictvím Azure Portal, PowerShellu, rozhraní příkazového řádku, sad Azure SDK nebo rozhraní REST API.
S tímto tokenem má každá aplikace autorizaci pro přístup pomocí řízení přístupu na základě role v Azure a podrobnou kontrolu vypršení platnosti, četnosti a oblastí použití konkrétního tokenu. Jinými slovy, token SAS je možné použít k tomu, aby aplikace mohly řídit přístup zabezpečeným způsobem než sdílený klíč.
U veřejně vystavených aplikací doporučujeme nakonfigurovat konkrétní seznam povolených zdrojů v prostředku účtu map , aby se omezilo zneužití vykreslování, a pravidelně obnovovat token SAS.
Typ:
apiKey
V:
header
Příklady
Get the shortest path between two points in the facility.
Ukázkový požadavek
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
Ukázková odpověď
{
"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
}
]
}
]
}
]
}
Definice
Name | Description |
---|---|
avoid |
Chcete-li se vyhnout určitým typům konektorů ve výsledné cestě. Je možné zadat více hodnot. |
Error |
Další informace o chybě správy prostředků |
Error |
Podrobnosti o chybě |
Error |
Chybová odpověď |
Leg |
Část celkové cesty. |
No |
V případě, že nejsou nalezeny žádné cesty, |
Path |
Podrobnosti o konkrétní cestě mezi zdrojem a cílem. Může být tvořen jednou nebo více nohami. |
Point |
Bod v objektu. |
Wayfind |
Objekt vrácený tímto požadavkem Wayfinding Path. |
avoidFeatures
Chcete-li se vyhnout určitým typům konektorů ve výsledné cestě. Je možné zadat více hodnot.
Name | Typ | Description |
---|---|---|
elevators |
string |
Vyhněte se výtahům. |
stairs |
string |
Vyhněte se schodům. |
ErrorAdditionalInfo
Další informace o chybě správy prostředků
Name | Typ | Description |
---|---|---|
info |
object |
Další informace. |
type |
string |
Typ další informace. |
ErrorDetail
Podrobnosti o chybě
Name | Typ | Description |
---|---|---|
additionalInfo |
Další informace o chybě. |
|
code |
string |
Kód chyby |
details |
Podrobnosti o chybě. |
|
message |
string |
Chybová zpráva |
target |
string |
Cíl chyby. |
ErrorResponse
Chybová odpověď
Name | Typ | Description |
---|---|---|
error |
Objekt chyby. |
Leg
Část celkové cesty.
Name | Typ | Description |
---|---|---|
endLevel |
integer |
Podlaha, kde tato noha končí. |
lengthInMeters |
number |
Délka nohy v metrech. |
mode |
string |
Režim procházení nohy pro tuto nohu. Může to být výchozí (vše na stejné úrovni), výtahy nebo schody při pohybu svisle mezi úrovněmi. |
points |
Point[] |
Body tvaru nohy. Jejich svislá pozice je určena následujícím způsobem: všechny body jsou ve stejné výšce, když jsou startLevel a endLevel stejné, jinak bude pole obsahovat pouze dva body: první na startLevel a druhý na endLevel. |
startLevel |
integer |
Podlaha, kde ta noha začíná. |
timeInSeconds |
integer |
Doba pohybu nohy, v sekundách, která se má cestovat mezi prvním a posledním bodem této nohy. |
NoResultExplanation
V případě, že nejsou nalezeny žádné cesty, paths
bude pole prázdné. Pokud lze zjistit důvod, proč nebyly nalezeny žádné cesty, tato vlastnost poskytne vysvětlení.
Name | Typ | Description |
---|---|---|
NoExplanation |
string |
Výchozí hodnota zadaná při vrácení výsledku nebo nebylo možné určit, proč nebyla nalezena cesta. |
Path
Podrobnosti o konkrétní cestě mezi zdrojem a cílem. Může být tvořen jednou nebo více nohami.
Name | Typ | Description |
---|---|---|
legs |
Leg[] |
Různé části cesty. |
lengthInMeters |
number |
Délka celé cesty v metrech. |
timeInSeconds |
integer |
Celková doba cesty (v sekundách) pro cestu mezi zdrojem a cílem při sledování této cesty. |
Point
Bod v objektu.
Name | Typ | Description |
---|---|---|
latitude |
number |
zeměpisná šířka bodu |
longitude |
number |
zeměpisná délka bodu |
WayfindResult
Objekt vrácený tímto požadavkem Wayfinding Path.
Name | Typ | Description |
---|---|---|
noResultExplanation |
V případě, že nejsou nalezeny žádné cesty, |
|
paths |
Path[] |
Pole výsledků cesty. Pokud nebyly nalezeny žádné výsledky, vrátí se prázdné pole. |