Вычислите профиль повышения вдоль прямой линии

Этот пример показывает, как вычислить профиль повышения вдоль прямой линии с помощью функции 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')