Площадь поверхности, покрытая ненулевыми значениями в двоичной сетке данных
A = areamat(BW,R)
A = areamat(BW,R,ellipsoid)
[A, cellarea] = areamat(...)
A = areamat(BW,R)
возвращает площадь поверхности, покрытую элементами двоичной регулярной сетки данных BW
, которые содержат значение 1 (true
). BW
может быть результатом логического выражения, такого как BW = (topo60c > 0)
. R
может быть географическим объектом растровой привязки, ссылочным вектором или матрицей привязки.
Если R
является географическим объектом растровой привязки, его RasterSize
свойство должно быть согласовано с size(BW)
и его RasterInterpretation
должен быть 'cells'
.
Если R
является вектором-ссылкой, это должен быть вектор 1 на 3 с элементами:
[cells/degree northern_latitude_limit western_longitude_limit]
Если R
является матрицей привязки, она должна быть 3 на 2 и преобразовывать индексы растровой строки и столбца в географические координаты или из них в соответствии с:
[lon lat] = [row col 1] * R
Если R
является матрицей привязки, она должна задать (не вращательную, не искаженную) зависимость, в которой каждый столбец сетки данных падает вдоль меридиана, и каждая строка падает вдоль параллели. Интерполяция по ближайшему соседу используется по умолчанию. NaN возвращается для точек, выходящих за пределы сетки или для которых lat
или lon
содержат NaN. Все углы указаны в единицах степеней.
Область выхода A
выражает площадь поверхности как часть площади поверхности сферы единичного радиуса (4 * pi), поэтому результат колеблется от 0 до 1.
A = areamat(BW,R,ellipsoid)
вычисляет площадь поверхности эллипсоида или сферы, заданную входным ellipsoid
, который может быть referenceSphere
, referenceEllipsoid
, или oblateSpheroid
объект или вектор формы [semimajor_axis eccentricity]
. Единицы выходного выхода, A
, являются квадратом длины модулей в которой предусмотрена полумаджорная ось. Для примера, если ellipsoid
заменяется на wgs84Ellipsoid('kilometers')
, затем A
находится в квадратных километрах. Если вы не задаете ellipsoid
и R
является ссылка объекта с непустым GeographicCRS
свойство, затем areamat
использует эллипсоид, содержащийся в Spheroid
свойство geocrs
объект в GeographicCRS
свойство R
.
[A, cellarea] = areamat(...)
возвращает вектор, cellarea
, описывающий область, охватываемую камерами данных в BW
. Поскольку все камеры в данной строке имеют одинаковый размер, для каждой строки требуется только одно значение. Поэтому cellarea
имеет размер M-by-1
, где M = size(BW,1)
количество строк в BW
.
Учитывая регулярную сетку данных, которая является логической матрицей 0-1, areamat
функция возвращает область, соответствующую элементам true или 1. Сетка входных данных может быть логическим оператором, таким как (topo60c > 0)
, что 1 везде, что topo60c
больше 0 метров, и 0 везде. Это рисунок этой матрицы:
Этот расчет основан на areaquad
функция и, следовательно, ограничена только зернистостью клеточных данных.