Réaliser une sélection par emplacement

Le vrai nom de l'outil est « Select layer by location », cela a une réelle importance.

Habituellement, un « layer » (couche) est créé au moment où vous chargez un fichier dans votre projet ArcGIS Pro.

Lorsque vous passez par l'automatisation Python, vous devez créer ce layer via l'outil MakeFeatureLayer.

Il suffit de créer un layer pour l'input feature, ce n'est pas la peine d'en créer un pour le selecting feature.

1
#Automatisation du TD 02 "Communes de plus de 1000 habitants sur limons des plateaux" Extrait 2
2
3
import arcpy
4
arcpy.env.workspace = r'URL du dossier ou gdb'
5
6
# Sélection des communes de plus de 1000 habitants situées dans un polygone d'emprise "limons des plateaux"
7
input = 'communes_sup_1000hab.shp'
8
arcpy.MakeFeatureLayer_management(input ,"lyr") # Création d'un fichier layer (lyr) temporaire et virtuel sur lequel s'appliquera la sélection. 
9
10
selecting_feature = 'limons_plateaux.shp' # fc d'emprise permettant la sélection par emplacement
11
arcpy.SelectLayerByLocation_management("lyr",'INTERSECT',selecting_feature) # Sélection sur le layer selon la localisation de Area
12
13
output = 'communes_sup_1000hab_limons.shp' # nom du fichier en sortie avec sélection
14
arcpy.CopyFeatures_management('lyr',output) # export du nouveau fichier avec sélection

Attention

L'input feature du Copy features est le « lyr » car la sélection a été appliquée sur cette couche.

Si vous faites une copie de « input », vous aurez une copie du fichier sans la sélection.