Буферные зоны полигона

Буферная зона является областью на заданном расстоянии функции карты. Для векторных геоданных буферные зоны создаются как полигоны. Буферная зона может быть задана как местоположение точек на определенном расстоянии от контура полигона функции, любая внутренняя или внешняя часть полигон. Буферные зоны формируют равноотстоящие линии контура вокруг объектов.

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

Сгенерируйте буфер, внутренний к полигону

Этот пример показывает, как использовать функцию bufferm, чтобы сгенерировать буферную зону, внутреннюю к полигону контактной площадки. Для получения дополнительной информации об этой теме, смотрите Буферные зоны Полигона.

Импортируйте Мадагаскарскую форму полигона.

madagascar = shaperead('landareas','UseGeoCoords',true, ...
    'Selector', {@(name)strcmpi(name,'Madagascar'),'Name'});

Создайте карту, показывающую Мадагаскар.

figure
worldmap('madagascar')
geoshow(madagascar)

Используйте bufferm, чтобы создать буферную зону, которая расширяет 0,75 градуса внутри страны от побережья Мадагаскара.

madlat = madagascar.Lat;
madlon = madagascar.Lon;
bufwidth = 0.75;
direction = 'in';
[latbuf,lonbuf] = bufferm(madlat,madlon,bufwidth,direction);

Отобразите буферную зону зеленым.

geoshow(latbuf,lonbuf,'DisplayType','polygon','FaceColor','green')