与核密度分析相同,只是指定要素为线要素。
全部代码:
private ILayer lineDesityOp(IFeatureClass pFeatureClass,string pFullPath,double cellsize,double radius)
{
//定义点密度分析类
IDensityOp pDensityOp = new RasterDensityOpClass(); //定义密度分析函数
//设置栅格分析环境
IRasterAnalysisEnvironment pEnv = pDensityOp as IRasterAnalysisEnvironment;
object obj_cellsize = (object)cellsize;
pEnv.SetCellSize(esriRasterEnvSettingEnum.esriRasterEnvValue, ref obj_cellsize);
//定义数据描述
IFeatureClassDescriptor pFCD = new FeatureClassDescriptorClass();
pFCD.Create(pFeatureClass, null, pFullPath);
//基本参数
object obj_radius = (object)cellsize;
object Missing = Type.Missing;
//进行线密度转化
IRaster PRaster=pDensityOp.LineDensity(pFCD as IGeoDataset, obj_radius, Missing) as IRaster;
IRasterLayer pRasterLayer = new RasterLayerClass();
pRasterLayer.CreateFromRaster(PRaster);
ILayer pLayer = pRasterLayer as ILayer;
return pLayer;
}
本文介绍了一种基于线要素的核密度分析方法,通过使用特定的GIS算法将线要素转化为密度分布图,此过程涉及定义点密度分析类、设置栅格分析环境、定义数据描述、进行线密度转化等步骤。
4753

被折叠的 条评论
为什么被折叠?



