Name

ST_MinimumBoundingCircle — Retourne le plus petit cercle polygonal qui contient une géométrie.

Synopsis

geometry ST_MinimumBoundingCircle(geometry geomA, integer num_segs_per_qt_circ=48);

Description

Retourne le plus petit cercle polygonal qui contient une géométrie.

[Note]

Le cercle de délimitation est approximé par un polygone avec une valeur par défaut de 48 segments par quart de cercle. Le polygone étant une approximation du cercle de délimitation minimal, certains points de la géométrie d'entrée peuvent ne pas être contenus dans le polygone. L'approximation peut être améliorée en augmentant le nombre de segments. Pour les applications où une approximation ne convient pas, on peut utiliser ST_MinimumBoundingRadius.

A utiliser avec ST_Collect pour obtenir le cercle minimal de délimitation d'un ensemble de géométries.

Pour calculer deux points situés sur le cercle minimum (le "diamètre maximum"), utilisez ST_LongestLine.

Le rapport de la surface d'un polygone divisée par la surface de son cercle circonscrit minimal est appelé Score de compacité de Reock.

Effectué par le module GEOS.

Disponibilité : 1.4.0

Exemples

SELECT d.disease_type,
    ST_MinimumBoundingCircle(ST_Collect(d.geom)) As geom
    FROM disease_obs As d
    GROUP BY d.disease_type;

Cercle minimal de délimitation d'un point et d'une ligne de démarcation. Utilisation de 8 segments pour approximer un quart de cercle

SELECT ST_AsText(ST_MinimumBoundingCircle(ST_Collect(ST_GeomFromText('LINESTRING(55 75,125 150)'),
                ST_Point(20, 80)), 8
                )) As wktmbc;
POLYGON((72.5 178.4024474346694,84.86920388664029 177.18418718546332,96.76306620464646 173.57622349601382,107.72451249529237 167.71720838753708,117.33230052487836 159.83230052487838,125.21720838753708 150.22451249529237,131.07622349601382 139.26306620464646,134.68418718546332 127.3692038866403,135.9024474346694 115,134.68418718546332 102.63079611335971,131.07622349601382 90.73693379535354,125.21720838753708 79.77548750470766,117.33230052487838 70.16769947512164,107.72451249529237 62.282791612462916,96.76306620464648 56.42377650398619,84.86920388664032 52.815812814536685,72.50000000000001 51.59755256533059,60.13079611335969 52.815812814536685,48.236933795353536 56.42377650398618,37.27548750470765 62.28279161246291,27.667699475121637 70.16769947512162,19.782791612462923 79.77548750470763,13.923776503986204 90.7369337953535,10.315812814536692 102.63079611335968,9.097552565330588 114.99999999999999,10.315812814536685 127.3692038866403,13.923776503986197 139.2630662046465,19.78279161246291 150.22451249529234,27.667699475121623 159.83230052487835,37.275487504707634 167.71720838753708,48.236933795353494 173.5762234960138,60.13079611335967 177.18418718546332,72.49999999999999 178.4024474346694))