Vou dar uma resposta aqui, porque ambas as respostas até agora não são 100% corretas.
Existem 2 itens que podem variar de ferramenta para ferramenta.
- se respeitar o ambiente da área de trabalho (este item está sempre documentado na página de ajuda da ferramenta)
- se ele puder usar o
in_memory
espaço de trabalho (este item pode não estar explicitamente documentado. É mais provável que você veja uma observação se ele NÃO suportar in_memory
)
Para responder simplesmente "você pode definir o espaço de trabalho do ambiente como in_memory". A resposta é sim.
>>> 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
O Snap Pour Point respeita o ambiente da área de trabalho de acordo com a documentação e explica exemplos de Python. E um teste mostra que você pode gravar a saída in_memory
e trabalhar com essa referência variável ... para colocar em outra ferramenta ou salvar o resultado
>>> 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