Database Reference
In-Depth Information
Clipping geometries to deploy data
AcommonGISusecaseisclippingabigdatasetintosmallportions(subsets),with
maybe each representing an area of interest. In this recipe, you will export from a
PostGISlayerrepresentingtheriversintheworldonedistinctshapefilecomposedof
riversforeachworld'scountry.Forthispurpose,youwillusethe ST_Intersection
function.
Getting ready
BesurethatyouhaveimportedinPostGISthesameriverdataset(ashapefile)that
was used in the previous recipe.
How to do it...
The steps you need to perform to complete this recipe are as follows:
1. First, you will create a view to clip the river geometries for each country
using the ST_Intersection and ST_Intersects functions. Name the
view rivers_clipped_by_country :
postgis_cookbook=> CREATE VIEW
chp03.rivers_clipped_by_country AS
SELECT r.name, c.iso2,
ST_Intersection(r.the_geom,c.the_geom)::geometry(Geometry,4326)
AS the_geomFROM chp03.countries AS c
JOIN chp03.rivers AS r
ON ST_Intersects(r.the_geom,
c.the_geom);
2. Create a directory named rivers , as follows:
mkdir working/chp03/rivers
3. Create the following scripts to export a rivers shapefile for each country.
The following is the Linux version (name it export_rivers.sh) :
Search WWH ::




Custom Search