GRASS logo

Note: This document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade, and read the current manual page.

Note: This addon document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade your GRASS GIS installation, and read the current addon manual page.

NAME

v.build.pg - Builds PostGIS topology for vector map linked via v.external.

KEYWORDS

vector, external, PostGIS, topology

SYNOPSIS

v.build.pg
v.build.pg --help
v.build.pg [-p] map=name [topo_schema=name] topo_column=name [tolerance=float] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

Flags:

-p
Don't execute SQL statements, just print them and exit
--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:

map=name [required]
Name of vector map
topo_schema=name
Name of schema where to build PostGIS topology
Default: topo_<map>
topo_column=name [required]
Name of topology column
Default: topo
tolerance=float
Tolerance to snap input geometry to existing primitives
Default: 1

Table of contents

DESCRIPTION

v.build.pg builds PostGIS topology for feature tables linked via v.external.

NOTES

Note that PostGIS Topology extension is currently under development. v.build.pg requires PostGIS 2.0.0+.

Existing PostGIS topology schema can be overwrite by --overwrite flag.

v.build.pg calls PostGIS functions:

  1. CreateTopology() to create topology schema in the database,
  2. AddTopoGeometryColumn() to add a topogeometry column to an existing feature table, and
  3. toTopoGeom() to create a new topo geometry from the simple feature geometry.

EXAMPLES

Workflow example

Export vector map into PostGIS:
v.out.ogr input=bridges output=PG:dbname=pgis_nc format=PostgreSQL
Create a new vector map as a link to PostGIS table:
v.external input=PG:dbname=pgis_nc layer=bridges
Check metadata:
v.info map=bridges

...
 |----------------------------------------------------------------------------|
 | Map format:      PostGIS (PostgreSQL)                                      |
 | DB table:        public.bridges                                            |
 | DB name:         pgis_nc                                                   |
 | Geometry column: wkb_geometry                                              |
 | Feature type:    point                                                     |
 |----------------------------------------------------------------------------|
...
Build PostGIS topology for the link:
v.build.pg map=bridges

...
Topology topo_bridges (6), SRID 900914, precision 1
10938 nodes, 0 edges, 0 faces, 10938 topogeoms in 1 layers
Layer 1, type Puntal (1), 10938 topogeoms
 Deploy: public.bridges.topo
...

Dry run

For testing issues use -p flag.
v.build.pg map=bridges

Creating new topology schema...

SELECT topology.createtopology('topo_bridges', \
find_srid('public', 'bridges', 'wkb_geometry'), 1)

Adding new topology column...

SELECT topology.AddTopoGeometryColumn('topo_bridges', \
'public', 'bridges', 'topo', 'point')

Building PostGIS topology...

UPDATE bridges SET topo = topology.toTopoGeom(wkb_geometry, \
'topo_bridges', 1, 1)


SELECT topology.TopologySummary('topo_bridges')

SEE ALSO

v.external, v.out.ogr, v.out.postgis, v.build

AUTHOR

Martin Landa, Czech Technical University in Prague, Czech Republic

SOURCE CODE

Available at: v.build.pg source code (history)

Latest change: Monday Jun 28 07:54:09 2021 in commit: 1cfc0af029a35a5d6c7dae5ca7204d0eb85dbc55


Note: This document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade, and read the current manual page.

Note: This addon document is for an older version of GRASS GIS that will be discontinued soon. You should upgrade your GRASS GIS installation, and read the current addon manual page.

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

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