ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Lisser un polygone

  • Résumé
  • Illustration
  • Utilisation
  • Syntaxe
  • Exemple de code
  • Environnements
  • Informations de licence

Résumé

Lisse des angles aigus en contours de polygone pour améliorer la qualité esthétique ou cartographique.

Illustration

Exemples d’options de l’algorithme de l’outil Lisser un polygone
Il est possible de lisser les angles aigus d’un polygone à l’aide de la méthode PAEK ou de la méthode d'interpolation de Bézier.

Utilisation

  • Deux méthodes de lissage sont disponibles :

    • La méthode PAEK (Polynomial Approximation with Exponential Kernel, approximation polynomiale avec noyau exponentiel) (PAEK dans Python) lisse les polygones selon une tolérance de lissage. Chaque polygone lissé peut avoir davantage de sommets que son polygone source. Le paramètre Tolérance de lissage contrôle la longueur d'un chemin « mobile » qui sert à calculer les nouveaux sommets. Plus la longueur est courte, plus le niveau de détail est préservé et plus le temps de traitement est long.
    • La méthode Interpolation de Bézier (BEZIER_INTERPOLATION dans Python) lisse les polygones sans faire appel à une tolérance. Elle crée des courbes de Bézier évaluées qui correspondent aux polygones en entrée.
  • Utilisez le paramètre Input barrier layers (Couches d’interruptions en entrée) pour identifier les entités qui ne doivent pas être traversées par des polygones lissés. Les entités interruptions peuvent être des points, des lignes ou des polygones.

  • Le traitement de jeux de données volumineux peut dépasser les limites de mémoire. Dans ce cas, envisagez de traiter les données en entrée par partition en identifiant une classe d’entités surfaciques pertinente dans le paramètre d’environnement Partitions cartographiques. Les portions de données, définies par les limites des partitions, sont traitées séquentiellement. La classe d'entités résultante sera transparente et cohérente aux tronçons de partition. Reportez-vous à Généralisation de jeux de données volumineux à l'aide de partitions pour en savoir plus.

    Attention :

    Le paramètre d'environnement Partitions cartographiques est ignoré lorsque le paramètre Traitement des erreurs topologiques est défini sur Ne pas détecter les erreurs topologiques (error_option = "NO_CHECK" dans Python) ou sur Signaler les erreurs topologiques (error_option = "FLAG_ERRORS" in Python).

  • La classe d'entités surfaciques en sortie est correcte d'un point de vue topologique. Toute erreur topologique dans les données en entrée est signalée dans la classe d’entités surfaciques en sortie. La classe d’entités en sortie inclut deux champs supplémentaires : InPoly_FIDet SmoPgnFlag, qui contiennent respectivement les ID des entités en entrée et les erreurs topologiques de l’entrée. Une valeur SmoPgnFlag de 1 indique une erreur topologique ; une valeur de 0 (zéro) indique l’absence d’erreur.

    Héritage :

    Avant la version ArcMap 10.6.1 de cet outil, le paramètre Conserver l’extrémité des anneaux (endpoint_option dans Python) était utilisé pour indiquer si l’extrémité d’un anneau surfacique isolé obtenu devait être conservé. Ce paramètre est encore inclus dans la syntaxe de l’outil pour la compatibilité des scripts et des modèles, mais est désormais ignoré et masqué dans la boîte de dialogue de l’outil.

Syntaxe

arcpy.cartography.SmoothPolygon(in_features, out_feature_class, algorithm, tolerance, {endpoint_option}, {error_option}, {in_barriers})
ParamètreExplicationType de données
in_features

Entités surfaciques à lisser.

Feature Layer
out_feature_class

Classe d'entités surfaciques en sortie à créer.

Feature Class
algorithm

Spécifie l'algorithme de lissage.

  • PAEK —Acronyme de Polynomial Approximation with Exponential Kernel (approximation polynomiale avec noyau exponentiel). Calcule un polygone lissé qui ne passe pas par les sommets du polygone en entrée. Il s’agit de l’option par défaut.
  • BEZIER_INTERPOLATION —Les courbes de Bézier seront ajustées entre les sommets. Les polygones obtenus passent par les sommets des polygones en entrée. Cet algorithme ne requiert pas de tolérance. La sortie contient des courbes de Bézier approximatives.
String
tolerance

Une tolérance utilisée par l’algorithme PAEK. Une tolérance supérieure à zéro doit être spécifiée. Vous pouvez spécifier une unité préférée. Par défaut, l'unité de l'entité est spécifiée. Si vous utilisez l'algorithme de lissage d’interpolation de Bézier, vous devez entrer un 0 en tant qu’espace réservé.

Linear Unit
endpoint_option
(Facultatif)

Il s'agit d'un ancien paramètre qui n'est plus utilisé. Il était auparavant utilisé pour indiquer si l’extrémité d’un anneau surfacique isolé devait être conservée. Ce paramètre est encore inclus dans la syntaxe de l'outil pour la compatibilité des scripts et des modèles, mais est désormais ignoré et masqué à partir de la boîte de dialogue de l'outil.

Spécifie si les extrémités des anneaux surfaciques isolés seront conservées. Cette option est valide uniquement avec l'algorithme PAEK.

  • FIXED_ENDPOINT —L'extrémité d'un anneau surfacique isolé sera conservée. Il s’agit de l’option par défaut.
  • NO_FIXED —L’extrémité d'un anneau surfacique isolé ne sera pas conservée ; elle sera lissée.
Boolean
error_option
(Facultatif)

Précise la manière de traiter les erreurs topologiques (qui ont pu s’introduire au cours du processus, notamment les croisements et les superpositions de lignes).

  • NO_CHECK —Les erreurs topologiques ne seront pas identifiées. Il s’agit de l’option par défaut.
  • FLAG_ERRORS —Si des erreurs topologiques sont détectées, elles seront signalées.
  • RESOLVE_ERRORS —Si des erreurs topologiques sont détectées, elles seront résolues.
String
in_barriers
[in_barriers,...]
(Facultatif)

Entrées contenant les entités qui jouent le rôle d’interruptions pour le lissage. Les polygones lissés obtenus ne touchent pas ni ne traversent les entités interruptions.

Feature Layer

Exemple de code

Exemple d'utilisation de l'outil SmoothPolygon (Fenêtre Python)

Le script ci-dessous pour la fenêtre Python illustre l’utilisation de la fonction SmoothPolygon en mode immédiat.

import arcpy
import arcpy.cartography as CA
arcpy.env.workspace = "C:/data"
CA.SmoothPolygon("soils.shp", "C:/output/output.gdb/smoothed_soils", "PAEK", 100)
Exemple 2 d'utilisation de l'outil SmoothPolygon (script autonome)

Le script autonome ci-dessous illustre l’utilisation de la fonction SmoothPolygon.

# Name: SmoothPolygon_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries

# Import system modules
import arcpy
import arcpy.cartography as CA
import arcpy.management as DM

# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Hydrography"

# Set local variables
inLakeFeatures = "lakes"
barriers = "C:/data/Portland.gdb/Structures/buildings"
eliminatedFeatures = "C:/data/PortlandOutput.gdb/lakes_eliminated"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/lakes_simplified"
smoothedFeatures = "C:/data/PortlandOutput.gdb/lakes_smoothed"

# Eliminate small islands in lake polygons.
DM.EliminatePolygonPart(inLakeFeatures, eliminatedFeatures, 100, "OR", 0, 
                        "CONTAINED_ONLY")

# Simplify lake polygons.
CA.SimplifyPolygon(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 
                   200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS", barriers)

# Smooth lake polygons.
CA.SmoothPolygon(simplifiedFeatures, smoothedFeatures, "PAEK", 100, "", 
                 "FLAG_ERRORS", barriers)

Environnements

  • Espace de travail courant
  • Valeur Z en sortie par défaut
  • Domaine M en sortie
  • Domaine XY en sortie
  • Système de coordonnées en sortie
  • Étendue
  • Valeurs M en sortie
  • Valeurs Z en sortie
  • Espace de travail temporaire
  • Tolérance XY
  • Partitions cartographiques

Informations de licence

  • Basic: Non
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes

  • Vue d'ensemble du jeu d'outils Généralisation
  • Comprendre la résolution des conflits et leur généralisation
  • Automatisation de la résolution des conflits et workflows de généralisation avec le géotraitement
  • Lisser des lignes
  • Simplifier un polygone
  • Généralisation de grands jeux de données à l'aide de partitions

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2021 Esri. | Confidentialité | Légal