Буферные зоны для многоугольников широта-долгота
[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
принимает, что это линия.