mapshape
Planar shape vector
Description
A mapshape vector is an object that represents planar vector features with either point, line, or polygon topology. The features consist of x- and y-coordinates and associated attributes.
Attributes that vary spatially are termed Vertex properties. These elements of the mapshape vector are coupled such that the length of the x- and y-coordinate property values are always equal in length to any additional dynamic Vertex properties.
Attributes that only pertain to the overall feature (point, line, polygon) are termed
Feature properties. Feature properties are not linked to the autosizing mechanism of the
Vertex properties. Both property types can be added to a mapshape vector after
construction using standard dot (.
) notation.
To create a planar point, line, or polygon shape for use with a geospatial table,
create a mappointshape
,
maplineshape
,
or mappolyshape
object instead.
Creation
Syntax
Description
s = mapshape()
constructs an empty mapshape vector,
s
, with these default property
settings.
s = 0x1 mapshape vector with properties: Collection properties: Geometry: 'line' Metadata: [1x1 struct] Vertex properties: X: [] Y: []
s
is always a column vector.
s = mapshape(
constructs a mapshape vector and sets the x
,y
)X
and
Y
property values equal to vectors x
and y
.
s = mapshape(
constructs a mapshape vector, then adds dynamic properties to the mapshape
vector using x
,y
,Name,Value
)Name
, Value
argument
pairs. You can specify several name-value pair arguments in any order as
Name1,Value1,...,NameN,ValueN
.
s = mapshape(
constructs
a structArray
)mapshape
vector, assigning the fields of the structure
array, structArray
, as dynamic properties. Field values in
structArray
that are not numeric, logical, string
scalars, string arrays, character vectors, cell arrays of character vectors, or
cell arrays of numeric, logical, or cell array of character vectors values are
ignored. You can specify vectors within cell arrays as either row or column
vectors.
s = mapshape(
constructs a new x
,y
,structArray
)mapshape
vector, sets the
X
and Y
properties equal to vectors
x
and y
, and sets dynamic
properties from the field values of structArray
.
Properties
Object Functions
append | Append features to geographic or planar vector |
cat | Concatenate geographic or planar vector |
disp | Display geographic or planar vector |
fieldnames | Return dynamic property names of geographic or planar vector |
isempty | Determine if geographic or planar vector is empty |
isfield | Determine if dynamic property exists in geographic or planar vector |
isprop | Determine if property exists in geographic or planar vector |
length | Return number of elements in geographic or planar vector |
properties | Return property names of geographic or planar vector |
rmfield | Remove dynamic property from geographic or planar vector |
rmprop | Remove property from geographic or planar vector |
size | Return size of geographic or planar vector |
struct | Convert geographic or planar vector to scalar structure |
vertcat | Vertically concatenate geographic or planar vectors |
Examples
More About
Tips
The
mapshape
function separates features usingNaN
values. If you display a feature by using a scalar to index into the mapshape vector, such ass(1)
, thenNaN
values that separate the features do not display.If
X
,Y
, or a dynamic property is set with more values than features in the mapshape vector, then all other properties expand in size using 0 for numeric values and an empty character vector (''
) for cell values.If a dynamic property is set with fewer values than the number of features, then this dynamic property expands to match the size of the other properties.
If the
X
orY
property of the mapshape vector is set with fewer values than contained in the object, then all other properties shrink in size.If either
X
orY
is set to [ ], then both coordinate properties are set to [ ] and all dynamic properties are removed.If a dynamic property is set to [ ], then it is removed from the object.
The mapshape vector can be indexed like any MATLAB® vector. You can access any element of the vector to obtain a specific feature. The following example demonstrates this behavior:
Construct a Mapshape Vector Containing Multiple Features and Indexing Behaviors
This example builds a mapshape vector from a structure array; adds a Metadata property and demonstrates selective indexing behavior. Construct a Mapshape Vector and Add Metadata and Indexing
Version History
Introduced in R2012a