[GIS] Error When Trying to Run Slope Analysis Script

arcgis-10.0arcpyerror-000875slopespatial-analyst

I have written a script which is supposed to loop through all the rasters in a folder and perform a slope analysis on each raster and save the results in another folder.

I keep getting the following error:

< type 'exceptions.RuntimeError'>: ERROR 000875: Output raster:
C:\Slope_Outputs\burd_25m_dem_slope's workspace is an invalid output
workspace.

Here's my code:

class LicenseError(Exception):
    pass

# Set desktop license used to ArcView
#
import arcview
import arcpy
from arcpy import env

try:
    if arcpy.CheckExtension("Spatial") == "Available":
        arcpy.CheckOutExtension("Spatial")
    else:
        # Raise a custom exception
        raise LicenseError

except LicenseError:
    arcpy.AddMessage("Spatial Analyst license is unavailable")
except:
    print arcpy.GetMessages(2)

from arcpy.sa import *

originLocation = arcpy.GetParameterAsText(0)
slopeMeasurement = arcpy.GetParameterAsText(1)
destinationLocation = arcpy.GetParameterAsText(2)

arcpy.env.workspace = originLocation

rasterList = arcpy.ListRasters("*")

for raster in rasterList:
    finalDestination = destinationLocation+"\\"+raster+"_slope"
    arcpy.AddMessage(finalDestination)
    outSlope=arcpy.sa.Slope(raster, slopeMeasurement)
    arcpy.AddMessage(outSlope)
    outSlope.save(finalDestination)

I'm not really sure why I'm getting this error.

Any ideas?

Best Answer

I have found on this page that the maximum raster name length is 13 characters. I have modified my code to take the first 7 characters of the input raster name and add "_slope" at the end of it.

This works for now, but I think I will modify my code to write to a different file format instead of ESRI GRID or possibly a geodatabase instead.

Related Question