Этот пример показывает, как вычислить профиль повышения вдоль прямой линии с помощью функции mapprofile
. Вычисление значений данных вдоль пути является распространенным приложением при работе с геоданными с координатной сеткой. Например, вы можете хотеть вычислить высоту ландшафта вдоль поперечного разреза, дороги или курса полета. Функция mapprofile
делает это, на основе числовых данных, задающих набор waypoints, или путем определения их в интерактивном режиме через ввод графических данных от отображения карты. Значения, вычисленные для получившегося профиля, могут быть отображены в новом графике или возвращены как выходные аргументы в пользу последующего анализа или отображения.
Загрузите корейский MAT-файл данных о повышении.
load korea
Получите пределы широты и долготы с помощью limitm
и используйте их, чтобы настроить кадр карты через worldmap
. worldmap
строит только кадр карты.
[latlim, lonlim] = limitm(map, maplegend); figure worldmap(latlim, lonlim)
Представьте карту и примените палитру цифровой модели повышения (DEM) к ней.
meshm(map,maplegend,size(map),map) demcmap(map)
Задайте конечные точки для прямолинейного поперечного разреза через область.
plat = [40.5 30.7]; plon = [121.5 133.5];
Вычислите профиль повышения, с помощью функции mapprofile
с типом дорожки по умолчанию, great circle
, и типом интерполяции по умолчанию, bilinear
.
[z,rng,lat,lon] = mapprofile(map,maplegend,plat,plon);
Чертите поперечный разрез в 3-D, таким образом, он следует за ландшафтом.
plot3m(lat,lon,z,'w','LineWidth',2)
Создайте график из повышения поперечного разреза и области значений.
figure
plot(rng,z,'r')