[GIS] ArcGIS: Reclassify Values as Parameter in ModelBuilder

arcgis-10.3arcgis-desktopmodelbuilderreclassify

Is there a way in ArGIS' Model Builder to set the values for reclassification (Tool Reclassify) as Model Parameters? The Reclassification is an important part of my model and I need to be able to change the threshold values for reclassification in an easy way in the model window.

The only workaround I can so far think of, would be to create several rasters by using the Raster Calculator, using Double variables which can be set as Parameters…

Best Answer

You can use Calculate Value with an output parameter type of Remap to accomplish dynamic reclassification of intermediate results.

Here, I'm use Iterate Field Values to loop over a table with different reclass values. %Max% is a model variable and %Value% is the current table value. If you export the Reclassify GP tool to Python, you'll find that the remap parameter (for ranges at least) can be accomplished via RemapRange. I just did it with str.format() since it's a simple remap. For more complicated ones, you'll probably want to use something like

str(arcpy.sa.RemapRange([[0, 75, 75], [76, 150, 150]]))

enter image description here

This submodel is part of a much larger series of models that takes an input raster and reclassifies it multiple times based on the number of rows in a record set. The end user never specifies a remap or reclassification parameter.