J'ai rencontré quelques questions similaires pour les anciennes versions d'ArcGIS, mais je n'ai pas trouvé de réponse appropriée pour ArcGIS 10.
J'ai deux fichiers de formes polygonales qui couvrent une grande zone (par exemple, un état / une province entière). Le premier fichier de formes représente la couverture terrestre de l'ensemble de l'État et le second représente 50 bassins versants individuels. Je voudrais découper le fichier de formes de l'occupation du sol en fonction de chaque bassin versant (chacun a un nom unique stocké dans un champ). Je voudrais ensuite enregistrer les fichiers coupés en sortie (un pour chacun des 50 bassins versants) en utilisant le nom du bassin versant.
Étant donné qu'il y a 50 clips à effectuer, ce processus est un excellent candidat pour le traitement par lots.
Réponses:
Le script suivant découpe les bassins versants de polygones aux limites des comtés de polygones, en nommant chaque caractéristique de sortie comme quelque chose comme le nom HspWBD_HU12_county. Testé et ça marche. Assurez-vous que vos valeurs dans le champ NAME n'ont pas de caractères ou d'espaces spéciaux (les méthodes de chaîne Python simples peuvent nettoyer cela pour vous).
la source
Lorsque vous utilisez ArcGIS 10, j'utiliserais modelbuilder avec l'outil intégré: Sélection d'entités itératives pour effectuer cette tâche. Voir le pseudo-modèle dans l'image. il n'a pas du tout besoin de connaître le scritping python.
la source
Cela ressemble exactement à ce que fait l' outil Fractionner de la boîte à outils Analyse .
Cependant, il nécessite une licence ArcInfo pour fonctionner, il n'est donc pas disponible pour la majorité des utilisateurs d'ArcGIS Desktop, donc j'aime la réponse de Chad qui fonctionnera également pour les utilisateurs d'ArcGIS 10 Desktop avec des licences de niveau ArcView et ArcEditor.
la source
Vous pouvez le faire comme vous le souhaitez si vous exécutez d'abord un autre outil en mode batch: Outils de conversion> En géodatabase> Classe d'entités en classe d'entités. Cela vous permettra d'utiliser une expression pour prendre votre couche de bassin versant et extraire chaque bassin versant de manière individuelle et l'enregistrer comme sa propre classe d'entités, puis vous aurez 50 couches individuelles que vous pouvez utiliser avec l'outil Clip en mode batch.
la source
Le de Split outil dans ArcGIS fait exactement cela.
la source