Преобразуйте структуру отображения линий или закрашенных фигур в геоstruct
geostruct = updategeostruct(displaystruct)
geostruct = updategeostruct(displaystruct,
str)
[geostruct,symbolspec] = updategeostruct(displaystruct,
...)
[geostruct,symbolspec] = updategeostruct(displaystruct,
..., cmap)
geostruct = updategeostruct(displaystruct)
принимает структуру отображения Mapping Toolbox™ displaystruct
. Если displaystruct
- векторная структура отображения, для которой 'type'
поле имеет значение 'line'
или 'patch'
, updategeostruct
перестраивает свои элементы, чтобы создать геоstruct, geostruct
. Если displaystruct
является уже географической структурой данных, она копируется без изменений в geostruct
. updategeostruct
не обновляет массивы отображаемых структур типа 'text'
, 'light'
, 'regular'
, или 'surface'
.
geostruct = updategeostruct(displaystruct,
str)
выбирает только элементы, чьи tag
поле начинается со строкового скаляра или вектора символов str
(и чьи type
поле либо 'line'
или 'patch'
). Выбор нечувствителен к регистру.
[geostruct,symbolspec] = updategeostruct(displaystruct,
...)
изменяет структуру отображения и определяет symbolspec на основе графических свойств, заданных в otherproperty
поле для каждого элемента displaystruct
и, при необходимости, jet
палитра.
[geostruct,symbolspec] = updategeostruct(displaystruct,
..., cmap)
задает палитру, cmap
, для определения цветов, используемых в symbolspec.
Обновление и отображение структуры отображения Великих озер на геоstruct:
load greatlakes cmap = cool(3*numel(greatlakes)); [gtlakes, spec] = updategeostruct(greatlakes, cmap); lat = extractfield(gtlakes,'Lat'); lon = extractfield(gtlakes,'Lon'); lonlim = [min(lon) max(lon)]; latlim = [min(lat) max(lat)]; figure usamap(latlim, lonlim); geoshow(gtlakes, 'SymbolSpec', spec)
Существует две кодировки Mapping Toolbox для векторных функций, которые используют MATLAB® массивы структур. В обоих случаях существует одна функция на каждый элемент массива, и в обоих случаях все элементы данного массива имели одинаковый тип функции. Версия 1.3.1 и более ранние версии программного обеспечения Mapping Toolbox поддерживают только структуры отображения Mapping Toolbox. В версии 2.0 введена структура данных для векторных геоданных, которая была менее жестко определена и более разомкнута. Новые структуры называются geostructs (если они содержат географические данные координат) и mapstructs (если они содержат проективные данные координат). Со временем структуры отображения выводятся из тулбокса; updategeostruct
Функция предназначена для помощи пользователям в миграции из старого формата структуры отображения в текущий формат geostruct/mapstruct.
Структура отображения Mapping Toolbox версии 1 является структурой MATLAB, которая может содержать линию, закрашенную фигуру, текст, регулярную сетку данных, геолокированную сетку данных и световые объекты. displaym
функция не принимает геострукты, произведенные версией 2 программного обеспечения Mapping Toolbox.
Структуры отображения для линий и закрашенных фигур и геострунтов линий и многоугольников имеют следующие общие черты:
Поле, задающее тип геометрии функции:
A type
отобразить структуру отображения (значение: 'line'
или 'patch'
)
A Geometry
поле для геоstruct (значение: 'Line' или 'Polygon'
)
Поле широты:
lat
для структуры отображения
Lat
для геоstruct
Поле долготы:
long
для структуры отображения
Lon
для геоstruct
С точки зрения их различий,
У геоstruct есть BoundingBox
поле; нет аналога структуры отображения для этого
Геоstruct обычно имеет одно или несколько «атрибутных» полей, значения которых должны быть либо скалярными двойными, либо векторами символов с произвольными именами полей. Наличие или отсутствие заданного поля атрибута - и его значение - зависит от конкретного набора данных, который представляет геоstruct.
Структура отображения (линия или закрашенная фигура) имеет следующие поля:
A tag
поле с именами отдельных функций или объектов
Система координат altitude
массив координат, который расширяет координаты до 3-D
Система координат otherproperty
поле, в котором графика MATLAB может быть задана явным образом, на основе отдельных признаков
Свойства объекта, используемые в отображении, берутся из otherproperty
поле структуры. Если линия или закрашенная фигура объекта otherproperty
поле пустое, displaym
использует цвета по умолчанию. Закрашенной фигуре присваивается индекс в текущую палитру на основе tag
структуры поле. Линиям присваиваются цвета из текущего порядка цвета в соответствии с их тегами.
Более новое представление геоstruct имеет значительные преимущества:
Он может представлять намного более широкую область значений атрибутов (отображения структуры по существу могут представлять только функция имя).
Представление геоstruct (в сочетании с geoshow
и makesymbolspec
) сохраняет графику отображения свойства отдельно от собственных свойств самих географических функций.
Для примера атрибут класса дороги может использоваться для отображения основных магистралей с отличительным цветом и большей шириной линии, чем второстепенные дороги. Та же географическая структура данных может отображаться многими различными способами, не изменяя никакого ее содержимого, и данные файла shapefile, импортированные из внешних источников, не должны изменяться, чтобы управлять его графическим отображением.
Для получения информации о формате структуры отображения смотрите Версию 1 Отображать структуры на странице с описанием для displaym
. Для обсуждения характеристик географических структур данных смотрите Географические структуры данных.