Have you experienced converting a polygon from raster? The raster dataset is a satellite image created from zonal statistics? The problem is when I was converting the raster to polygon errors came out as:
ERROR 000863: The input is not within the defined domain.
ERROR 000308: Invalid field type
I do not know how to get around these errors.
With ArcGIS 9.3 and the Spatial Analyst Extension
Converts a raster to a polygon (Type 5) shapefile.
Update: ArcObjects Code:
' Converts raster data to polygon feature data (FeatureClass or FeatureDataset). ' Member of esriGeoAnalyst.IConversionOp"Function RasterDataToPolygonFeatureData(ByVal dataset As esriGeoDatabase.IGeoDataset, _ ' ByVal pWorkspace As esriGeoDatabase.IWorkspace, ByVal name As String, _ ' ByVal weeding As Boolean) As esriGeoDatabase.IGeoDataset Dim pConversionOp As IConversionOp Set pConversionOp = New RasterConversionOp ' Get the raster Dim pRas01 As IRaster Set pRas01 = getRasterFromFileFunction("c:datamyRaster") Dim pFClassOut As IGeoDataset Dim pWSF As IWorkspaceFactory Set pWSF = New ShapefileWorkspaceFactory Dim pWS As IWorkspace Set pWS = pWSF.OpenFromFile("c:data", 0) Dim sOutFCname As String sOutFCname = "myShapeFile.shp" Set pFClassOut = pConversionOp.RasterDataToPolygonFeatureData(pRas01, pWks, sOutFCname, True)
According to the comments below the question, you want to (a) classify the image into a small number of discrete categories and then (b) convert it into a polygon representation ("vectorize" it).
There are many ways to do (a). Good choices in this application are either (a.i) drive the calculations with a reclassification table via the reclassify tools or (a.ii) do a mathematical calculation. For instance, if the moisture availability is an index varying from 0 to 1 and you want to classify it into equal intervals [0,0.25], (0.25, 0.50], (0.50, 0.75], and (0.75, 1.00] then compute
Int([Original grid] * 4)
Once this operation is performed, the conversion tool you are using should do fine. It works by finding contiguous patches of cells all sharing the same value and converting those to polygons.
Your image values may be a float data type, which according to this forum post below needs to be converted to integer before converting to polygon.
It will depend on the type of information you have in the satellite image i.e. RGB (Red Green Blue) values or GRID type (value as in DEM).
If you try to convert, to integer, a raster image in RGB format is very possible to get the value 0.
However, if you convert the values by classifying them into a series of numerical codes representing a scale of humidity values, you get a raster grid that could be easily vectored.