Beschreibung
Mosaik-Datasets werden für die Verwendung mit dem Geoverarbeitungswerkzeug "Layer lagebezogen auswählen" unterstützt. Der Workflow ist jedoch möglicherweise nicht intuitiv, unabhängig davon, ob die Auswahl programmgesteuert oder über das Geoverarbeitungswerkzeug erfolgt.
Weil ein Mosaik-Dataset aus Bildern, Grenzen-Layern und Footprints besteht, weist dieser Workflow Besonderheiten auf.
Note:
For the tool to run properly, we need to rely on the mosaic datasets footprint or boundary layer components - the image components are not valid inputs for the Select Layer by Location geoprocessing tool.
Lösung oder Problemumgehung
Betrachten Sie die folgenden Beispiel-Workflows.
Ausführen des Werkzeugs "Layer lagebezogen auswählen" für ein Mosaik-Dataset über die ArcGIS Pro-GUI
- Stellen Sie sicher, dass ein Mosaik-Dataset erstellt wurde und ein weiterer Feature-Layer (der das Mosaik-Dataset überlappt) vorhanden ist, der als Parameter "Auswahl-Features" verwendet werden soll.
- Öffnen Sie ArcGIS Pro, erstellen Sie ein neues Projekt, und fügen Sie dem neuen Projekt das Mosaik-Dataset und den überlappenden Layer hinzu.
- Suchen Sie im Bereich "Geoverarbeitung" nach dem Geoverarbeitungswerkzeug Layer lagebezogen auswählen (Data Management), und öffnen Sie es.
- Füllen Sie das Werkzeug, und legen Sie den Footprint-Layer oder den Grenzen-Layer des Mosaik-Datasets als Eingabe und den anderen überlappenden Layer als Auswahl-Features fest, wobei Sie die Beziehung Überschneiden verwenden.
- Dadurch wird der Footprint des Mosaik-Datasets ausgewählt, sofern er den Auswahl-Features-Layer entsprechend schneidet.
- Wenn das Bild des Mosaik-Datasets verwendet wird, schlägt das Werkzeug fehl.
Ausführen des Werkzeugs "Lagebezogen auswählen" für ein Mosaik-Dataset mit ArcPy
- Stellen Sie sicher, dass ein Mosaik-Dataset erstellt wurde und ein weiterer Feature-Layer (der das Mosaik-Dataset überlappt) vorhanden ist, der als Auswahl-Features verwendet werden soll.
- Öffnen Sie ArcGIS Pro, erstellen Sie ein neues Projekt, und fügen Sie dem neuen Projekt das Mosaik-Dataset und einen weiteren überlappenden Layer hinzu.
- Berücksichtigen Sie die Python-Syntax für das Geoverarbeitungswerkzeug Layer lagebezogen auswählen:
arcpy.management.SelectLayerByLocation(in_layer, {overlap_type}, {select_features}, {search_distance}, {selection_type}, {invert_spatial_relationship})
- Passen Sie das Skript so an, dass es sich entweder auf den Footprint-Layer oder den Grenzen-Layer als Eingabe stützt, wobei der andere überlappende Layer als Auswahl-Features verwendet wird, wobei die Beziehung "Überschneiden" verwendet wird.
- Im Folgenden wird das grundlegende Skript bei Verwendung des Überlappungstyps "Überschneiden" dargestellt.
arcpy.management.SelectLayerByLocation(MosaicDatasetName, "INTERSECT", SelectingLayerName)
- Um die Grenze oder den Footprint auszuwählen, die bzw. der im Mosaik-Dataset mit Python-Syntax verwendet wird, geben Sie den Namen des Mosaik-Datasets, gefolgt von "/Footprint" oder "/Boundary", an. Beispiel: "MosaicDatasetName/Footprint" oder "MosaicDatasetName/Boundary".
- Eine endgültige Version des Skripts sieht in etwa wie folgt aus:
arcpy.management.SelectLayerByLocation(MosaicDatasetName/Boundary, "INTERSECT", SelectingLayerName)
- Dadurch wird der Grenzen-Layer in einem Mosaik-Dataset mit dem Namen "MosaicDatasetName" ausgewählt, der einen anderen Layer mit dem Namen "SelectingLayerName" schneidet.
- Mosaik-Datasets können mit dem Geoverarbeitungswerkzeug "Layer lagebezogen auswählen" verwendet werden, bei den Eingabe-Features muss es sich jedoch um die Footprint- oder Grenzen-Layer im Mosaik-Dataset handeln. Dies lässt sich im Bereich "Geoverarbeitung" von ArcGIS Pro einfach bewerkstelligen.
- Wenn Sie versuchen, diese Funktion mit ArcPy zu verwenden, greifen Sie auf die Grenzen- und Footprint-Komponenten zu, indem Sie den Namen des Mosaik-Datasets eingeben, gefolgt von "/Boundary" oder "/Footprint". Beispiel: "MosaicDatasetName/Boundary" oder "MosaicDatasetName/Footprint"