By digoal
PostGIS integrates SFCGAL to process 3D spatial data gracefully.
SFCGAL, a C++ wrapper library around CGAL that supports ISO 19107:2013 and OGC Simple Features Access 1.2 for 3D operations, is now an optional included in PostGIS.
This was a quiet outcome of the Boston Code Sprint after Paul Ramsey declared exact rational number representation would not make its way into PostGIS.
What does this mean for a typical PostGIS user? It adds an excellent suite of new 2D and 3D functions: http://postgis.net/docs/manual-2.4/reference.html
postgis_sfcgal_version — Returns the version of SFCGAL in use
ST_Extrude — Extrude a surface to a related volume
ST_StraightSkeleton — Compute a straight skeleton from a geometry
ST_ApproximateMedialAxis — Compute the approximate medial axis of an areal geometry.
ST_IsPlanar — Check if a surface is or not planar
ST_Orientation — Determine surface orientation
ST_ForceLHR — Force LHR orientation
ST_MinkowskiSum — Performs Minkowski sum
ST_3DIntersection — Perform 3D intersection
ST_3DDifference — Perform 3D difference
ST_3DUnion — Perform 3D union
ST_3DArea — Computes area of 3D surface geometries. Will return 0 for solids.
ST_Tesselate — Perform surface Tesselation of a polygon or polyhedralsurface and returns as a TIN or collection of TINS
ST_Volume — Computes the volume of a 3D solid. If applied to surface (even closed) geometries will return 0.
ST_MakeSolid — Cast the geometry into a solid. No check is performed. To obtain a valid solid, the input geometry must be a closed Polyhedral Surface or a closed TIN.
ST_IsSolid — Test if the geometry is a solid. No validity check is performed.
ST_Extrude is a handy function for doing things like this:
Fig: Simulated extruded building footprints from City Engine
ST_StraightSkeleton does in one step the first phase of what has been going on about for a couple of years — Voronoi diagrams (and bypasses Voronoi altogether):
Fig: Approximation of straight skeleton/skeletonization of stream polygon
In advance of an SFCGAL install guide for PostGIS, a good source for info on install can be gleaned from the PostGIS Developers listserve.
PostgreSQL: How to Determine the Positions of Overlapping Points and Planes in PostGIS
PostgreSQL: How to Optimize Spatial Index-based Query Performance for Multipolygon Data
digoal - January 25, 2021
digoal - December 18, 2020
digoal - December 18, 2020
digoal - May 25, 2021
digoal - February 14, 2021
digoal - January 25, 2021
Alibaba Cloud PolarDB for PostgreSQL is an in-house relational database service 100% compatible with PostgreSQL and highly compatible with the Oracle syntax.
Learn MoreAn online MPP warehousing service based on the Greenplum Database open source program
Learn MoreAn on-demand database hosting service for PostgreSQL with automated monitoring, backup and disaster recovery capabilities
Learn MoreLeverage cloud-native database solutions dedicated for FinTech.
Learn MoreMore Posts by digoal