Saya akan memberikan jawaban di sini karena kedua jawaban sejauh ini tidak 100% benar.
Ada 2 item yang dapat bervariasi dari alat ke alat.
- jika itu menghormati lingkungan ruang kerja (item ini selalu didokumentasikan pada halaman bantuan alat)
- jika dapat menggunakan
in_memory
ruang kerja (item ini mungkin tidak didokumentasikan secara eksplisit. Anda lebih cenderung melihat catatan jika TIDAK TIDAK mendukung in_memory
)
Untuk hanya menjawab "Anda dapat mengatur ruang kerja lingkungan ke in_memory". Jawabannya iya.
>>> import arcpy
>>> arcpy.env.workspace = r"in_memory"
>>> arcpy.CopyFeatures_management(r"c:\temp\foo.shp", "myinmemoutput")
<Result 'in_memory\\myinmemoutput'>
>>> arcpy.Exists("myinmemoutput")
True
Snap Pour Point menghormati lingkungan kerja sesuai dengan dokumentasi dan menjelaskan sampel Python. Dan tes menunjukkan Anda dapat menulis output ke in_memory
dan bekerja dengan referensi variabel itu ... untuk dimasukkan ke alat lain, atau simpan hasilnya
>>> import arcpy
>>> arcpy.env.workspace = r"in_memory"
>>> arcpy.CheckOutExtension("SPATIAL")
u'CheckedOut'
>>> snapOut = arcpy.sa.SnapPourPoint("e:/gpservices101/hydro/US30m/test.gdb/sourcepoint", "e:/gpservices101/hydro/US30m/Region08a/Input/elev_cm", 1,"PourPtID")
>>> snapOut
in_memory\SnapPou_sour1
>>> arcpy.Exists(snapOut)
True
>>> snapOut.save(r"c:\temp\todisk.tif")
>>> arcpy.Exists(r"c:\temp\todisk.tif")
True