ArcGIS for Desktop

  • Documentation
  • Tarification
  • Support

  • My Profile
  • Aide
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS for Desktop

Un SIG professionnel complet

ArcGIS for Server

SIG dans votre entreprise

ArcGIS for 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
  • Tarification
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

Aide

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

Simplifier un polygone

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

Récapitulatif

Simplifie des polygones en supprimant les courbes superflues, tout en conservant la forme globale.

Illustration

Simplification de polygone

Utilisation

  • Il existe deux méthodes de simplification :

    • La méthode de conservation des points critiques (POINT_REMOVE dans Python) est la plus rapide des deux processus. Elle permet de supprimer les sommets redondants. Utilisez cette méthode pour la compression de données ou une simplification plus grossière, notamment lorsque les données sont connues. L'angularité (angles aigus) du polygone obtenu augmente de façon notable avec la tolérance, de sorte que l'aspect esthétique du polygone risque de devenir moins satisfaisant.
    • La méthode de conservation des courbes critiques (BEND_SIMPLIFY dans Python) est plus lente, mais génère habituellement des résultats plus fidèles à l'original et plus satisfaisants du point de vue esthétique. Elle opère en éliminant des courbes superflues le long des polygones. Recourez à cette méthode lorsque vous souhaitez une simplification moindre, plus affinée.
  • Le paramètre Superficie minimale s'applique uniquement aux polygones simplifiés. Tous les polygones dont la superficie est inférieure à la valeur minimale au terme du processus de simplification seront supprimés de la classe d'entités en sortie. Pour un groupe de polygones adjacents qui partagent des tronçons communs, cette méthode s'applique à la superficie totale du groupe.

  • L'outil génère deux classes d'entités en sortie : une classe d'entités surfaciques pour stocker les polygones simplifiés et une classe d'entités ponctuelles pour stocker les points qui représentent des polygones éliminés de surface nulle. Le nom et l'emplacement du point en sortie sont automatiquement dérivés du nom du polygone en sortie, avec un suffixe _Pnt. Le polygone en sortie contiendra tous les champs en entrée ; le point en sortie ne contiendra aucun des champs en entrée.

  • Les polygones multi-parties sont simplifiés en tant que parties individuelles.

  • Trois possibilités s'offrent à vous pour gérer les erreurs topologiques dans la sortie :

    • Ne pas détecter les erreurs topologiques (NO_CHECK dans Python) : les erreurs topologiques ne sont pas recherchées dans le résultat généré par le processus de simplification. Le traitement sera ainsi plus rapide. Utilisez cette option uniquement lorsque vous avez confiance dans la précision topologique des données.
    • Signaler les erreurs (FLAG_ERRORS dans Python) : les erreurs topologiques sont recherchées dans le résultat du processus de simplification et les entités présentant une erreur topologique sont signalées. Utilisez cette option lorsqu'il est plus important d'identifier les erreurs topologiques que de les résoudre. Cette option n'est pas prise en charge dans une session de mise à jour.
      • Le polygone en sortie contiendra deux nouveaux champs pour indiquer si une entité comporte une erreur topologique. InPoly_FID et SimPlyFlag contiennent respectivement les identifiants d'entités en entrée et les erreurs topologiques.
      • Le champ InPoly_FID relie les points éliminés à leurs polygones en entrée.
      • Dans le champ SimPlyFlag, une valeur de 1 indique qu'une erreur est présente ; 0 (zéro) indique l'absence d'erreurs.
      • Les valeurs d'indication restent en place après la résolution d'une erreur topologique. Utilisez le champ SimPlyFlag pour examiner les entités qui comportent des erreurs topologiques.
    • Résoudre les erreurs topologiques (RESOLVE_ERRORS dans Python) : répare les erreurs topologiques introduites par le processus de simplification. La durée de traitement est plus longue. Cette option n'est pas prise en charge dans une session de mise à jour.
      • La tolérance spécifiée peut convenir pour une majorité de polygones, mais pas pour d'autres, notamment ceux se trouvant dans des zones surchargées. Lorsqu'une erreur topologique est détectée après la première opération de simplification, les segments limites impliqués (et non l'intégralité des polygones) sont localisés et une tolérance réduite est utilisée
      • Cette tolérance réduite correspond à cinquante pour cent de celle utilisée précédemment. Cette nouvelle tolérance sera utilisée pour simplifier à nouveau ces segments. Cette itération peut se répéter autant de fois que nécessaire jusqu'à ce qu'il ne reste plus d'erreurs topologiques.
      • La classe d'entités surfaciques en sortie contiendra le même nombre de polygones que celle en entrée et comptera deux nouveaux champs, MaxSimpTol et MinSimpTol, permettant de stocker les tolérances maximale et minimale effectivement utilisées dans la simplification de chaque polygone via l'itération. En l'absence d'erreurs, les valeurs de MaxSimpTol et MinSimpTol sont identiques à celles de la tolérance de simplification spécifiées.
      • Un petit polygone situé à proximité d'un plus grand peut se terminer à l'intérieur de ce dernier en raison d'une valeur Tolérance de simplification relativement grande. Cette erreur de relation spatiale ne sera pas détectée par le programme.
    • Dans le cas des options NO_CHECK et FLAG_ERRORS, il se peut qu'une géométrie non valide (qui s'intersecte) soit créée pendant le processus de simplification. Celle-ci sera automatiquement réparée. Par exemple, si un polygone s'entrecoupe, il sera réparé afin de devenir un polygone multi-parties, de sorte qu'aucune partie n'intersecte une autre partie, bien que le polygone apparaisse toujours comme s'entrecoupant.
  • Le point en sortie sera renseigné lors de l'utilisation des options NO_CHECK ou FLAG_ERRORS, ou si la case à cocher Conserver les points éliminés est activée. Si un polygone en entrée contient plusieurs parties et que l'une d'elles se transforme en point éliminé, le point représentant cette partie sera également inclus dans le point en sortie.

Syntaxe

SimplifyPolygon_cartography (in_features, out_feature_class, algorithm, tolerance, {minimum_area}, {error_option}, {collapsed_point_option})
ParamètreExplicationType de données
in_features

Entités surfaciques à simplifier.

Feature Layer
out_feature_class

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

Feature Class
algorithm

Spécifie l'algorithme de simplification des polygones à utiliser.

  • POINT_REMOVE —Conserve les points critiques qui décrivent la forme globale d'un polygone et supprime tous les autres points. Il s'agit de l'option par défaut.
  • BEND_SIMPLIFY —Conserve la forme globale d'un polygone et supprime les courbes superflues de son contour.
String
tolerance

La tolérance qui détermine le degré de simplification. Une tolérance supérieure à zéro doit être spécifiée. Vous pouvez choisir une unité préférée. Par défaut, l'unité de l'entité est spécifiée.

  • Pour l'algorithme POINT_REMOVE, la tolérance que vous spécifiez correspond au décalage maximum autorisé.
  • Pour l'algorithme BEND_SIMPLIFY, la tolérance que vous spécifiez correspond à la longueur de la ligne de base de la courbe.
Linear unit
minimum_area
(Facultatif)

Définit la superficie minimale pour qu'un polygone simplifié soit conservé. La valeur par défaut est de zéro, auquel cas tous les polygones sont conservés. Vous pouvez choisir une unité préférée pour la valeur spécifiée. Par défaut, il s'agit de l'unité des entités.

Areal unit
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 de lignes, les superpositions de lignes et les lignes de longueur nulle éliminées).

  • NO_CHECK —Les erreurs topologiques ne sont pas détectées. Il s'agit de l'option par défaut.
  • FLAG_ERRORS —Les erreurs topologiques seront signalées par des balises, le cas échéant.
  • RESOLVE_ERRORS —Indique de résoudre les erreurs topologiques, le cas échéant.
String
collapsed_point_option
(Facultatif)

Spécifie s'il faut conserver les polygones de surface nulle éliminés en tant que points s'il en existe dans le processus. Cette option s'applique uniquement lorsque NO_CHECK ou FLAG_ERRORS est spécifié.

  • KEEP_COLLAPSED_POINTS —Indique de conserver les polygones de surface nulle éliminés en tant que points. Les extrémités des contours de polygones éliminés sont stockées dans une classe d'entités ponctuelles à l'emplacement de la classe d'entités en sortie. Celle-ci prend le nom de la classe d'entités en sortie auquel est ajouté le suffixe _Pnt. Il s'agit de l'option par défaut.
  • NO_KEEP —Spécifie de ne pas conserver les polygones de surface nulle éliminés en tant que points s'il en existe dans le processus. Par conséquent, la classe d'entités ponctuelles sera vide.
Boolean

Exemple de code

Exemple d'utilisation de l'outil SimplifyPolygon (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil SimplifyPolygon en mode immédiat.

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

Le script autonome ci-dessous explique comment utiliser l'outil SimplifyPolygon.

# Name: SimplifyPolygon_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
# Author: ESRI
 
# Import system modules
import arcpy
from arcpy import env
import arcpy.management as DM
import arcpy.cartography as CA
 
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Hydrography"
 
# Set local variables
inLakeFeatures = "lakes"
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", "CHECK")
 
# Smooth lake polygons.
CA.SmoothPolygon(simplifiedFeatures, smoothedFeatures, "PAEK", 100, "FLAG_ERRORS")

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
  • Etendue
  • Valeurs M en sortie
  • Valeurs Z en sortie
  • Espace de travail temporaire
  • Tolérance XY

Informations de licence

  • ArcGIS for Desktop Basic: Annuler
  • ArcGIS for Desktop Standard: Oui
  • ArcGIS for Desktop Advanced: Oui

Thèmes connexes

  • Vue d'ensemble du jeu d'outils Généralisation
  • Présentation de la résolution des conflits et de la généralisation
  • Automatisation de la résolution des conflits et des workflows de généralisation avec le géotraitement
  • Simplifier des lignes
  • Simplifier des bâtiments
  • Fonctionnement de l'outil Simplifier des lignes
Vous avez un commentaire à formuler concernant cette rubrique ?

ArcGIS for Desktop

  • Accueil
  • Documentation
  • Tarification
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog des initiés
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Confidentialité | Légal