阅读:1580回复:1
出项 自动化错误 的一段代码
<P>下面的一段代码,是在帮助中找到的,其中sFieldName 变量的值换成了我自己的shape的相应的字段,但是运行的时候,在 1 处 ,总是出错,提示:自动化错误,不知道为什么,请斑竹和各位高手帮忙看一下。谢谢了</P>
<P> <CODE>' Set the two variables to fit your data</CODE> <CODE>Dim</CODE> sFieldName <CODE>As String Dim</CODE> CellSize <CODE>As Double</CODE> sFieldName = "height" <CODE>'Field name used in interpolation</CODE> CellSize = 60 <CODE>'Cell size for output raster</CODE> <CODE>' Get Map</CODE> <CODE>Dim</CODE> pMxDoc <CODE>As</CODE> IMxDocument <CODE>Dim</CODE> pMap <CODE>As</CODE> IMap <CODE>Set</CODE> pMxDoc = ThisDocument <CODE>Set</CODE> pMap = pMxDoc.FocusMap <CODE>' Get feature class from layer</CODE> <CODE>Dim</CODE> pFLayer <CODE>As</CODE> IFeatureLayer <CODE>Set</CODE> pFLayer = pMap.Layer(0) <CODE>Dim</CODE> pFClass <CODE>As</CODE> IFeatureClass <CODE>Set</CODE> pFClass = pFLayer.FeatureClass <CODE>' Create FeatureClassDescriptor using a value field</CODE> <CODE>Dim</CODE> pFDescr <CODE>As</CODE> IFeatureClassDescriptor <CODE>Set</CODE> pFDescr = <CODE>New</CODE> FeatureClassDescriptor pFDescr.Create pFClass, <CODE>Nothing</CODE>, sFieldName <CODE>' Create RasterInterpolationOp object</CODE> <CODE>Dim</CODE> pIntOp <CODE>As</CODE> IInterpolationOp <CODE>Set</CODE> pIntOp = <CODE>New</CODE> RasterInterpolationOp <CODE>' Set cell size for output raster. The extent of the output raster is</CODE> <CODE>' defualted to as same as input. The output working directory uses default</CODE> <CODE>Dim</CODE> pEnv <CODE>As</CODE> IRasterAnalysisEnvironment <CODE>Set</CODE> pEnv = pIntOp pEnv.SetCellSize esriRasterEnvValue, CellSize <CODE>' Create raster radius using variable distance</CODE> <CODE>Dim</CODE> pRadius <CODE>As</CODE> IRasterRadius <CODE>Set</CODE> pRadius = <CODE>New</CODE> RasterRadius pRadius.SetVariable 12 <CODE>' Using FeatureClassDescriptor as an input to the IInterpolationOp and</CODE> <CODE>' Perform the interpolation</CODE> <CODE>Dim</CODE> pOutRaster <CODE>As</CODE> IRaster <CODE>Set</CODE> pOutRaster = pIntOp.<FONT color=#ffffff style="BACKGROUND-COLOR: #0a246a">IDW</FONT>(pFDescr, 2, pRadius) ‘。。。。。。1 <CODE>' Add the result to layer</CODE> <CODE>Dim</CODE> pRLayer <CODE>As</CODE> IRasterLayer <CODE>Set</CODE> pRLayer = <CODE>New</CODE> RasterLayer pRLayer.CreateFromRaster pOutRaster pMap.AddLayer pRLayer </P> |
|
1楼#
发布于:2004-06-25 12:58
<P>自动化错误一般和路径有关</P>
|
|
2楼#
发布于:2004-06-26 02:38
<P>我想,这一段代码好像和路径的关系不大,版主能详细说一下吗?谢谢了</P>
|
|