Ich kann das Tool arcpy.CreateFishnet_management nicht verwenden, da der Parameter "templateExtent" mit einem Shapefile definiert wird und die Parameter "originCoordinate" und "yAxisCoordinate" nicht automatisch gefüllt werden.
import arcpy
from arcpy import env
env.overwriteOutput = True
env.workspace = r"D:\Users\julia\erste_aufg"
#Process: Create Fishnet
outFeatureClass = r"D:\Users\julia\erste_aufg\at001l_wien\at001l_wien\wien.shp"
cellSizeWidth = '200'
cellSizeHeight = '200'
templateExtent = r"D:\Users\julia\erste_aufg\at001l_wien\at001l_wien\at001l_wien.shp"
arcpy.CreateFishnet_management(outFeatureClass, "", "", cellSizeWidth, cellSizeHeight, '0', '0', "", "NO_LABELS", templateExtent, "POLYGON")
Es funktioniert im ModelBulider, daher wird im Hintergrund des ModelBulider etwas ausgeführt, das die Parameter "originCoordinate" und "yAxisCoordinate" erstellen kann, wenn es einen "templateExtent" hat. Wie kann ich dieses Tool in ArcPy ausführen, indem ich nur den Parameter "templateExtent" habe?
Ich würde mich sehr freuen, wenn jemand eine Lösung hat, weil ich das Fischnetz in einem Skriptwerkzeug brauche und nicht darauf verzichten kann, weil es am Ende eine Schleife gibt, sodass die Werte des Ausmaßes immer unterschiedlich sind. der erste Teil des gesamten Skripts
quelle
Antworten:
Hier ist ein Beispiel. Sie müssen den Begrenzungsrahmen aus einem Beschreibungsobjekt extrahieren.
quelle
+ 10
instr(desc.extent.YMax + 10)
?Hier ist ein alternativer Ansatz, mit dem ich mehrere Fischnetze innerhalb der Ausdehnung jedes Features innerhalb einer Feature-Class erstellt habe. Die Variable search_extents definiert den Pfad zu dieser Feature-Class und definiert die Ausdehnung jedes Fischnetzes, das ich erstellen wollte. Es gab keine Drehung des Fischnetzes.
quelle
Hier ist der Code, mit dem ich endlich erfolgreich gearbeitet habe (mithilfe der obigen Beispiele), um das hier beschriebene Problem zu lösen:
quelle