Namn

CG_GenerateFlatRoof — Generera ett platt tak (lådtak) från en fotavtryckspolygon.

Synopsis

geometry CG_GenerateFlatRoof(geometry geom, float8 height);

Beskrivning

Generera ett platt (lådformat) tak som en 3D-PolyhedralSurface Z från en 2D-fotavtryckspolygon. Takhöjden över markplanet anges med height (standard 3.0).

Tillgänglighet: 3.7.0 – kräver SFCGAL >= 2.3.0.

Denna metod behöver SFCGAL-backend.

Denna funktion stöder polyedriska ytor.

Exempel

Generera ett platt tak två enheter ovanför ett rektangulärt fotavtryck.

Kod
WITH data AS (
  SELECT 'POLYGON((0 0,5 0,5 4,0 4,0 0))'::geometry AS footprint
)
SELECT CG_GenerateFlatRoof(footprint, 2.0) AS roof
FROM data;
Utdata
POLYHEDRALSURFACE Z (((0 0 0,0 4 0,5 4 0,5 0 0,0 0 0)),((0 0 2,5 0 2,5 4 2,0 4 2,0 0 2)),((0 0 0,0 0 2,0 4 2,0 4 0,0 0 0)),((0 4 0,0 4 2,5 4 2,5 4 0,0 4 0)),((5 4 0,5 4 2,5 0 2,5 0 0,5 4 0)),((5 0 0,5 0 2,0 0 2,0 0 0,5 0 0)))
Figur
Geometry figure for visual-cg-generateflatroof-01