Буферные зоны для многоугольников широты и долготы
[latb,lonb] = bufferm(lat,lon,bufwidth)
[latb,lonb] = bufferm(lat,lon,bufwidth,direction)
[latb,lonb] = bufferm(lat,lon,bufwidth,direction,npts)
[latb,lonb] = bufferm(lat,lon,bufwidth) вычисляет буферную зону вокруг линии или многоугольника. Если векторы lat и lon, в единицах градусов, определите линию, затем latb и lonb определите многоугольник, содержащий все точки, находящиеся на определенном расстоянии, bufwidth, линии. bufwidth - скаляр, заданный в градусах дуги вдоль поверхности. Если векторы lat и lon определить многоугольник, затем latb и lonb определить область, которая содержит все точки снаружи многоугольника, которые находятся внутри bufwidth многоугольника.
[latb,lonb] = bufferm(lat,lon,bufwidth,direction) где direction указывает, находится ли буферная зона внутри ('in') или снаружи ('out') многоугольника. Третий вариант, 'outPlusInterior', возвращает объединение внешнего буфера (как будет вычислено с помощью 'out') с внутренней частью многоугольника. Если вы не поставляете direction значение, bufferm использование 'out' по умолчанию и возвращает буферную зону вне полигона. Если вы поставляете 'in' в качестве direction значение, bufferm возвращает буферную зону внутри полигона. Если вокруг линии находится буферная зона, 'out' является единственным допустимым вариантом.
[latb,lonb] = bufferm(lat,lon,bufwidth,direction,npts) управляет количеством точек, используемых для построения окружностей вокруг вершин многоугольника. Большее количество точек создает более плавные буферы, но требует больше времени. Если npts опущено, используется 13 точек на круг.
Закрыть все полигоны перед их обработкой с помощью bufferm. Если многоугольник не замкнут, bufferm предполагает, что это линия.