Processing functions

Med processing functions kan man manipulere geometrierne på forskellig vis.

Eksempler

Lav en 100 meter buffer om skoler
SELECT ogc_fid, ST_Buffer(wkb_geometry, 100) FROM kursus.adgangsadresser;
Læg alle geometrier sammen med samme vejkode
SELECT row_number() over () as id, ST_Union(geometri), vejkode FROM kursus.adresser GROUP BY vejkode
--row_number() over () giver os en ID som vi kan bruge i QGIS
--Farvelæg i QGIS på vejkode
Lav en polygon, der omslutter adresser med samme sognekode (convex hull)
SELECT row_number() over() as id, ST_ConvexHull(ST_Union(geometri))::geometry(Polygon,25832) as geom, sognekode FROM kursus.adgangsadresser GROUP BY sognekode

--Eller som concave hull

SELECT row_number() over() as id, ST_ConcaveHull(ST_Union(geometri),0.99)::geometry(Polygon,25832) as geom, sognekode FROM kursus.adgangsadresser GROUP BY sognekode
Klip et skørt hul i postnumre-polygonerne


-- tilpas srid og geometritype

ALTER TABLE kursus.postnummer 
  ALTER COLUMN geom TYPE geometry(MultiPolygon, 25832) 
     USING ST_force2d(ST_SetSRID(geom,25832)); 


WITH kligeom AS (
SELECT
 ST_Force2d(ST_ConcaveHull(ST_Union(geometri),0.99))::geometry(Polygon,25832) as geom,
 sognekode
  FROM kursus.adgangsadresser
   WHERE sognekode = '7823'
    GROUP BY sognekode)
SELECT 
  row_number() over() as id,
  ST_Multi(ST_Difference(p.geom,k.geom))::geometry(MultiPolygon,25832) as geom
   FROM kligeom k, kursus.postnummer p;

--

[HANDS-ON]: Prøv selv at manipulere geometrier i dit datasæt

Se alle alle geometry processors her: http://postgis.net/docs/manual-2.1/reference.html#Geometry_Processing

results matching ""

    No results matching ""