updategeostruct

Преобразуйте строку или исправьте структуру отображения к гео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.

Отобразите структуры для строк и закрашенных фигур, и геоструктуры Строки и Полигона имеют следующие общие черты:

  • Поле, которое задает тип геометрии функции:

    • Поле type структура отображения (значение: 'line' или 'patch')

    • Поле Geometry для геоstruct (значение: 'Строка' или 'Polygon')

  • Поле широты:

    • lat для структуры отображения

    • Lat для геоstruct

  • Поле долготы:

    • long для структуры отображения

    • Lon для геоstruct

С точки зрения их различий,

  • Геоstruct имеет поле BoundingBox; нет никакого дубликата структуры отображения для этого

  • Геоstruct обычно имеет одно или несколько полей “атрибута”, значения которых должны быть или скаляром, удваивается или векторы символов, с произвольными именами полей. Присутствие или отсутствие данного поля атрибута — и его значения — зависят от определенного набора данных, который представляет геоstruct.

  • (Строка или закрашенная фигура) структура отображения имеет следующие поля:

    • Поле tag, которое называет отдельную функцию или объект

    • Массив координаты altitude, который расширяет координаты к 3-D

    • Поле otherproperty, в котором графика MATLAB может быть задана явным образом на основе на функцию

Свойства объектов, используемые в отображении, взяты из поля otherproperty структуры. Если поле otherproperty объекта строки или закрашенной фигуры пусто, displaym использует цвета по умолчанию. Закрашенная фигура присвоена индекс в текущую палитру на основе поля tag структуры. Строки присвоены цвета от порядка текущего цвета согласно их тегам.

Более новое представление геоstruct имеет значительные преимущества:

  • Это может представлять намного более широкую область значений атрибутов (структуры отображения по существу могут представлять только имя функции).

  • Представление геоstruct (в сочетании с geoshow и makesymbolspec) разделяет свойства графического дисплея от внутренних свойств самих географических особенностей.

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

Для получения информации о формате структуры отображения смотрите Структуры Отображения Версии 1 на странице с описанием для displaym. Для обсуждения характеристик географических структур данных смотрите Географические Структуры данных в Руководстве пользователя Mapping Toolbox.

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

| | | | |

Представлено до R2006a