www.gusucode.com > map 案例源码 matlab代码程序 > map/GenerateBufferInternalToPolygonExample.m

    %% Generate Buffer Internal to Polygon
% This example shows how to use the <docid:map_ref.f12-569586> function to
% generate a buffer zone internal to a land area polygon. For more
% information about this topic, see <docid:map_ug.f7-6413>.
%%
% Import Madagascar polygon shape.

% Copyright 2015 The MathWorks, Inc.

madagascar = shaperead('landareas','UseGeoCoords',true, ...
    'Selector', {@(name)strcmpi(name,'Madagascar'),'Name'});
%%
% Create a map showing Madagascar.
figure
worldmap('madagascar')
geoshow(madagascar)
%%
% Use |bufferm| to create a buffer zone that extends 0.75 degrees inland
% from the coast of Madagascar.
madlat = madagascar.Lat;
madlon = madagascar.Lon;
bufwidth = 0.75;
direction = 'in';
[latbuf,lonbuf] = bufferm(madlat,madlon,bufwidth,direction);
%%
% Show the buffer zone in green.
geoshow(latbuf,lonbuf,'DisplayType','polygon','FaceColor','green')