I have the following script:
#Import ArcPy site package
import arcpy
from arcpy import env
from arcpy import Raster
from arcpy.sa import ZonalStatistics
from arcpy.sa import CreateConstantRaster
# Set Environment Workspace
ws = env.workspace = "MY_WORKSPACE_PATH\\FGD.gdb"
# Set Environment Raster Cell Size
env.cellSize = 10
# Check out ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Get Parameters as Text
rasters = arcpy.GetParameterAsText(0)
inputRasters = rasters.split(";")
inZoneData = arcpy.GetParameterAsText(1)
zoneField = arcpy.GetParameterAsText(2)
# The constant raster = 0
addedRaster = CreateConstantRaster(0)
# Process each raster string
for raster in inputRasters:
addedRaster = addedRaster + Raster(ws + "\\" + raster)
# Execute Zonal Statistics
zoneStats = ZonalStatistics(inZoneData, zoneField, addedRaster, "MAXIMUM", "DATA")
# Save the output
zoneStats.save(ws + "\\" + NewTest_12102011")
I have imported the script as a script tool in ArcMap, my parameters are in the correct order and have the correct attributes (this script works when I have, for example, just two raster inputs as parameters). The input rasters are referenced as a String (this tool will eventually be used as a Geoprocessing Task, so I cannot use rasters a input directly). The problem I have is that when I open the tool, there is no way for me to input anything into the first parameter.
To provide some clarity: each value that could be entered into the parameter would be the name of a raster inside the geodatabase. For instance, say the user enters "rasterOne" and "rasterTwo". This would refer to MY_WORKSPACE_PATH\FGD.gdc\rasterOne and MY_WORKSPACE_PATH\FGD.gdc\rasterTwo, which are then cast to a Raster object with
Raster("MY_WORKSPACE_PATH\\FGD.gdc\\rasterOne")
Any suggestions would be great. Thanks.
Best Answer
In addition to the above comments, I will show what this simple script and the toolbox with a filter list allows and you can decide if that is the desired outcome. The following script
was added to a toolbox with one multivalue parameter with values provided to be selected. The following image shows the input stage with 3 string values selected (eg names of input data for example)![multivalue selection](https://i.stack.imgur.com/ByCOd.png)
The following is the output.
Not sure if that helps, but it might useful for other posts.