Azure Haritalar Rakım hizmeti kullanarak yükseltme verileri Haritalar Rakım hizmeti
Azure Haritalar Rakım hizmeti dünyanın herhangi bir yerindeki yükseltme verilerini sorgulamak için API'ler sağlar. Yollarda, tanımlı sınırlayıcı kutu içinde veya belirli koordinatlarda örnekli yükseltme verileri isteğinde bulundurabilirsiniz. Ayrıca, yükseltme verilerini kutucuk biçiminde almak için İşleme V2 - Harita Kutucuğu Alma API'sini kullanabilirsiniz. Kutucuklar GeoTIFF raster biçiminde teslim edilir. Bu makalede, yükseltme verileri isteği Haritalar Rakım hizmeti Azure Haritalar Rakım hizmeti Ve Harita Kutucuğu API'sini nasıl kullanabileceğiniz açıklanmıştır. Yükseltme verileri hem GeoJSON hem de GeoTiff biçimlerde talep edilebilir.
Önkoşullar
- 1. Nesil Haritalar (S1) veya 2.Nesil fiyatlandırma katmanında bir Azure depolama hesabı açın.
- Birincil anahtar veya abonelikanahtarı olarak da bilinen birincil abonelik anahtarını alın.
Azure Haritalar'da kimlik doğrulaması hakkında daha fazla bilgi için bkz. Azure'da Kimlik Doğrulamasını Haritalar.
Bu makalede Postman uygulaması kullanılır, ancak farklı bir API geliştirme ortamı kullanabilirsiniz.
Tarama kutucuğu biçiminde yükseltme verileri isteğinde
Tarama kutucuğu biçiminde yükseltme verileri isteğinde V2-Get Eşleme Kutucuğu API'sini kullanın. Kutucuk bulunabilirse API kutucuğu GeoTIFF olarak döndürür. Aksi takdirde API 0 döndürür. Tüm raster DEM kutucukları coğrafi bölge (deniz düzeyi) Dünya modunu kullanır. Bu örnekte Mt. için yükseltme verileri isteğinde bulunduk. Everest.
İpucu
Dünya haritasında belirli bir alanda yer alan bir kutucuğu almak için uygun yakınlaştırma düzeyinde doğru kutucuğu bulun. WorldDEM'in tüm küresel kara maskelerini kapsasa da okyanusları kapsamayabileceğini unutmayın. Daha fazla bilgi için bkz. Yakınlaştırma düzeyleri ve kutucuk kılavuzu.
Postman uygulamasını kullanarak tarama kutucuğu biçiminde yükseltme verileri talep etmek için:
Postman uygulamasında Yeni'yi seçin.
Yeni Oluştur penceresinde HTTP İsteği'ne tıklayın.
İstek için bir İstek adı girin.
Oluşturucu sekmesinde GET HTTP yöntemini seçin ve ardından raster kutucuğunu talep etmek için aşağıdaki URL'yi girin.
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=3432Önemli
Bu istek ve bu makalede bahsedilen diğer istekler için yerine
{Azure-Maps-Primary-Subscription-key}birincil abonelik anahtarınızı alın.Gönder düğmesini seçin.
GeoTIFF biçiminde yükseltme verilerini içeren tarama kutucuğunu alasınız. Raster kutucuğu ham verileri içindeki her piksel
floattüründedir. Her pikselin değeri, metre olarak yükseltme yüksekliğini temsil eder.
GeoJSON biçiminde yükseltme verileri isteğinde
GeoJSON biçiminde yükseltme verileri isteğinde Rakım hizmeti kullanın. Bu bölümde bu API'lerden her biri açık bir şekilde açık almaktadır:
- Noktalar için Veri Al
- Noktalar için Veri Gönderisi
- Polyline için Veri Al
- Polyline için Veri Post
- Sınırlayıcı Kutu için Veri Al
Önemli
Veri döndürülene kadar tüm API'ler 0 döndürülür.
Noktalar için yükseltme verileri isteği
Bu örnekte, Mt'de yükseltme verileri talep etmek için Noktalar için Veri Al API'sini kullan istiyoruz. Everest ve Chamlang dağlarını. Ardından, aynı iki nokta kullanarak yükseltme verileri talep etmek üzere Noktalar için Veri Sonrası API'sini kullanılarız. URL'de enlemlerin ve boylamların WGS84 (Dünya Coğrafi Sistemi) ondalık derecesinde olması beklenir.
Önemli
URL karakter uzunluğu sınırı 2048'tir, bu nedenle BIR URL GET isteğinde işlem hattıyla ayrılmış dize olarak 100'den fazla koordinat geçmek mümkün değildir. İşlem hattıyla sınırlandırılmış bir dize olarak 100'den fazla koordinatı geçmeyi niyetliysiniz, Noktalar için Veri Post API'sini kullanın.
İsteği oluşturmak için:
Postman uygulamasında yeniden Yeni'yi seçin.
Yeni Oluştur penceresinde HTTP İsteği'ne tıklayın.
İstek için bir İstek adı girin.
Oluşturucu sekmesinde GET HTTP yöntemini seçin ve ardından aşağıdaki URL'yi girin (yerine
{Azure-Maps-Primary-Subscription-key}birincil abonelik anahtarınızı yazın):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.397Gönder düğmesini seçin. Aşağıdaki JSON yanıtını alırsınız:
{ "data": [ { "coordinate": { "latitude": 40.714728, "longitude": -73.998672 }, "elevationInMeter": 12.142355447638208 }, { "coordinate": { "latitude": -34.397, "longitude": 150.644 }, "elevationInMeter": 384.47041445517846 } ] }Şimdi, aynı iki noktanın yükseltme verilerini almak için Noktalar için Veri Sonrası API'sini çağırabilirsiniz. Oluşturucu sekmesinde POST HTTP yöntemini seçin ve ardından aşağıdaki URL'yi girin (yerine birincil
{Azure-Maps-Primary-Subscription-key}abonelik anahtarınızı yazın):https://atlas.microsoft.com/elevation/point/json?subscription-key={Your-Azure-Maps-Primary-Subscription-key}&api-version=1.0POST isteğinin Üst Bilgiler alanında olarak
Content-Typeapplication/jsonayarlayın.Gövde alanında aşağıdaki koordinat noktası bilgilerini girin:
[ { "lon": -73.998672, "lat": 40.714728 }, { "lon": 150.644, "lat": -34.397 } ]Gönder’i seçin.
Polyline üzerinde yükseltme verisi örnekleri isteği
Bu örnekte, Mt'de koordinatlar arasında düz bir çizgi üzerinde eşit olarak boşluklu beş yükseltme verisi örneği isteğinde bulunan Polyline API'si için Veri Al'ın kullanalım. Everest ve Chamlang dağlarını. Her iki koordinat da boylam/enlem biçiminde tanımlanmalıdır. parametresi için bir değer belirtmezseniz samples örnek sayısı varsayılan olarak 10'a kadardır. En fazla örnek sayısı 2.000'tir.
Ardından Polyline API'si için Veri Al'ı kullanarak bir yol üzerinde eşit olarak boşluklu üç yükseltme verisi örneği talep edeceğiz. Üç boylam/enlem koordinat çiftini geçerek örneklerin kesin konumunu tanımlayabilirsiniz.
Son olarak, aynı üç eşit boşluklu örnekte yükseltme verileri isteğinde bulunan Polyline API'si için Veri Sonrası'nın kullanıcaz.
URL'de enlemlerin ve boylamların WGS84 (Dünya Coğrafi Sistemi) ondalık derecesinde olması beklenir.
Önemli
URL karakter uzunluğu sınırı 2048'tir, bu nedenle BIR URL GET isteğinde işlem hattıyla ayrılmış dize olarak 100'den fazla koordinat geçmek mümkün değildir. İşlem hattıyla sınırlandırılmış bir dize olarak 100'den fazla koordinatı geçmeyi amacın varsa, Noktalar için Veri Sonrası API'sini kullanın.
İsteği oluşturmak için:
Postman uygulamasında Yeni'yi seçin.
Yeni Oluştur penceresinde HTTP İsteği'ne tıklayın.
İstek adı girin.
Oluşturucu sekmesinde GET HTTP yöntemini seçin ve ardından aşağıdaki URL'yi girin (yerine
{Azure-Maps-Primary-Subscription-key}birincil abonelik anahtarınızı yazın):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=5Gönder düğmesini seçin. Aşağıdaki JSON yanıtını alırsınız:
{ "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 } ] }Şimdi Mount Everest, Chamlang ve Jannu dağlarının koordinatları arasındaki yolda üç yükseltme verisi örneği talep edeceğiz. Params alanına sorgu anahtarının değeri için aşağıdaki koordinat
linesdizisini girin.86.9797222, 27.775|86.9252778, 27.9880556 | 88.0444444, 27.6822222Sorgu anahtarı
samplesdeğerini olarak3değiştirme. Aşağıdaki görüntüde yeni değerler gösterilmiştir.
Gönder’i seçin. Aşağıdaki JSON yanıtını alırsınız:
{ "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 } ] }Şimdi aynı üç nokta için yükseltme verilerini almak için Polyline API'si için Post Data (Post Data for Polyline API) çağrısında bulunuyoruz. Oluşturucu sekmesinde POST HTTP yöntemini seçin ve ardından aşağıdaki URL'yi girin (yerine
{Azure-Maps-Primary-Subscription-key}birincil abonelik anahtarınızı yazın):https://atlas.microsoft.com/elevation/line/json?api-version=1.0&subscription-key={Your-Azure-Maps-Primary-Subscription-key}&samples=5POST isteğinin Üst Bilgiler alanında olarak
Content-Typeapplication/jsonayarlayın.Gövde alanında aşağıdaki koordinat noktası bilgilerini girin.
[ { "lon": 86.9797222, "lat": 27.775 }, { "lon": 86.9252778, "lat": 27.9880556 }, { "lon": 88.0444444, "lat": 27.6822222 } ]Gönder’i seçin.
Bounding Box tarafından yükseltme verileri isteği
Şimdi Bounding Box için Veri Al kutusunu kullanarak Mt'ye yakın bir yerde yükseltme verileri talep etmek için kullanyız. Washington'da Rainier. Yükseltme verileri sınırlayıcı kutu içindeki eşit aralı konumlarda döndürülür. Sınırlayıcı alan iki enlem/boylam koordinat kümesiyle tanımlanır (güney enlem, batı boylam | enlem, doğu boylam) ve satırlara ve sütunlara ayrılır. Sınırlayıcı kutunun kenarları iki satır ve iki sütun için hesap oluşturur. Satır ve sütun kesişiminde oluşturulan kılavuz köşeleri için yükseltmeler döndürülür. Tek bir istekte en fazla 2000 yükseltme döndürüldü.
Bu örnekte rows=3 ve columns=6 sütunlarını belirtebilirsiniz. Yanıt 18 yükseltme değeri döndürür. Aşağıdaki diyagramda, yükseltme değerleri, güneydoğu köşesinden başlayarak sıralayarak batıdan doğuya ve güneyden kuzeye doğru devam eder. Yükseltme noktaları döndürül düzende numara verilir.
İsteği oluşturmak için:
Postman uygulamasında Yeni'yi seçin.
Yeni Oluştur penceresinde HTTP İsteği'ne tıklayın.
İstek adı girin.
Oluşturucu sekmesinde GET HTTP yöntemini seçin ve ardından aşağıdaki URL'yi girin (yerine
{Azure-Maps-Primary-Subscription-key}birincil abonelik anahtarınızı yazın):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=3Gönder’i seçin. Yanıt, kılavuzun her köşesi için bir tane olmak için 18 yükseltme veri örneği döndürür.
{ "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 } ] }
Örnekler: Azure Rakım hizmeti Denetimi'Haritalar API'lerini kullanma
Koordinat konumunu kullanarak yükseltme verilerini al
Aşağıdaki örnek web sayfası, bir koordinat noktasında yükseltme verilerini görüntülemek için harita denetimi kullanmayı açıklar. Kullanıcı işaretçiyi sürüklerken, harita yükseltme verilerini bir açılır pencerede görüntüler.
Sınırlayıcı kutuyla yükseltme verilerini al
Aşağıdaki örnek web sayfası, sınırlayıcı kutu içinde yer alan yükseltme verilerini görüntülemek için harita denetimi kullanmayı açıklar. Kullanıcı, sol üst köşedeki simgeyi seçerek ve haritanın herhangi bir yerinde kareyi çizerek square sınırlayıcı kutuyu tanımlar. Ardından harita denetimi, yükseltme verilerini sağ üst köşedeki anahtarda belirtilen renklere göre işler.
Polyline yoluna göre yükseltme verilerini al
Aşağıdaki örnek web sayfası, bir yol üzerinde yükseltme verilerini görüntülemek için harita denetimi kullanmayı açıklar. Kullanıcı, sol üst köşedeki simgeyi seçerek ve ardından Harita Polyline üzerinde Polyline'ı çizerek yolu tanımlar. Ardından harita denetimi, yükseltme verilerini sağ üst köşedeki anahtarda belirtilen renklerle işler.
Sonraki adımlar
Azure Haritalar ElevationAPIs'leri daha fazla keşfetmek için bkz:
Azure rest API'lerinin Haritalar listesi için bkz: