maplineshape

Форма линии в плоских координатах

Описание

maplineshape объект представляет линию или мультилинию в плоских координатах. multiline является отдельной формой линии, которая содержит набор отдельных линий.

Чтобы представлять линию или мультилинию в географических координатах, используйте geolineshape объект вместо этого.

Создание

Создать maplineshape объекты, также:

  • Импортируйте данные о линии в плоских координатах как геопространственная таблица с помощью readgeotable функция, и затем запрашивает Shape переменная таблицы.

  • Используйте maplineshape функция (описанный здесь).

Синтаксис

Описание

пример

shape = maplineshape(x,y) создает maplineshape объект или массив maplineshape объекты с вершинами в заданном x - и y - координаты. Размеры xY, и maplineshape объектный массив shape соответствие.

Входные параметры

развернуть все

x- в виде числового вектора или массива ячеек числовых векторов.

  • Создайте линию путем определения вектора, такого как [65 62 53 66].

  • Создайте мультилинию путем определения вектора и включая разрывы строки как NaN значения, такие как [55 34 18 NaN 14 19 42 26].

  • Создайте массив линий и мультилиний путем определения массива ячеек векторов, таких как {[55 34 18],[14 19 NaN 42 26 31]}.

NaN значения в x должен соответствовать NaN значения в y.

Размер x должен совпадать с размером y. Для массивов ячеек, размера вектора в каждой ячейке x должен совпадать с размером вектора в соответствующей ячейке y.

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

y- в виде числового вектора или массива ячеек числовых векторов.

  • Создайте линию путем определения вектора, такого как [4 59 121 98].

  • Создайте мультилинию путем определения вектора и включая разрывы строки как NaN значения, такие как [78 56 63 NaN 83 106 104 126].

  • Создайте массив линий и мультилиний путем определения массива ячеек векторов, таких как {[78 56 63],[83 106 NaN 104 126 131]}.

NaN значения в x должен соответствовать NaN значения в y.

Размер x должен совпадать с размером y. Для массивов ячеек, размера вектора в каждой ячейке x должен совпадать с размером вектора в соответствующей ячейке y.

Свойства

развернуть все

Это свойство доступно только для чтения.

Количество частей линии, возвращенных как массив неотрицательных целых чисел.

Для maplineshape скаляр, значение NumParts 1 когда maplineshape объект представляет одну строку и больше, чем 1 когда объект представляет мультилинию.

Для maplineshape массив, размер NumParts совпадает с размером массива.

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

Это свойство доступно только для чтения.

Геометрический тип, возвращенный как "line".

Типы данных: string

Это свойство доступно только для чтения.

Тип системы координат, возвращенный как "planar".

Типы данных: string

Спроектированная система координат (CRS) в виде projcrs объект. Спроектированный CRS состоит из географического CRS и нескольких параметров, которые используются, чтобы преобразовать координаты к и от географического CRS.

Примеры

свернуть все

Импортируйте файл форм, содержащий сеть дорожных сегментов в Согласии, MA как геопространственная таблица. Файл форм представляет дорожные линии использования сегментов. Получите информацию о четвертой линии путем запроса Shape переменная таблицы.

GT = readgeotable("concord_roads.shp");
GT.Shape(4)
ans = 
  maplineshape with properties:

                NumParts: 1
                Geometry: "line"
    CoordinateSystemType: "planar"
            ProjectedCRS: [1x1 projcrs]

Отобразите дорожные сегменты.

mapshow(GT)

Figure contains an axes object. The axes object contains 609 objects of type line.

Создайте отдельную линию как maplineshape скаляр. Задайте спроектированный CRS как Мир, Равноотстоящий Цилиндрический, который имеет код полномочий EPSG 4087.

x = [4 59 121 98];
y = [65 62 53 66];
lineshp = maplineshape(x,y);

p = projcrs(4087);
lineshp.ProjectedCRS = p
lineshp = 
  maplineshape with properties:

                NumParts: 1
                Geometry: "line"
    CoordinateSystemType: "planar"
            ProjectedCRS: [1x1 projcrs]

Создайте мультилинию как maplineshape скаляр.

x = [78 56 63 NaN 83 106 104 126];
y = [55 34 18 NaN 14 19 42 26];
multiline = maplineshape(x,y);
multiline.ProjectedCRS = p
multiline = 
  maplineshape with properties:

                NumParts: 2
                Geometry: "line"
    CoordinateSystemType: "planar"
            ProjectedCRS: [1x1 projcrs]

Создайте одну отдельную линию и одну мультилинию как 1 2 maplineshape массив.

x = {[78 56 63],[83 106 NaN 104 126 113]};
y = {[55 34 18],[14 19 NaN 42 26 37]};
lineMultiline = maplineshape(x,y);
lineMultiline.ProjectedCRS = p
lineMultiline=1×2 object
  1x2 maplineshape array with properties:

                NumParts: [1 2]
                Geometry: "line"
    CoordinateSystemType: "planar"
            ProjectedCRS: [1x1 projcrs]

Введенный в R2021b