Saya tidak dapat menggunakan alat arcpy.CreateFishnet_management karena mendefinisikan parameter "templateExtent" dengan sebuah shapefile itu tidak mengisi secara otomatis parameter "originCoordinate" dan "yAxisCoordinate".
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")
Ini berfungsi di ModelBulider, jadi ada sesuatu yang berjalan di latar belakang ModelBulider sehingga dapat membuat parameter "originCoordinate" dan "yAxisCoordinate" ketika memiliki "templateExtent". Bagaimana saya bisa menjalankan alat ini di ArcPy dengan hanya memiliki parameter "templateExtent"?
Saya akan sangat senang jika seseorang memiliki solusi karena saya memerlukan Fishnet di sebuah scripttool dan tidak dapat pergi tanpa karena pada akhirnya ada satu lingkaran sehingga nilai-nilai sejauh ini selalu berbeda. bagian pertama dari keseluruhan naskah
sumber
Jawaban:
di sini adalah sebuah contoh. Anda perlu mengekstrak kotak pembatas dari objek yang dijelaskan.
sumber
+ 10
distr(desc.extent.YMax + 10)
?Berikut adalah pendekatan alternatif yang saya gunakan untuk membuat banyak fishnets dalam luasan setiap fitur dalam kelas fitur. Variabel search_extents mendefinisikan path ke kelas fitur yang mendefinisikan luasan setiap fishnet yang ingin saya buat. Tidak ada rotasi jala.
sumber
Inilah kode yang akhirnya berhasil saya kerjakan (dengan bantuan dari contoh di atas) untuk menyelesaikan masalah yang dijelaskan di sini:
sumber