# Vector Data

# Vector Data Structures

## GRASS 6 Vector Architecture

The GRASS vector data model includes the description of topology, where besides the coordinates describing the location of the primitives (points, lines, boundaries and centroids), their spatial relations are also stored. In general, topological GIS require a data structure where the common boundary between two adjacent areas is stored as a single line, simplifying the map maintenance.

The following vector objects are defined:

- point
- line: directed sequence of connected vertices with 2 endpoints called nodes

- boundary: the border line to describe an area
- centroid: a point within a closed boundary
- area: the topological composition of centroid and boundary

- face: a 3D area;
- kernel: a 3D centroid in a volume (not yet implemented)
- volume: a 3D corpus, the topological composition of faces and kernel (not yet implemented)

Note: all lines and boundaries can be polylines (with nodes(vertices) in between)

### Data Structure

a vector map(layer?) **<some_vector>** is stored in the directory **$MAPSET/vector/<some_vector>/**.
This directory normally contains the files listed below.

- head: ASCII file with header information; this is the stuff the
**v.info**displays.

- dbln: ASCCI file that link(s) to attribute table(s)

- hist: vector map change history (ASCII).
**v.info -h**can be used to dispay this file.)

- coor: binary file for storing the coordinates

- topo: binary file for topology

- cidx: binary category index

**Note:** The creation of certain files can be disabled. The **-t** flag suported by v.in.ogr and v.in.ascii disables the creation of an attribute table. The **-b** flag supported by r.to.vect and v.in.ascii disables the creation of a topology file. This is needed and useful e.g. for very large datasets (> 3 million points). The user is expected to understand what s/he is doing.

### Specs

- http://mpa.itc.it/markus/grass63progman/Vector_Library.html#background
- R. Blazek, M. Neteler, R. Micarelli: The new GRASS 5.1 vector architecture (Conference-Paper, Sept 2002)

### GRASS

- http://www.intevation.de/rt/webrt?display=History&serial_num=3877
- http://www.gdal.org/ogr/drv_grass.html
- Vector FAQ GRASS6
- http://www.gdf-hannover.de/lit_html/grass60_v1.2_en/node46.html
- J. Čepický, M. Landa: GRASS GIS Digitization Tools (Conference Paper, Feb. 2007) focuses on v.digit, v.edit and QGIS/GRASS

## ESRI Shapefile

A shapefile stores nontopological geometry and attribute information for the spatial features in a data set. The geometry for a feature is stored as a shape comprising a set of vector coordinates.

The following vector objects are defined:

- Point
- MultiPoint: a set of points

- PolyLine: A PolyLine is an ordered set of vertices that consists of one or more parts. A part is a connected sequence of 2 or more points. Parts may or may not be connected to one another. Parts may or may not intersect one another.

- Polygon: A polygon consists of 1 or more rings. A ring is a connected sequence of 4 or more points that form a closed, non-self-intersecting loop.

- PointM: Point plus a Measure
- PolyLineM: Point plus a Measure
- PolygonM: Point plus a Measure
- MultiPointM: MultiPoint plus a Measure

- PointZ: PointM plus a additional z-coordinate (height)
- PolyLineZ: PolyLineM plus z-coordinates (heights)
- PolygonZ: PolygonM plus z-coordinates (heights)
- MultiPointZ: MultiPointM plus additional z-coordinates (heights)
- MultiPatch: A MultiPatch consists of a number of surface patches. Each surface patch describes a

surface.

### Specs

- ESRI: Shapefile Technical Description (Whitepaper, July 1998) mirrored copy
- http://www.gdal.org/ogr/drv_shapefile.html
- http://shapelib.maptools.org/

## OpenGIS Simple Features

is a nontopological standard implemented by e.g. OGR and PostGIS, etc..

- Point
- LineString
- Polygon
- Multipoint
- Multipolygon
- GeomCollection

### Specs

- OpenGIS: Simple Features Specifications For SQL
- http://www.opengeospatial.org/standards
- http://en.wikipedia.org/wiki/Simple_Features

### GRASS

- v.external
- http://grass.itc.it/gdp/html_grass63/v.in.ogr.html
- http://grass.itc.it/gdp/html_grass63/v.out.ogr.html

## SVG

is a nontopological W3C standard. The following vector objects are defined:

- line
- polyline
- rect: defines a rectangle
- circle
- ellipse
- polygon

### Specs

Scalable Vector Graphics (SVG) 1.1 Specification