Ajánlott eljárások az Azure Térképek Route szolgáltatáshoz

Az Azure Térképek Route szolgáltatás útvonaltervezési és útvonalmátrix API-jai az egyes kért útvonalak becsült érkezési idejének (ETA-k) kiszámítására használhatók. Az útvonal API-k figyelembe veszik az olyan tényezőket, mint a valós idejű forgalmi információk és a korábbi forgalmi adatok, mint például a kért dátum és idő tipikus közúti sebessége. Az API-k egymás után vagy optimalizált sorrendben, idő vagy távolság alapján visszaadják a legrövidebb vagy leggyorsabb útvonalakat több célhely számára. A felhasználók speciális útvonalakat és részleteket is kérhetnek a gyalogosok, a kerékpárosok és a haszongépjárművek, például a teherautók számára. Ez a cikk az Azure Térképek Route szolgáltatás meghívásának ajánlott eljárásait ismerteti, többek között az útmutatót:

  • Válasszon az Útvonalirányok API-k és a Mátrix útválasztási API között
  • A korábbi és várható utazási idők kérése valós idejű és korábbi forgalmi adatok alapján
  • Útvonaladatok kérése , például az idő és a távolság, a teljes útvonalra és az útvonal minden egyes szakaszára vonatkozóan
  • Útvonal kérése haszongépjárműhöz, például teherautóhoz
  • Forgalmi adatok kérése egy útvonal mentén, például elakadások és útdíjadatok
  • Egy vagy több megállóból (útpontokból) álló útvonal kérése
  • Egy vagy több megálló útvonalának optimalizálása az egyes megállók (útpontok) felkeresésének legjobb sorrendjének eléréséhez
  • Alternatív útvonalak optimalizálása támogató pontok használatával. Kínáljon például alternatív útvonalakat, amelyek egy elektromos jármű töltőállomásán haladnak át.
  • Az Útvonal szolgáltatás használata az Azure Térképek Webes SDK-val

Előfeltételek

  • Azure-Térképek-fiók
  • Előfizetési kulcs

Az Útvonalszolgáltatás lefedettségéről további információt az Útválasztási lefedettség című témakörben talál.

Ez a cikk a Postman-alkalmazás használatával hoz létre REST-hívásokat, de bármilyen API-fejlesztési környezetet választhat.

Válasszon az útvonalirányok és a mátrixos útválasztás között

Az Útvonalirányok API-k útmutatást adnak vissza, beleértve az utazási időt és az útvonal útvonalának koordinátáit. Az Útvonalmátrix API-val kiszámíthatja az utazási időt és a távolságokat a forrás és a célhelyek által meghatározott útvonalak halmazához. A Mátrix API minden adott forrás esetében kiszámítja az adott forrástól az adott célig történő útválasztás költségét (utazási idejét és távolságát). Ezek az API-k lehetővé teszik olyan paraméterek megadását, mint a kívánt indulási idő, érkezési idő és a jármű típusa, például autó vagy teherautó. Ennek megfelelően valós idejű vagy prediktív forgalmi adatokat használnak a legoptimálisabb útvonalak visszaadásához.

Fontolja meg az Útvonalirányok API-k meghívását, ha a forgatókönyv a következő:

  • Kérje meg a legrövidebb vagy leggyorsabb útvonalat két vagy több ismert hely között, hogy pontos érkezési időket kapjon a szállító járművekhez.
  • Részletes útvonal-útmutatás kérése, beleértve az útvonalgeometriát is, az útvonalak térképen való megjelenítéséhez
  • Az ügyfelek helyeinek listájával számítsa ki a lehető legrövidebb útvonalat az egyes ügyfélhelyek felkereséséhez és a forráshoz való visszatéréshez. Ezt a forgatókönyvet gyakran utazó értékesítői problémának is nevezik. Egy kérésben legfeljebb 150 útpontot (megállót) adhat át.
  • Lekérdezések kötegeinek elküldése az Útvonalirányok Batch API-nak egyetlen API-hívással.

Fontolja meg a Matrix Routing API meghívását, ha a forgatókönyv a következő:

  • Kiszámíthatja az utazási időt vagy a távolságokat a forrás és a célhelyek halmaza között. Például 12 sofőrje van, és meg kell találnia a legközelebbi elérhető illesztőprogramot, hogy átvegye az ételt az étteremből.
  • Rendezze a lehetséges útvonalakat a tényleges utazási távolság vagy idő alapján. A Mátrix API csak az egyes forrás- és célkombinációk utazási idejét és távolságait adja vissza.
  • Fürtadatok utazási idő vagy távolság alapján. A vállalat például 50 alkalmazottal rendelkezik, és megkeresi az összes alkalmazottat, aki az irodától számított 20 percen belül dolgozik.

Íme egy összehasonlítás, amely az útvonaltervek és a mátrix API-k néhány funkcióját mutatja be:

Azure Térképek API Lekérdezések maximális száma a kérelemben Kerülje a területeket Teherautó- és elektromos járművek útválasztása A Waypoints és a Traveling Salesman optimalizálása Támogató pontok
Útvonaltervek lekérése 0
Útvonaltervek közzététele 0
Útvonaltervek utáni köteg 700
Útvonal utáni mátrix 700

Ha többet szeretne megtudni az elektromos járművek útválasztási képességeiről, tekintse meg az elektromos járművekNek az Azure Notebooks és a Python használatával történő irányításáról szóló oktatóanyagunkat.

Korábbi és valós idejű adatok kérése

Alapértelmezés szerint a Route szolgáltatás feltételezi, hogy az utazási mód egy autó, és az indulási idő most van. Az útvonalat valós idejű forgalmi feltételek alapján adja vissza, kivéve, ha egy útvonalszámítási kérelem másként nem rendelkezik. Az útválasztási motor tényezői rögzítették az időfüggő forgalomkorlátozásokat, például:"A bal oldali kanyarok nem engedélyezettek 16:00 és 18:00 között". Az útlezárásokat, például az útszakaszokat csak akkor tekintjük útlezárásnak, ha kifejezetten olyan útvonalat kér, amely figyelmen kívül hagyja az aktuális élő forgalmat. Az aktuális forgalom figyelmen kívül hagyásához állítsa be trafficfalse az API-kérésben.

Az útvonalszámítás travelTimeInSeconds értéke tartalmazza a forgalom miatti késést. A rendszer a jelenlegi és a korábbi utazási időadatok használatával hozza létre, amikor az indulási idő most van beállítva. Ha az indulási idő a jövőben be van állítva, az API-k előrejelzett utazási időt adnak vissza az előzményadatok alapján.

Ha a computeTravelTimeFor=all paramétert is belefoglalja a kérésbe, akkor a válasz összegző eleme a következő mezőket tartalmazza, beleértve az előzményforgalmi feltételeket:

Elem Leírás
noTrafficTravelTimeInSeconds Becsült utazási idő, amely úgy van kiszámítva, mintha az útvonal nem késne a forgalmi körülmények, például a torlódás miatt
historicTrafficTravelTimeInSeconds Időfüggő múltbeli forgalmi adatok alapján kiszámított becsült utazási idő
liveTrafficIncidentsTravelTimeInSeconds Valós idejű sebességadatokkal kiszámított becsült utazási idő

A következő szakaszok bemutatják, hogyan kezdeményezhet hívásokat az Útvonal API-k felé a tárgyalt paraméterek használatával.

Mintalekérdezés

Az első alábbi példában az indulási idő a jövőre van állítva, az írás időpontjában.

https://atlas.microsoft.com/route/directions/json?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&query=51.368752,-0.118332:51.385426,-0.128929&travelMode=car&traffic=true&departAt=2025-03-29T08:00:20&computeTravelTimeFor=all

A válasz egy összefoglaló elemet tartalmaz, például az alábbi példát. Mivel az indulási idő a jövőre van állítva, a trafficDelayInSeconds értéke nulla. A travelTimeInSeconds érték kiszámítása időfüggő korábbi forgalmi adatokkal történik. Ebben az esetben tehát a travelTimeInSeconds érték megegyezik a historicTrafficTravelTimeInSeconds értékkel.

"summary": {
    "lengthInMeters": 2131,
    "travelTimeInSeconds": 248,
    "trafficDelayInSeconds": 0,
    "departureTime": "2025-03-29T08:00:20Z",
    "arrivalTime": "2025-03-29T08:04:28Z",
    "noTrafficTravelTimeInSeconds": 225,
    "historicTrafficTravelTimeInSeconds": 248,
    "liveTrafficIncidentsTravelTimeInSeconds": 248
},

Mintalekérdezés

A következő példában van egy valós idejű útválasztási kérés, ahol az indulási idő most van. Nincs explicit módon megadva az URL-címben, mert ez az alapértelmezett érték.

https://atlas.microsoft.com/route/directions/json?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&query=47.6422356,-122.1389797:47.6641142,-122.3011268&travelMode=car&traffic=true&computeTravelTimeFor=all

A válasz az alábbi példában látható összegzést tartalmazza. A torlódás miatt a trafficDelaysInSeconds érték nagyobb, mint nulla. Ez nagyobb, mint a historicTrafficTravelTimeInSeconds.

"summary": {
    "lengthInMeters": 16637, 
    "travelTimeInSeconds": 2905, 
    "trafficDelayInSeconds": 1604, 
    "departureTime": "2020-02-28T01:00:20+00:00",
    "arrivalTime": "2020-02-28T01:48:45+00:00", 
    "noTrafficTravelTimeInSeconds": 872, 
    "historicTrafficTravelTimeInSeconds": 1976, 
    "liveTrafficIncidentsTravelTimeInSeconds": 2905 
},

Útvonal- és lábadatok kérése

Az Útvonal szolgáltatás alapértelmezés szerint koordináták tömböt ad vissza. A válasz tartalmazza az elérési utat alkotó koordinátákat egy névvel ellátott pointslistában. Az útvonal válasza tartalmazza az útvonal kezdetétől és a becsült eltelt időtől való távolságot is. Ezek az értékek a teljes útvonal átlagos sebességének kiszámítására használhatók.

Az alábbi képen az points elem látható.

Pontelem

Bontsa ki az point elemet az elérési út koordinátáinak listájának megtekintéséhez:

Kibontott pontok elem

Az Útvonalirányok API-k az utasítások különböző formátumait támogatják, amelyek az instructionsType paraméter megadásával használhatók. Az egyszerű számítógép-feldolgozásra vonatkozó utasítások formázásához használja az instructionsType=coded parancsot. Az instructionsType=tagged használatával szövegként jelenítheti meg az utasításokat a felhasználó számára. Az utasítások szövegként is formázhatók, ahol az utasítások egyes elemei meg vannak jelölve, és az utasítás speciális formázással jelenik meg. További információkért tekintse meg a támogatott utasítástípusok listáját.

Utasítások kérése esetén a válasz egy új, elnevezett guidanceelemet ad vissza. Az guidance elem két információt tartalmaz: a turn-by-turn irányokat és az összesített utasításokat.

Utasítások típusa

Az instructions elem az utazás menetirányait tartalmazza, és az instructionGroups összesítő utasításokat tartalmazza. Minden utasítás összefoglalása az utazás egy szakaszát fedi le, amely több utat is lefedhet. Az API-k visszaadhatják az útvonal szakaszainak részleteit. például a forgalmi dugók koordinátáinak tartománya vagy a forgalom jelenlegi sebessége.

Turn by turn instructions

Összesített utasítások

Útvonal kérése haszongépjárműhöz

Az Azure Térképek Routing API-k támogatják a haszongépjárművek útválasztását, lefedve a haszongépjárművek útválasztását. Az API-k figyelembe veszik a megadott korlátokat. Ilyen például a jármű magassága és súlya, valamint ha a jármű veszélyes rakományt szállít. Ha például egy jármű gyúlékony, az útválasztási motor elkerül bizonyos, lakóterületek közelében lévő alagutakat.

Mintalekérdezés

Az alábbi mintakérés egy kereskedelmi teherautó útvonalát kéri le. A teherautó 1. osztályú veszélyes hulladékot szállít.

https://atlas.microsoft.com/route/directions/json?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&vehicleWidth=2&vehicleHeight=2&vehicleCommercial=true&vehicleLoadType=USHazmatClass1&travelMode=truck&instructionsType=text&query=51.368752,-0.118332:41.385426,-0.128929

A Route API olyan irányokat ad vissza, amelyek a teherautó méreteit és a veszélyes hulladékot is elférnek. Az útvonal utasításait az elem kibontásával olvashatja guidance el.

Teherautó 1. hazwaste osztálysal

Mintalekérdezés

Az USA Hazmat osztályának módosítása a fenti lekérdezés alapján egy másik útvonalat eredményez a változás kezeléséhez.

https://atlas.microsoft.com/route/directions/json?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&vehicleWidth=2&vehicleHeight=2&vehicleCommercial=true&vehicleLoadType=USHazmatClass9&travelMode=truck&instructionsType=text&query=51.368752,-0.118332:41.385426,-0.128929

A következő válasz egy 9. osztályú veszélyes anyagot tartalmazó teherautóra érvényes, amely kevésbé veszélyes, mint egy 1. osztályú veszélyes anyag. Ha kibontja az guidance elemet az irányok olvasásához, figyelje meg, hogy az irányok nem azonosak. Az 1. osztályú veszélyes anyagot szállító teherautóra további útvonalutasítások is vannak.

Teherautó 9 hazwaste osztálysal

Forgalmi adatok kérése egy útvonal mentén

Az Azure Térképek Útvonalirány API-kkal a fejlesztők az egyes szakasztípusok részleteit kérhetik a kérelemben szereplő paraméter hozzáadásávalsectionType. Kérheti például az egyes forgalmi dugók szegmenseinek sebességadatait. A sectionType kulcs értékeinek listájában megismerheti a kérhető részleteket.

Mintalekérdezés

Az alábbi lekérdezés a következőre állítja a sectionType következőt traffic: . Kéri azokat a szakaszokat, amelyek forgalmi adatokat tartalmaznak Seattle-ből San Diego-ba.

https://atlas.microsoft.com/route/directions/json?subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&sectionType=traffic&query=47.6062,-122.3321:32.7157,-117.1611

A válasz tartalmazza azokat a szakaszokat, amelyek alkalmasak a megadott koordináták mentén történő forgalomra.

Forgalmi szakaszok

Ezzel a beállítással színezhetők a szakaszok a térkép renderelésekor, ahogyan az alábbi képen is látható:

A térképen megjelenített színes szakaszok képernyőképe.

Több megállóval rendelkező útvonal kiszámítása és optimalizálása

Az Azure Térképek jelenleg kétféle útvonaloptimalizálást biztosít:

  • Optimalizálások a kért útvonaltípus alapján, az útpontok sorrendjének módosítása nélkül. További információ: RouteType.

  • Utazó értékesítő optimalizálása, amely megváltoztatja az útpontok sorrendjét, hogy a legjobb megrendelést kapja az egyes megállók meglátogatásához

Többirányú útválasztás esetén legfeljebb 150 útválasztási pont adható meg egyetlen útvonalkérésben. A kezdő és záró koordináta-helyek azonosak lehetnek, mint egy oda-vissza utazás esetén. De legalább egy útpontot meg kell adnia az útvonal kiszámításához. Az útpontok hozzáadhatók a lekérdezéshez a forrás és a célkoordináta között.

Ha a legjobb sorrendet szeretné optimalizálni a megadott útpontok felkereséséhez, akkor meg kell adnia a computeBestOrder=true értéket. Ezt a forgatókönyvet az utazó értékesítő optimalizálási problémájának is nevezik.

Mintalekérdezés

Az alábbi lekérdezés hat útpont elérési útját kéri le, a paraméter értéke falsepedig a computeBestOrder következő. Ez a paraméter alapértelmezett értéke computeBestOrder is.

https://atlas.microsoft.com/route/directions/json?api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&computeBestOrder=false&query=47.606544,-122.336502:47.759892,-122.204821:47.670682,-122.120415:47.480133,-122.213369:47.615556,-122.193689:47.676508,-122.206054:47.495472,-122.360861

A válasz azt írja le, hogy az útvonal hossza 140 851 méter, és hogy 9991 másodpercbe telik az út.

Nem optimalizált válasz

Az alábbi képen a lekérdezésből eredő elérési út látható. Ez az útvonal egy lehetséges útvonal. Ez nem az idő vagy távolság alapján optimális útvonal.

Nem optimalizált útvonallal rendelkező térkép képernyőképe.

Ez az útvonalpont-sorrend a következő: 0, 1, 2, 3, 4, 5 és 6.

Mintalekérdezés

Az alábbi lekérdezés ugyanazt a hat útpontot kéri le, mint a fenti példában. Ezúttal a computeBestOrder paraméter értéke true (az utazó értékesítő optimalizálása).

https://atlas.microsoft.com/route/directions/json?api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&computeBestOrder=true&query=47.606544,-122.336502:47.759892,-122.204821:47.670682,-122.120415:47.480133,-122.213369:47.615556,-122.193689:47.676508,-122.206054:47.495472,-122.360861

A válasz azt írja le, hogy az útvonal hossza 91 814 méter, és hogy 7797 másodpercig tart az út. Az utazási távolság és az utazási idő is alacsonyabb itt, mert az API visszaadta az optimalizált útvonalat.

Optimalizált válasz

Az alábbi képen a lekérdezésből eredő elérési út látható.

Az optimalizált útvonallal rendelkező térkép képernyőképe.

Az optimális útvonal a következő útvonalpont-sorrendet tartalmazza: 0, 5, 1, 2, 4, 3 és 6.

Tipp.

Az útválasztási szolgáltatás optimalizált waypoint-rendelési adatai indexek készletét biztosítják. Ezek kizárják a forrás- és célindexeket. Ezeket az értékeket 1-gyel kell növelnie, hogy figyelembe tudja venni a forrást. Ezután adja hozzá a célhelyet a végéhez a teljes rendezett útpontlista lekéréséhez.

Alternatív útvonalak kiszámítása és torzítása támogató pontok használatával

Előfordulhatnak olyan helyzetek, amikor rekonstruálni szeretne egy útvonalat a referenciaútvonalak nulla vagy több alternatív útvonalának kiszámításához. Megjelenítheti például az ügyfeleknek a kiskereskedelmi üzleten áthaladó alternatív útvonalakat. Ebben az esetben egy helyet támogató pontok használatával kell elfogulnia. Az alábbiakban bemutatjuk a hely elfogultságának lépéseit:

  1. Útvonal számítása a következőképpen, és az útvonal lekérése az útvonal válaszából
  2. Az útvonal útvonalával megkeresheti a kívánt helyeket az útvonal mentén vagy közelében. Használhatja például az Érdeklődési pont kérést, vagy lekérdezheti saját adatait az adatbázisban.
  3. Rendelje meg a helyeket az útvonal kezdetétől való távolság alapján
  4. Adja hozzá ezeket a helyeket támogató pontokként egy új útvonalkérésben a Post Route Directions szolgáltatáshoz. A támogató pontokról további információt a Post Route Directions API dokumentációjában talál.

A Post Route Directions hívása során beállíthatja a minimális eltérési időt vagy a távolsági korlátozásokat, valamint a segédpontokat. Ezeket a paramétereket akkor használja, ha alternatív útvonalakat szeretne kínálni, de az utazási időt is korlátozni szeretné. Ha ezeket a korlátozásokat használja, az alternatív útvonalak a forrásponttól a megadott idő vagy távolság alapján követik a referenciaútvonalat. Más szóval a többi útvonal eltér a referenciaútvonaltól az adott megkötések szerint.

Az alábbi kép egy példa alternatív útvonalak megjelenítésére az idő és a távolság megadott eltérési korlátaival.

Képernyőkép egy másik útvonallal rendelkező térképről.

Az Útválasztás szolgáltatás használata webalkalmazásban

Az Azure Térképek Web SDK szolgáltatásmodult biztosít. Ez a modul egy segédkönyvtár, amely megkönnyíti az Azure Térképek REST API-k webes vagy Node.js alkalmazásokban való használatát JavaScript vagy TypeScript használatával. A szolgáltatásmodul a visszaadott útvonalak térképen való megjelenítésére használható. A modul automatikusan meghatározza, hogy melyik API-t használja a GET és a POST kérésekhez.

Feljegyzés

Azure Térképek Web SDK szolgáltatásmodul kivonása

Az Azure Térképek Webes SDK szolgáltatásmodul elavult, és 26.30.09-én megszűnik. A szolgáltatáskimaradások elkerülése érdekében javasoljuk, hogy 9/30/26-ig migráljon az Azure Térképek JavaScript REST SDK-ba. További információ: JavaScript/TypeScript REST SDK fejlesztői útmutató (előzetes verzió).

Következő lépések

További információ: