ST_MaximumInscribedCircle — Calcule le plus grand cercle contenu dans une géométrie.
(geometry, geometry, double precision) ST_MaximumInscribedCircle(
geometry geom)
;
Trouve le plus grand cercle contenu dans un (multi)polygone, ou qui ne chevauche aucune ligne ni aucun point. Renvoie un enregistrement avec des champs :
center
- point central du cercle
nearest
- un point de la géométrie le plus proche du centre
radius
- rayon du cercle
Pour les entrées polygonales, le cercle est inscrit dans les anneaux de délimitation, en utilisant les anneaux internes comme limites. Pour les entrées linéaires et ponctuelles, le cercle est inscrit dans l'enveloppe convexe de l'entrée, en utilisant les lignes et les points de l'entrée comme autres limites.
Disponibilité : 3.1.0.
Nécessite GEOS >= 3.9.0.
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)