GRASS logo

GRASS ASCII vector format specification

Table of contents

A vector map in GRASS native vector format may contain a mix of primitives including points, lines, boundaries, centroids, areas, faces, and kernels. The GRASS ASCII vector format may contain also a header with various metadata (see example below).

The header is similar as the head file of vector binary format but contains bounding box also. Key words are:

ORGANIZATION
DIGIT DATE
DIGIT NAME
MAP NAME
MAP DATE
MAP SCALE
OTHER INFO
ZONE
WEST EDGE
EAST EDGE
SOUTH EDGE
NORTH EDGE
MAP THRESH

The body begins with the row:

VERTI:
followed by records of primitives:
TYPE NUMBER_OF_COORDINATES [NUMBER_OF_CATEGORIES]
 X Y [Z]
....
 X Y [Z]
[ LAYER CATEGORY]
....
[ LAYER CATEGORY]
Everything above in [ ] is optional.

The primitive codes are as follows:

The coordinates are listed following the initial line containing the primitive code, the total number of coordinates in the series, and (optionally) the number of categories (1 for a single layer, higher for multiple layers). Below that 1 or several lines follow to indicate the layer number and the category number (ID).

The order of coordinates is

X Y [Z]
In pre-GRASS 6 versions of the ASCII format, the order of coordinates was different:
Y X

Latitude/Longitude data may be given in a number of ways. Decimal degrees must be positive or negative instead of using a hemisphere letter. Mixed coordinates must use a hemisphere letter. Whole minutes and seconds must always contain two digits (example: use 167:03:04.567; and not 167:3:4.567).

Acceptable formats:
key: D=Degrees; M=Minutes; S=Seconds; h=Hemisphere (N,S,E,W)

EXAMPLES

ORGANIZATION: GRASS Development Team
DIGIT DATE:   1/9/2005
DIGIT NAME:   -
MAP NAME:     test
MAP DATE:     2005
MAP SCALE:    10000
OTHER INFO:   Test polygons
ZONE:  0
MAP THRESH:   0.500000
VERTI:
B  6
 5958812.48844435 3400828.84221011
 5958957.29887089 3400877.11235229
 5959021.65906046 3400930.7458436
 5959048.47580612 3400973.65263665
 5959069.92920264 3401032.64947709
 5958812.48844435 3400828.84221011
C  1 1
 5958952.42189184 3400918.23126419
 1 20
B  4
 5959010.9323622 3401338.36037757
 5959096.7459483 3401370.54047235
 5959091.38259917 3401450.99070932
 5959010.9323622 3401338.36037757
C  1 1
 5959063.08352122 3401386.98533277
 1 21
In this case the vector map contains 2 boundaries (first boundary with 6 vertices, second with 4 vertices) without category and 2 centroids with category number 20 and 21 (layer 1).

SEE ALSO

v.in.ascii, v.out.ascii, v.edit

SOURCE CODE

Available at: GRASS ASCII vector format specification source code (history)

Latest change: Sunday Feb 12 16:29:15 2023 in commit: e7c42217f4b70ab8253eb1a05c3578731519f319


Main index | Vector index | Topics index | Keywords index | Graphical index | Full index

© 2003-2023 GRASS Development Team, GRASS GIS 8.3.dev Reference Manual