## NAME

v.to.3d - Performs transformation of 2D vector features to 3D.

## KEYWORDS

vector, geometry, 3D

## SYNOPSIS

v.to.3d
v.to.3d --help
v.to.3d [-rt] input=name [layer=string] [type=string[,string,...]] output=name [column=name] [height=float] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

### Flags:

-r
  Reverse transformation; 3D vector features to 2D
-t
  Do not copy attribute table
--overwrite
  Allow output files to overwrite existing files
--help
  Print usage summary
--verbose
  Verbose module output
--quiet
  Quiet module output
--ui
  Force launching GUI dialog

### Parameters:

input=name [required]
  Name of input vector map
  Or data source for direct OGR access
layer=string
  Layer number or name ('-1' for all layers)
  A single vector map can be connected to multiple database tables. This number determines which table to use. When used with direct OGR access this is the layer name.
  Default: 1
type=string[,string,...]
  Input feature type
  Options: point, line, boundary, centroid
  Default: point,line,boundary,centroid
output=name [required]
  Name for output vector map
column=name
  Name of attribute column used for height
  Can be used for reverse transformation, to store height of points
height=float
  Fixed height for 3D vector features

## DESCRIPTION

The v.to.3d module is used to transform 2D vector features to 3D. Height (z-coordinate) of 3D vector features can be specified by height parameter as fixed value or by column parameter.

Flag -r enables to perform reverse transformation, i.e., transform 3D vector to 2D by omitting z-coordinate. Height of input 3D features can be optionally stored in column.

## NOTES

When transforming 2D vector features to 3D based on attribute, all NULL values are silently converted to height 0.0.

Reverse transformation is possible for points and lines. In case of lines, the reverse transformation should be used only when all vertices of a line have the same z-coordinate (for example contours).

## EXAMPLES

### Transform 2D vector features to 3D

    # convert z-values from string to double
    v.db.addcolumn map=geodetic_pts columns="Z_VALUE_D double precision"
    v.db.update map=geodetic_pts column=Z_VALUE_D qcolumn=Z_VALUE
    v.db.select map=geodetic_pts columns=cat,Z_VALUE,Z_VALUE_D

    # convert 2D vector point map to 3D based on attribute
    v.to.3d input=geodetic_pts out=geodetic_pts_3d column=Z_VALUE_D

### Transform 3D vector features to 2D

    v.to.3d -rt input=elev_lid792_bepts output=elev_lid_2d

## SEE ALSO

v.transform, v.extrude, v.drape

## AUTHOR

Martin Landa, Czech Technical University in Prague, Czech Republic

## SOURCE CODE

Available at: v.to.3d source code (history)

Accessed: Sunday Feb 08 02:38:12 2026

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

© 2003-2025 GRASS Development Team, GRASS GIS 8.4.2 Reference Manual