Осветите карту ландшафта области

В этом примере показано, как добавить подсветку в карты ландшафта с помощью lightm функция. Чтобы достигнуть более прекрасного управления легкими положениями (например, в небольших районах, освещенных несколькими световыми сигналами), необходимо задать легкие положения с помощью спроектированных координат, потому что световые объекты являются дочерними элементами осей и совместно используют их координатное пространство.

Создайте карту ландшафта.

latlim = [ 41.20  41.95];
lonlim = [-70.95 -70.10];
cd dted\w071 % Note: Your absolute path may vary.
samplefactor = 1;
[capeterrain, caperef] = dted('n41.dt0', samplefactor, ...
   latlim, lonlim);
capeterrain(capeterrain == 0) = -1;
capecoast = shaperead('usastatehi', ...
   'UseGeoCoords', true, ...
   'BoundingBox', [lonlim' latlim']);

Создайте карту области в заданных пределах широты и долготы.

figure
ax = usamap(latlim,lonlim);
geoshow(ax,capecoast,'FaceColor','none');
geoshow(ax,capeterrain,caperef,'DisplayType','texturemap');
demcmap(capeterrain)

Установите вертикальное преувеличение. Используйте daspectm указывать, что вертикальные изменения исчисляются в метрах и должны быть умножены на 20.

daspectm('m',20)

Убедитесь, что данные о линии отображаются. Чтобы гарантировать, что это не затенено ландшафтом, используйте zdatam установить его на самое высокое вертикальное изменение cape1 данные о ландшафте.

zdatam('allline',max(capeterrain(:)))

Задайте местоположение для источника света с lightm функция. (Если вы не используете аргументы, графический интерфейс пользователя для установки позиционных свойств для нового света открывается.)

lightm(42,-71)

Расчеты подсветки заставили карту становиться довольно темной с зеркальными подсветками. Теперь восстановите его яркость путем определения трех поверхностных свойств отражающей способности в области значений от 0 до 1.

ambient = 0.7; diffuse = 1; specular = 0.6;
material([ambient diffuse specular])

Поверхность выглядит пятнистой, потому что нет никакой интерполяции компонента подсветки (плоские фасеты моделируются). Откорректируйте это путем определения штриховки Гура

lighting Gouraud

Чтобы сравнить освещенную карту с неосвещенной версией, отключите подсветку.

lighting none