exponenta event banner

geocontourxy

Контурная сетка в локальной системе с результатами широты-долготы

Описание

пример

[contourLines,contourPolygons] = geocontourxy(X,Y,Z,lat0,lon0,h0) возвращает геошапы линий и полигонов, содержащие контурные линии и контурные полигоны заливки соответственно. Эта функция неграфическая. Можно распечатать возвращаемые значения с помощью geoshow, при желании.

[___] = geocontourxy(___,Name,Value) задает пары имя-значение, которые управляют аспектами операции. Имена параметров могут быть сокращенными и не учитывать регистр.

Примеры

свернуть все

Определите набор координат X и Y и создайте контурные линии и контурные полигоны.

X = -150000:10000:150000;
Y =  0:10000:300000;
[xmesh, ymesh] = meshgrid(X/50000, (Y - 150000)/50000);
Z = 8 + peaks(xmesh, ymesh);
lat0 = dm2degrees([  21 18]);
lon0 = dm2degrees([-157 49]);
h0 = 300;
levels = 0:2:18;

[contourLines, contourPolygons] = geocontourxy(X,Y,Z,lat0,lon0,h0, ...
        'LevelList',levels,'XYRotation',120)
contourLines = 
 8x1 geoshape vector with properties:

 Collection properties:
        Geometry: 'line'
        Metadata: [1x1 struct]
 Vertex properties:
  (8 features concatenated with 7 delimiters)
        Latitude: [1x329 double]
       Longitude: [1x329 double]
          Height: [1x329 double]
 Feature properties:
    ContourLevel: [2 4 6 8 10 12 14 16]

contourPolygons = 
 9x1 geoshape vector with properties:

 Collection properties:
             Geometry: 'polygon'
             Metadata: [1x1 struct]
 Vertex properties:
  (9 features concatenated with 8 delimiters)
             Latitude: [1x651 double]
            Longitude: [1x651 double]
               Height: [1x651 double]
 Feature properties:
    LowerContourLevel: [0 2 4 6 8 10 12 14 16]
    UpperContourLevel: [2 4 6 8 10 12 14 16 18]

Отображение Гавайев на карте, добавление маркера, а затем отображение полигонов, возвращенных geocontourxy на карте.

figure
usamap([18.5 22.5],[-161 -154])
hawaii = shaperead('usastatehi', 'UseGeoCoords', true,...
        'Selector',{@(name) strcmpi(name,'Hawaii'), 'Name'});
geoshow(hawaii)
geoshow(lat0,lon0,'DisplayType','point','Marker','o',...
        'MarkerEdgeColor','k','MarkerFaceColor','k','MarkerSize',10)
 
cmap = parula(1 + length(levels));
for k = 1:length(contourPolygons)
      lat = contourPolygons(k).Latitude;
      lon = contourPolygons(k).Longitude;
      geoshow(lat,lon,'Display','polygon', ...
             'FaceColor',cmap(k,:),'FaceAlpha',0.5,'EdgeColor','none')
end
geoshow(contourLines.Latitude,contourLines.Longitude,'Color','black')

Входные аргументы

свернуть все

X-компонент сетки, который размещает каждый элемент Z в локальной плоскости x-y, заданной как вектор или матрица. geocontourxy предполагает, что единицы измерения являются метрами, если вы не предоставите Spheroid ввод, в этом случае единицы ввода должны соответствоватьLengthUnit имущества Spheroid объект.

Типы данных: single | double

Y-компонент сетки, который размещает каждый элемент Z в локальной плоскости x-y. указан как вектор или матрица. geocontourxy предполагает, что единицы измерения являются метрами, если вы не предоставите Spheroid ввод, в этом случае единицы ввода должны соответствоватьLengthUnit имущества Spheroid объект.

Типы данных: single | double

Данные, которые должны быть профилированы, указаны как массив 2-D.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Геодезическая широта локальной исходной (опорной) точки, заданная как скалярное значение в единицах градусов.

Типы данных: single | double

Геодезическая долгота локальной исходной (опорной) точки, заданная как скалярное значение в единицах градусов.

Типы данных: single | double

Эллипсоидальная высота локальной исходной (опорной) точки, заданная как скалярное значение. geocontourxy предполагает, что единицы измерения являются метрами, если вы не предоставите Spheroid ввода, в этом случае единицы ввода должны соответствовать единице, указанной вLengthUnit имущества Spheroid объект.

Типы данных: single | double

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: [contourLines, contourPolygons] = geocontourxy(X,Y,Z,lat0,lon0,h0,'LevelList',levels,'XYRotation',120)

Уровни горизонталей, заданные как вектор значений Z. По умолчанию geocontourxy функция выбирает уровни, охватывающие диапазон значений.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Угол поворота локальной системы x-y, измеренный против часовой стрелки от системы xEast-yNorth, задается как скалярное значение в единицах градусов.

Типы данных: single | double

Ссылочный сфероид, указанный как referenceEllipsoid, oblateSpheroid, или referenceSphere объект. Используйте конструктор для одного из этих трех классов или wgs84Ellipsoid для построения сфероидного объекта панели инструментов сопоставления. (Нельзя напрямую передать в geocontourxy имя сфероида. Вместо этого передайте это имя referenceEllipsoid или referenceSphere и использовать результирующий объект.) По умолчанию geocontourxy использует WGS84 опорный эллипсоид с единицами измерения.

Выходные аргументы

свернуть все

Горизонтали, возвращенные как линия geoshape с одним элементом на уровень контура. Latitude и Longitude свойства содержат вершины горизонталей в градусах. Значение уровня контура k-го элемента сохраняется в ContourLevel свойство функции contourLines(k). Свойство третьей вершины, Height, содержит эллипсоидальную высоту каждой вершины. В сочетании с Latitude и Longitudeзавершает определение 3-D местоположения линии контура в плоскости, которая содержит локальную начальную точку и параллельна касательной плоскости в исходной широте и долготе.

Контурные полигоны, возвращаемые в виде полигональной геошейпы с одним элементом (полигон контурной заливки) на интервал контуров. Latitude и Longitude свойства содержат вершины многоугольников контурной заливки, заданные в градусах. LowerContourLevel и UpperContourLevel свойства contourPolygons(k) сохранить пределы k-го интервала контура. Как и в случае прямых, свойство третьей вершины, Height, включен.

Представлен в R2016a