v.proj(1)
π v.proj β the re-projection glow-up π
okay bestie, welcome to v.proj(1), straight out of the GRASS GIS User's Manual β¨ this is the one that takes a vector map from one project and drops it, all shiny and re-projected, into the project you're chilling in right now π¦
πΈ NAME πΈ
v.proj β re-projects a vector map from one project to the current project.
π·οΈ KEYWORDS π·οΈ
vector, projection, transformation, import
β¨ SYNOPSIS β¨
v.proj
v.proj --help
v.proj [-lzwb] project=name [mapset=name] [input=name] [dbase=path]
[smax=float] [output=name] [pipeline=string] [--overwrite]
[--help] [--verbose] [--quiet] [--ui]
π Flags π
-lβ lists the vector maps in the input mapset and then bounces. no reprojection, just vibes and a list π-zβ assumes the z coordinate is ellipsoidal height and transforms it if it can. 3D vector maps only btw, so don't come for it with 2D data π-wβ turns OFF the wrapping to-180,180for latlon output. Latlon output only, and the default is-180,180, so this flag is the "actually no thanks" button.-bβ do NOT build vector topology. Recommended for massive point projection β it's the glow-up for giant point clouds π«Ά--overwriteβ lets output files overwrite files that already exist (yes bestie, permission granted π)--helpβ prints the usage summary--verboseβ verbose module output--quietβ quiet module output--uiβ forces the GUI dialog to launch
π Parameters π
project=name[required] β the Project (location) containing the input vector map. It wants the project name, not a path to the project. no paths, bestie, just the name βmapset=nameβ the mapset containing the input vector map. Default: the name of the current mapset.input=nameβ name of the input vector map you wanna re-project.dbase=pathβ path to the GRASS database of the input project. Default: the path to the current GRASS GIS database.smax=floatβ maximum segment length in meters in the output vector map. It increases accuracy of reprojected shapes, and you disable it withsmax=0. Default:10000.output=nameβ name for the output vector map (default:input).pipeline=stringβ PROJ pipeline for coordinate transformation π
π¦ DESCRIPTION π¦
so v.proj lets you take a vector map that lives in a specified mapset of a specified project β one that's different from the current one β and convert it from the coordinate reference system (CRS) of that source project into a vector map in your current mapset of your current project, using the CRS of the current project. both of those CRSs are defined in their own corresponding projects, no cap π
you can peek at and manage that CRS info with g.proj.
and if you want the full intro to map CRSs (plus the whole PROJ library situation), go read the manual page of r.proj β it's giving required reading, fr fr π
π NOTES π
- if
outputisn't specified, it just gets set to the same name as the input map. easy. - if
mapsetisn't specified, its name is assumed to be the same as the current mapset's name. - if
dbaseisn't specified, it's assumed to be the current database. you only have to specifydbasewhen the source project is stored in another, separate GRASS database. so like, only then, bestie π«Ά - if
smaxis set to0, the automated vertex densification is disabled β and that is not recommended π
v.proj supports general datum transformations, and it does that by making use of the PROJ co-ordinate system translation library. iconic behaviour honestly.
when you're projecting into a latlon project, the east coordinates get wrapped by the proj4 library so they fit into the range -180,180. in most cases that's exactly what you want β but it can cause errors when the input vector crosses the datum line at 180E/W π in that case you need to disable the wrapping of east coordinates to -180,180 with the -w flag. crisis averted.
when you're reprojecting massive point clouds where topology isn't necessary, you can set the -b flag to suppress the building of topology of the output map. less work, same slay π
and okay, in order to preserve spatial detail, v.proj performs automated vertex densification. (as an alternative, v.split could be used before reprojecting π) here's the tea: without vertex densification, depending on the source and target CRS (Coordinate Reference System), geometries can be substantially deformed β straight lines become curves, squares become trapezoids, etc. so the densification of linear features can help you avoid topological errors. it's giving damage control, and we love it for that π
π EXAMPLE π
reprojecting a vector map from another project (and mapset) into the current mapset:
v.proj in=mymap project=latlong mapset=user1
π REFERENCES π
- Evenden, G.I. (1990) Cartographic projection procedures for the UNIX environment - a user's manual. USGS Open-File Report 90-284 (OF90-284.pdf) See also there: Interim Report and 2nd Interim Report on Release 4, Evenden 1994).
- Richards, John A. (1993), Remote Sensing Digital Image Analysis, Springer-Verlag, Berlin, 2nd edition.
PROJ: Projection/datum support library.
further reading π§
- ASPRS Grids and Datum
- Projections Transform List (PROJ)
- Coordinate operations by PROJ (projections, conversions, transformations, pipeline operator)
- MapRef - The Collection of Map Projections and Reference Systems for Europe
- Information and Service System for European Coordinate Reference Systems - CRS
π SEE ALSO π
g.proj, m.proj, r.proj, i.rectify, r.stats, v.sample, v.split, v.surf.idw, v.surf.rst
π AUTHORS π
- Irina Kosinovsky, US ARMY CERL
- M.L. Holko, USDA, SCS, NHQ-CGIS
- R.L. Glenn, USDA, SCS, NHQ-CGIS
β SOURCE CODE β
Available at: v.proj source code (history)
Accessed: Saturday Jan 17 05:41:24 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
and that's the whole page, bestie π«Ά this was GRASS 8.4.2, v.proj(1), and yes you absolutely ate that. go reproject something iconic πβ¨π
π¦ where this page comes from
- fedora 44: grass 8.4.2-4.fc44 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms