pgr_alphaShape

pgr_alphaShape — Polygon part of an alpha shape.

Availability

  • Version 3.0.0

    • Breaking change on signature

    • Old signature no longer supported

    • Boost 1.54 & Boost 1.55 are supported

    • Boost 1.56+ is preferable

      • Boost Geometry is stable on Boost 1.56

  • Version 2.1.0

    • Added alpha argument with default 0 (use optimal value)

    • Support to return multiple outer/inner ring

  • Version 2.0.0

    • Official function

    • Renamed from version 1.x

Support

Description

Returns the polygon part of an alpha shape.

Characteristics

  • Input is a geometry and returns a geometry

  • Uses PostGis ST_DelaunyTriangles

  • Instead of using CGAL’s definition of alpha it use the spoon_radius

    • \(spoon\_radius = \sqrt alpha\)

  • A Triangle area is considered part of the alpha shape when \(circumcenter\ radius < spoon\_radius\)

  • When the total number of points is less than 3, returns an EMPTY geometry

Signatures

Summary

pgr_alphaShape(geometry,   [spoon_radius])
RETURNS geometry

Example: passing a geometry collection with spoon radius \(1.5\) using the return variable geom

SELECT ST_Area(pgr_alphaShape((SELECT ST_Collect(the_geom) FROM edge_table_vertices_pgr), 1.5));
 st_area
---------
    9.75
(1 row)

Parameters

Parameter

Type

Default

Description

geometry

geometry

Geometry with at least \(3\) points

spoon_radius

FLOAT

The radius of the spoon

Return Value

Kind of geometry

Description

GEOMETRY COLLECTION

A Geometry collection of Polygons

See Also

Indices and tables