Créer une coque convexe dans ArcGIS Desktop?


15

J'aimerais pouvoir créer une coque convexe dans ArcGIS Desktop 9.x, mais je ne trouve pas d'outil approprié.

Comment procéder pour en créer un?

Je suis intéressé par les réponses pour tous les niveaux de licence: ArcView, ArcEditor et ArcInfo.


1
Il existe une option de coque convexe dans les outils de géotraitement qgis 1.7.4 qui semble faire exactement la même chose que l'outil dans Arcgis 10 avec les options de coque et de groupe convexe

Réponses:



14

Dans la version 10, il existe désormais un outil de géotraitement Géométrie de délimitation minimale (gestion des données) qui:

Crée une classe d'entités contenant des polygones qui représentent une géométrie de délimitation minimale spécifiée englobant chaque entité en entrée ou chaque groupe d'entités en entrée.

Pourtant:

Les options Type de géométrie (geometry_type) CONVEX_HULL , CIRCLE et ENVELOPE ne sont disponibles qu'avec une licence ArcInfo.


1
Wow, le nouvel outil de géométrie de limite minimale semble excellent. Malheureusement, CONVEX_HULL, CIRCLE et ENVELOPE ne sont disponibles qu'avec une licence ArcInfo. Plus d'infos: help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//…
Charles Roper

5
dans la version 10, voir resources.arcgis.com/gallery/file/geoprocessing/… qui produit tout quel que soit le niveau de licence

Le nettoyage récent du site @DanPatterson Esri a rompu votre lien - connaissez-vous la nouvelle URL? Quel était le nom de l'outil / script?
Stephen Lead

Le site semble être en pleine mutation ... Je vais devoir vérifier les migrations au sein de Geonet car je sais qu'elles sont en cours. Je

3

Il existe un tel outil.

Ouvrez ArcToolbox> Cartographie> Masquage> Masques de contour d'entité


C'est pour ArcInfo uniquement. J'ai légèrement mis à jour la question pour mieux aider les utilisateurs d'ArcView et d'ArcEditor.
Charles Roper du

C'est vrai. : P
George Silva

3

Vieille question, mais comme elle apparaît assez élevée lors de la recherche d '"arcgis de coque convexe", j'ai pensé ajouter l' exemple de géotraitement Créer des coques convexes .

Il utilise la méthode de géométrie convexhull () (nécessite 10.1 ou supérieur, testé en 10.2). Fonctionne bien dans ArcGIS basic, le code de la boîte à outils (python) est également une bonne référence pour utiliser cette méthode ailleurs.



1

C'est un vieil arcscript qui fonctionnait bien http://arcscripts.esri.com/details.asp?dbid=12084 (ignorer l'erreur de taille de fichier 0k sur les arcscripts, il fait 359kb) crée la coque convexe d'un ensemble de points ou ou l'enveloppe convexe ( zone de délimitation minimale) d'un ensemble de points

Remarque: utilise VBA mais fonctionne en arcview, arc arceditor / info.


1

Comme la réponse acceptée à cette question se réfère aux outils de Hawth, qui sont maintenant remplacés, j'ai décidé de publier ce successeur, Geospatial Modeling Environment .

La commande genmcp (Generate Minimum Convex Polygons) fera le travail. L'outil accepte une entrée ponctuelle et un identifiant unique facultatif et génère des polygones. Une clause where peut être spécifiée pour identifier un sous-ensemble des entités en entrée.

NB, GME a quelques dépendances : ArcGIS et R surtout.


1

À partir d' ArcGIS 10 , la arcpy.geometryclasse a une propriété en lecture seule hullRectanglequi renvoie une chaîne délimitée par des espaces des paires de coordonnées du rectangle de coque convexe.

Vous pouvez facilement parcourir toutes les fonctionnalités en créant des coques convexes puis en les préservant au besoin. Ceci est disponible dans tous les niveaux de licence.

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.hullRectangle

Production:

u'1592326,2415 7543305,0318 1592303,39647295 7543680,88044691 1594546,11624981 7543817,19860157 1594568,96127687 7543441,34995466'

À partir d' ArcGIS 10.1 , il existe une méthode convexHull()pour renvoyer directement un objet géométrique:

g = [f for f in arcpy.da.SearchCursor("CityStreets","SHAPE@","OBJECTID=47")][0][0]
c = g.convexHull()
arcpy.CopyFeatures_management(c,'outhull')

Un exemple de coque convexe pour une entité polyligne:

entrez la description de l'image ici

Liens de référence:

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.