ST_MaximumInscribedCircle — Beräknar den största cirkeln inom en geometri.
(geometry, geometry, double precision) ST_MaximumInscribedCircle(
geometry geom)
;
Hittar den största cirkeln som ingår i en (multi)polygon, eller som inte överlappar några linjer och punkter. Returnerar en post med fält:
center
- cirkelns mittpunkt
nearest
- en punkt på geometrin som ligger närmast centrum
radie
- cirkelns radie
För polygonala indata skrivs cirkeln in i begränsningsringarna, med de inre ringarna som gränser. För linjära och punktformade indata skrivs cirkeln in i indatats konvexa skrov, med indatans linjer och punkter som ytterligare gränser.
Tillgänglighet: 3.1.0.
Kräver GEOS >= 3.9.0.
Maximal inskriven cirkel i en polygon. Centrum, närmaste punkt och radie returneras.
SELECT radius, ST_AsText(center) AS center, ST_AsText(nearest) AS nearest FROM ST_MaximumInscribedCircle( 'POLYGON ((40 180, 110 160, 180 180, 180 120, 140 90, 160 40, 80 10, 70 40, 20 50, 40 180), (60 140, 50 90, 90 140, 60 140))'); radius | center | nearest -----------------+----------------------------+--------------- 45.165845650018 | POINT(96.953125 76.328125) | POINT(140 90)
Maximal inskriven cirkel för en multi-linestrings. Centrum, närmaste punkt och radie returneras.