Amazon Redshift ne prendra plus en charge la création de nouvelles fonctions Python définies par l’utilisateur à compter du 1er novembre 2025. Si vous souhaitez utiliser des fonctions Python définies par l’utilisateur, créez-les avant cette date. Les fonctions Python définies par l’utilisateur existantes continueront de fonctionner normalement. Pour plus d’informations, consultez le billet de blog
ST_Simplify
ST_Simplify renvoie une copie simplifiée de la géométrie en entrée à l’aide de l’algorithme Ramer-Douglas-Peucker avec la tolérance donnée. Il est possible que la topologie de la géométrie en entrée ne soit pas conservée. Pour plus d’informations sur cet algorithme, consultez Algorithme de Douglas-Peucker
Lorsque ST_Simplify calcule les distances pour simplifier une géométrie, ST_Simplify fonctionne sur la projection 2D de la géométrie en entrée.
Syntaxe
ST_Simplify(geom, tolerance)
Arguments
- geom
-
Valeur de type de données
GEOMETRYou expression qui est évaluée sur un typeGEOMETRY. - tolerance
-
Valeur du type de données
DOUBLE PRECISIONqui représente le niveau de tolérance de l’algorithme Ramer-Douglas-Peucker. Si tolerance est un nombre négatif, zéro est utilisé.
Type de retour
GEOMETRY.
La valeur de l’identifiant de système de référence spatiale (SRID) de la géométrie renvoyée est la valeur SRID de la géométrie d’entrée.
La dimension de la géométrie renvoyée est identique à celle de la géométrie en entrée.
Si geom est null, null est renvoyé.
Exemples
Le code SQL suivant simplifie la linestring d’entrée en utilisant une tolérance de distance euclidienne de 1 avec l’algorithme Ramer-Douglas-Peucker. Les unités de distance sont identiques à celles indiquées dans les coordonnées de la géométrie.
SELECT ST_AsEWKT(ST_Simplify(ST_GeomFromText('LINESTRING(0 0,1 2,1 1,2 2,2 1)'), 1));
st_asewkt
-----------
LINESTRING(0 0,1 2,2 1)