meshgrat

Создайте координатную сетку карты для отображения объекта подложки

Синтаксис

[lat, lon] = meshgrat(Z, R)
[lat, lon] = meshgrat(Z, R, gratsize)
[lat, lon] = meshgrat(lat, lon)
[lat, lon] = meshgrat(latlim, lonlim, gratsize)
[lat, lon] = meshgrat(lat, lon, angleunits)
[lat, lon] = meshgrat(latlim, lonlim, angleunits)
[lat, lon] = meshgrat(latlim, lonlim, gratsize, angleunits)

Описание

[lat, lon] = meshgrat(Z, R) создает координатную сетку для использования в отображении обычной сетки данных, Z. В типичном использовании спроектирована координатная сетка долготы широты, и сетка деформирована к координатной сетке с помощью функций графики MATLAB®. В этой форме вызова 2D аргумента размер координатной сетки равен размеру ZR может быть географический объект растровой привязки, вектор ссылки или матрица привязки.

Если R географический объект растровой привязки, его RasterSize свойство должно быть сопоставимо с size(Z).

Если R вектор ссылки, это должно быть 1 3 с элементами:

[cells/degree northern_latitude_limit western_longitude_limit]
Если R матрица привязки, это должно быть 3 2 и преобразовать растровые индексы строки и столбца к/от географическим координатам согласно:
[lon lat] = [row col 1] * R
Если R матрица привязки, она должна задать (невращательный, нескошенный) отношение, в котором каждый столбец сетки данных падает вдоль меридиана и каждой строки падения вдоль параллели.

[lat, lon] = meshgrat(Z, R, gratsize) производит координатную сетку размера gratsize. gratsize двухэлементный вектор из формы [number_of_parallels number_of_meridians]. Если gratsize = [], затем возвращенная координатная сетка имеет размер по умолчанию 50 100. (Но если gratsize не использован, координатная сетка одного размера с Z возвращен.) Более прекрасная координатная сетка использует большие массивы и берет больше памяти и время, но производит более высокую карту точности.

[lat, lon] = meshgrat(lat, lon) берет векторы lat и lon и возвращает массивы координатной сетки размера numel(lat)-by-numel(lon). В этой форме, meshgrat похоже на функцию MATLAB meshgrid.

[lat, lon] = meshgrat(latlim, lonlim, gratsize) возвращает сетку координатной сетки размера gratsize это покрывает географические пределы, заданные двухэлементными векторами latlim и lonlim.

[lat, lon] = meshgrat(lat, lon, angleunits), [lat, lon] = meshgrat(latlim, lonlim, angleunits), и [lat, lon] = meshgrat(latlim, lonlim, gratsize, angleunits) где angleunits может быть любой 'degrees' (значение по умолчанию) или 'radians'.

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

Примеры

Сделайте (крупную) координатную сетку для всего мира:

latlim = [-90 90]; 
lonlim = [-180 180];
[lat,lon] = meshgrat(latlim,lonlim,[3 6])

lat =
  -90.0000  -90.0000  -90.0000  -90.0000  -90.0000  -90.0000
         0         0         0         0         0         0
   90.0000   90.0000   90.0000   90.0000   90.0000   90.0000
lon =
 -180.0000 -108.0000  -36.0000   36.0000  108.0000  180.0000
 -180.0000 -108.0000  -36.0000   36.0000  108.0000  180.0000
 -180.0000 -108.0000  -36.0000   36.0000  108.0000  180.0000

Эти парные координаты являются вершинами координатной сетки, которые спроектированы согласно требованиям желаемой проекции карты. Затем данные, такие как данные о вертикальном изменении в topo60c может быть деформирован к сетке.

Смотрите также

| | |