Vyžádání dat o zvýšení oprávnění pomocí azure Mapy Elevation
Azure Mapy Elevation poskytuje rozhraní API pro dotazování dat o zvýšení oprávnění kdekoli na povrchu Země. Můžete si vyžádat vzorkovaná data o zvýšení oprávnění v cestách, v rámci definovaného ohraničovacího rámečku nebo na konkrétních souřadnicích. K načtení dat o zvýšení oprávnění ve formátu dlaždice můžete také použít rozhraní API Render V2 – Get Map Tile (Vykreslení V2 – Získat dlaždici mapy). Dlaždice se doručí ve formátu raster GeoTIFF. Tento článek popisuje, jak pomocí azure Mapy Elevation a rozhraní API Získat dlaždici mapy požádat o data o zvýšení oprávnění. Data o zvýšení oprávnění je možné vyžádat ve formátu GeoJSON i GeoTiff.
Požadavky
- Vytvořte si účet Azure Mapy v cenové úrovni Gen 1 (S1) nebo Gen 2.
- Získejte primární klíč předplatného, označované také jako primární klíč nebo klíč předplatného.
Další informace o ověřování v Azure Mapy najdete v tématu Správa ověřování v Azure Mapy.
Tento článek používá aplikaci Postman, ale můžete použít jiné vývojové prostředí API.
Vyžádání dat o zvýšení oprávnění ve formátu rastrové dlaždice
Pokud si chcete vyžádat data o zvýšení oprávnění ve formátu rastrové dlaždice, V2-Get rozhraní API pro mapové dlaždice. Pokud je dlaždice nalezena, rozhraní API vrátí dlaždici jako GeoTIFF. Jinak rozhraní API vrátí hodnotu 0. Všechny rastrové dlaždice DEM používají režim Geoid (sea level) Earth .) V tomto příkladu si vyžádáme data o zvýšení oprávnění pro Mt. Everest.
Tip
Pokud chcete načíst dlaždici v konkrétní oblasti mapy světa, najděte správnou dlaždici na odpovídající úrovni přiblížení. Všimněte si také, že WorldDEM pokrývá celé globální zeměkouly, ale nepokrývá oceány. Další informace najdete v tématu Úrovně přiblížení a mřížka dlaždic.
Vyžádání dat o zvýšení oprávnění ve formátu rastrové dlaždice pomocí aplikace Postman:
V aplikaci Postman vyberte Nový.
V okně Vytvořit nový vyberte Požadavek HTTP.
Zadejte název žádosti.
Na kartě Builder (Tvůrce) vyberte metodu GET HTTP a zadáním následující adresy URL si vyžádejte rastrovou dlaždici.
https://atlas.microsoft.com/map/tile?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=2.0&tilesetId=microsoft.dem&zoom=13&x=6074&y=3432Důležité
U této žádosti a dalších požadavků uvedených v tomto článku nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného.Vyberte tlačítko Odeslat.
Měli byste obdržet rastrovou dlaždici, která obsahuje data o zvýšení oprávnění ve formátu GeoTIFF. Každý pixel v rámci rastrové dlaždice má nezpracovaná data typu
float. Hodnota každého pixelu představuje výšku zvýšení v metrech.
Vyžádání dat o zvýšení oprávnění ve formátu GeoJSON
K vyžádání dat o zvýšení oprávnění ve formátu GeoJSON použijte Elevation API. Tato část popisuje každé z těchto rozhraní API:
- Získání dat pro body
- Post data pro body
- Získání dat pro polyline
- Post data pro line (line)
- Získání dat pro ohraničující rámeček
Důležité
Pokud není možné vrátit žádná data, vrátí všechna rozhraní API hodnotu 0.
Vyžádání dat o zvýšení oprávnění pro body
V tomto příkladu použijeme rozhraní API Získat data pro body k vyžádání dat o zvýšení oprávnění na Mt. Everest a Nalang. Pak použijeme rozhraní API Post Data for Points k vyžádání dat o zvýšení oprávnění pomocí stejných dvou bodů. Očekává se, že zeměpisné šířky a délky v adrese URL budou v desetinném stupních WGS84 (World Geodetic System).
Důležité
Omezení délky znaků adresy URL je 2048, takže v požadavku GET adresy URL není možné předat více než 100 souřadnic jako řetězec s oddělovači kanálu. Pokud chcete jako řetězec s oddělovači kanálu předat více než 100 souřadnic, použijte rozhraní API Post Data for Points.
Vytvoření požadavku:
V aplikaci Postman znovu vyberte Nový.
V okně Vytvořit nový vyberte Požadavek HTTP.
Zadejte název žádosti.
Na kartě Builder (Tvůrce) vyberte metodu GET HTTP a pak zadejte následující adresu URL (nahraďte primárním klíčem
{Azure-Maps-Primary-Subscription-key}předplatného):https://atlas.microsoft.com/elevation/point/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&points=-73.998672,40.714728|150.644,-34.397Vyberte tlačítko Odeslat. Obdržíte následující odpověď JSON:
{ "data": [ { "coordinate": { "latitude": 40.714728, "longitude": -73.998672 }, "elevationInMeter": 12.142355447638208 }, { "coordinate": { "latitude": -34.397, "longitude": 150.644 }, "elevationInMeter": 384.47041445517846 } ] }Teď zavoláme rozhraní API Post Data for Points, aby bylo k dispozici data o zvýšení oprávnění pro stejné dva body. Na kartě Builder (Tvůrce) vyberte metodu POST HTTP a pak zadejte následující adresu URL (nahraďte primárním klíčem
{Azure-Maps-Primary-Subscription-key}předplatného):https://atlas.microsoft.com/elevation/point/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0V poli Hlavičky požadavku POST nastavte
Content-Typenaapplication/json.Do pole Text zadejte následující informace o bodu souřadnice:
[ { "lon": -73.998672, "lat": 40.714728 }, { "lon": 150.644, "lat": -34.397 } ]Vyberte Odeslat.
Vyžádání ukázek dat o zvýšení oprávnění u polyline
V tomto příkladu použijeme získat data pro rozhraní POLYLINE API a vyžádáme si pět rovnoměrně mezerovaných vzorků dat o zvýšení oprávnění podél přímky mezi souřadnicemi na Mt. Everest a Nalang. Obě souřadnice musí být definovány ve formátu zeměpisné délky a šířky. Pokud nezadáte hodnotu parametru , bude počet vzorků samples ve výchozím nastavení 10. Maximální počet vzorků je 2 000.
Pak použijeme rozhraní API Získat data pro Polyline a vyžádáme si tři rovnoměrně odlené vzorky dat o zvýšení oprávnění na cestě. Přesné umístění vzorků definujeme předáním tří dvojic souřadnic zeměpisné délky a šířky.
Nakonec použijeme rozhraní API Post Data for Polyline k vyžádání dat o zvýšení oprávnění ve stejných třech rovnoměrně mezerovaných vzorcích.
Očekává se, že zeměpisné šířky a délky v adrese URL budou v desetinném stupních WGS84 (World Geodetic System).
Důležité
Omezení délky znaků adresy URL je 2048, takže v požadavku GET adresy URL není možné předat více než 100 souřadnic jako řetězec s oddělovači kanálu. Pokud chcete jako řetězec s oddělovači kanálu předat více než 100 souřadnic, použijte rozhraní API Post Data for Points.
Vytvoření požadavku:
V aplikaci Postman vyberte Nový.
V okně Vytvořit nový vyberte Požadavek HTTP.
Zadejte Název požadavku.
Na kartě Builder (Tvůrce) vyberte metodu GET HTTP a pak zadejte následující adresu URL (nahraďte primárním klíčem
{Azure-Maps-Primary-Subscription-key}předplatného):https://atlas.microsoft.com/elevation/line/json?api-version=1.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}&lines=-73.998672,40.714728|150.644,-34.397&samples=5Vyberte tlačítko Odeslat. Obdržíte následující odpověď JSON:
{ "data": [ { "coordinate": { "latitude": 40.714728, "longitude": -73.998672 }, "elevationInMeter": 12.14236 }, { "coordinate": { "latitude": 21.936796000000001, "longitude": -17.838003999999998 }, "elevationInMeter": 0.0 }, { "coordinate": { "latitude": 3.1588640000000012, "longitude": 38.322664000000003 }, "elevationInMeter": 598.66943 }, { "coordinate": { "latitude": -15.619067999999999, "longitude": 94.483332000000019 }, "elevationInMeter": 0.0 }, { "coordinate": { "latitude": -34.397, "longitude": 150.644 }, "elevationInMeter": 384.47041 } ] }Teď si vyžádáme tři vzorky dat o zvýšení oprávnění na cestě mezi souřadnicemi na Mount Everestu, Nanlangu a Jannu. Do pole Parametry zadejte následující pole souřadnic pro hodnotu klíče
linesdotazu.86.9797222, 27.775|86.9252778, 27.9880556 | 88.0444444, 27.6822222Změňte
sampleshodnotu klíče dotazu na3. Na následujícím obrázku jsou nové hodnoty.
Vyberte Odeslat. Obdržíte následující odpověď JSON:
{ "data": [ { "coordinate": { "latitude": 27.775, "longitude": 86.9797222 }, "elevationInMeter": 7116.0348851572589 }, { "coordinate": { "latitude": 27.737403546316028, "longitude": 87.411180791156454 }, "elevationInMeter": 1798.6945512521534 }, { "coordinate": { "latitude": 27.682222199999998, "longitude": 88.0444444 }, "elevationInMeter": 7016.9372013588072 } ] }Teď zavoláme rozhraní API Post Data for Polyline, které získejte data o zvýšení oprávnění pro stejné tři body. Na kartě Builder (Tvůrce) vyberte metodu POST HTTP a pak zadejte následující adresu URL (nahraďte primárním klíčem
{Azure-Maps-Primary-Subscription-key}předplatného):https://atlas.microsoft.com/elevation/line/json?api-version=1.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}&samples=5V poli Hlavičky požadavku POST nastavte
Content-Typenaapplication/json.Do pole Text zadejte následující informace o bodu souřadnice.
[ { "lon": 86.9797222, "lat": 27.775 }, { "lon": 86.9252778, "lat": 27.9880556 }, { "lon": 88.0444444, "lat": 27.6822222 } ]Vyberte Odeslat.
Vyžádání dat o zvýšení oprávnění o ohraničující rámeček
Teď použijeme získat data pro ohraničující rámeček k vyžádání dat o zvýšení oprávnění v blízkosti Mt. Rainier ve státě Washington. Data o zvýšení oprávnění budou vrácena v rovnoměrně mezerách v rámci ohraničovacího rámečku. Ohraničující oblast je definována dvěma sadami souřadnic zeměpisné šířky a délky (jižní šířka, západní zeměpisná délka | severní šířka, východní zeměpisná délka) a je rozdělená do řádků a sloupců. Hrany ohraničovacího rámečku se účtuují za dva řádky a dva sloupce. Pro vrcholy mřížky vytvořené v průsečíkech řádků a sloupců se vrátí zvýšení oprávnění. V jednom požadavku se dá vrátit až 2000 zvýšení úrovně oprávnění.
V tomto příkladu zadáme řádky = 3 a sloupce = 6. Odpověď vrátí 18 hodnot zvýšení úrovně. V následujícím diagramu jsou hodnoty zvýšení úrovně seřazené počínaje rohovém rohem a pak budou v oblasti západní až východní a jižní až Severní. Body zvýšení oprávnění jsou očíslovány v pořadí, ve kterém jsou vraceny.
Postup vytvoření žádosti:
V aplikaci pro odesílání vyberte Nový.
V okně vytvořit nové vyberte požadavek HTTP.
Zadejte název žádosti.
Na kartě Tvůrce vyberte metodu Get http a zadejte následující adresu URL (nahraďte
{Azure-Maps-Primary-Subscription-key}primárním klíčem předplatného):https://atlas.microsoft.com/elevation/lattice/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0&bounds=-121.66853362143818, 46.84646479863713,-121.65853362143818, 46.85646479863713&rows=2&columns=3Vyberte Odeslat. Odpověď vrátí 18 vzorků dat zvýšení oprávnění, jednu pro každý vrchol mřížky.
{ "data": [ { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.66853362143819 }, "elevationInMeter": 2298.6581875651746 }, { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.66653362143819 }, "elevationInMeter": 2306.3980756609963 }, { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.66453362143818 }, "elevationInMeter": 2279.3385479564113 }, { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.66253362143819 }, "elevationInMeter": 2233.1549264690366 }, { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.66053362143818 }, "elevationInMeter": 2196.4485923541492 }, { "coordinate": { "latitude": 46.846464798637129, "longitude": -121.65853362143818 }, "elevationInMeter": 2133.1756767157253 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.66853362143819 }, "elevationInMeter": 2345.3227848228803 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.66653362143819 }, "elevationInMeter": 2292.2449195443587 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.66453362143818 }, "elevationInMeter": 2270.5867788258074 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.66253362143819 }, "elevationInMeter": 2296.8311427390604 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.66053362143818 }, "elevationInMeter": 2266.0729430891065 }, { "coordinate": { "latitude": 46.849798131970459, "longitude": -121.65853362143818 }, "elevationInMeter": 2242.216346631234 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.66853362143819 }, "elevationInMeter": 2378.460838833359 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.66653362143819 }, "elevationInMeter": 2327.6761137260387 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.66453362143818 }, "elevationInMeter": 2208.3782743402949 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.66253362143819 }, "elevationInMeter": 2106.9526472760981 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.66053362143818 }, "elevationInMeter": 2054.3270174034078 }, { "coordinate": { "latitude": 46.8531314653038, "longitude": -121.65853362143818 }, "elevationInMeter": 2030.6438331110671 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.66853362143819 }, "elevationInMeter": 2318.753153399402 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.66653362143819 }, "elevationInMeter": 2253.88875188271 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.66453362143818 }, "elevationInMeter": 2136.6145845357587 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.66253362143819 }, "elevationInMeter": 2073.6734467948486 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.66053362143818 }, "elevationInMeter": 2042.994055784251 }, { "coordinate": { "latitude": 46.856464798637127, "longitude": -121.65853362143818 }, "elevationInMeter": 1988.3631481900356 } ] }
ukázky: použití rozhraní api služby zvýšení oprávnění v ovládacím prvku Azure Maps
Získat data zvýšení úrovně podle pozice souřadnic
Následující ukázková webová stránka popisuje, jak pomocí mapového ovládacího prvku zobrazit data zvýšení úrovně v bodě souřadnic. Když uživatel značku přetáhne, mapa zobrazí data zvýšení úrovně v překryvném okně.
Získat data zvýšení úrovně pomocí ohraničovacího boxu
Následující ukázková webová stránka popisuje, jak pomocí mapového ovládacího prvku zobrazit data zvýšení oprávnění obsažená v ohraničujícím poli. Uživatel definuje ohraničovací rámeček tak, že vybere square ikonu v levém horním rohu a pak nakreslí čtverc kdekoli na mapě. Mapový ovládací prvek následně vykreslí data zvýšení oprávnění v souladu s barvami, které jsou uvedeny v klíči, který je umístěn v pravém horním rohu.
Získat data zvýšení úrovně podle cesty lomené čáry
Následující ukázková webová stránka popisuje, jak pomocí mapového ovládacího prvku zobrazit data zvýšení úrovně podél cesty. Uživatel definuje cestu tak, že ji vybere Polyline v levém horním rohu a pak na mapě nakreslí lomenou čáru. Mapový ovládací prvek následně vykreslí data zvýšení úrovně ve barvách, které jsou zadány v klíči umístěném v pravém horním rohu.
Další kroky
další zkoumání Azure Maps ElevationAPIs naleznete zde:
úplný seznam Azure Maps rozhraní REST api najdete v tématu: