IRaster pRaster = pRasLyr.Raster; //获取已知栅格图层pRasLyr的栅格对象
IGeoDataset tempGeodata = pRaster as IGeoDataset;
IMapAlgebraOp rsalgebra = new RasterMapAlgebraOpClass();
//设置栅格运算空间
IRasterAnalysisEnvironment rasAnaEnv = (IRasterAnalysisEnvironment)rsalgebra;
IWorkspaceFactory wsf = new RasterWorkspaceFactoryClass();
IWorkspace ws = wsf.OpenFromFile("F:\\beifen\\jg", 0);
rasAnaEnv.OutWorkspace = ws;
rsalgebra.BindRaster(tempGeodata, "tempRaster");
//进行栅格运算,height为已知的整型数据,用来确定高度
string Opstr = "[tempRaster] < " + height.ToString();
IGeoDataset outGeoDataset = rsalgebra.Execute( Opstr );
IRasterLayer pCreatRslyr = new RasterLayerClass();
pCreatRslyr.CreateFromRaster((IRaster)outGeoDataset);
RasterRender(ref pCreatRslyr); //对生成的栅格图层进行渲染,是满足要求的按一个颜色显示,不满足要求的栅格不显示
m_map.AddLayer(pCreatRslyr);
//
//栅格图的渲染
//
public void RasterRender(ref IRasterLayer pRasterLayer)
{
int NumOfClass = 2;
IRaster pRaster;
pRaster = pRasterLayer.Raster;
//Create classfy renderer and QI RasterRenderer interface
IRasterClassifyColorRampRenderer pClassRen = new RasterClassifyColorRampRendererClass();
IRasterRenderer pRasRen = pClassRen as IRasterRenderer;
pRasRen.Raster = pRaster;
//字串5
//Set raster for the render and update
pClassRen.ClassCount = NumOfClass;
pRasRen.Update();
// Create a color ramp to use
IAlgorithmicColorRamp pRamp = new AlgorithmicColorRamp();
pRamp.Size = NumOfClass;
IRgbColor pFColor = new RgbColorClass();
IRgbColor pTColor = new RgbColorClass();
pFColor.NullColor = true;
pTColor.RGB = 100;
pRamp.FromColor = pFColor;
pRamp.ToColor = pTColor;
bool ok = true;
pRamp.CreateRamp(out ok);
// Create symbol for the classes 字串2
IFillSymbol pFSymbol = new SimpleFillSymbolClass();
//Update the renderer and plug into layer
pFSymbol.Color = pFColor;
ISymbol pSmbol1 = pFSymbol as ISymbol;
pClassRen.set_Symbol(0, pSmbol1);
pFSymbol.Color = pTColor;
ISymbol pSmbol2 = pFSymbol as ISymbol;
pClassRen.set_Symbol(1, pSmbol2);
pRasRen.Update();
pRasterLayer.Renderer = pClassRen as IRasterRenderer;
}
分享到:
相关推荐
DEM:数字高程模型(Digital Elevation Model),简称DEM,是通过有限的地形高程数据实现对地面地形的数字化模拟(即地形表面形态的数字化表达),它是用一组有序数值阵列形式表示地面高程的一种实体地面模型,是数字...
遍历指定路径下的栅格文件,利用ArcEngine二次开发,快速获取栅格块的最大最小高程值。适用于DEM img
区别二:环境变量设置只保留了输出栅格大小,范围设置需要的话可以仿照栅格大小设置进行添加,eg: gp.SetEnvironmentValue("extent", path); 区别三:添加了部分功能的摘要,可减少查询功能效果的时间等。
挨个读取栅格数据中每一个像素点的数值,并且可以根据需要输出成其它格式数据。
可以将ArcGis的Geodatabase栅格数据转换为DEM格式,该程序不能直接使用,需要的话可以看看里面的代码,对要转换的数据路径稍微改动,替换为自己的数据路径即可使用。
使用见说明。打开矢量图,可将其转化为栅格图,并保存。可放缩、漫游。
c#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEMc#实现DEM
c#提取数据栅格中的数据c#提取数据栅格中的数据c#提取数据栅格中的数据c#提取数据栅格中的数据
Geoprocessing是ArcGIS提供的一个非常实用的工具,借由Geoprocessing工具可以方便的调用ArcToolBox中提供的各类工具。实现了 c# AE tin生成栅格dem文件;复制shp文件;Gp工具实例。
理解栅格数据四方向加粗的原理,利用Visual Studio开发平台进行栅格数据四方向加粗的模拟。建立一系列小正方形,模拟栅格数据,然后逐次加粗。
在Visual Studio平台上利用C#+ArcEngine对栅格数据进行常用操作
基于ArcEngion技术和C#语言编写的一个栅格计算器,可进行栅格数据的加减乘除,布尔运算,交集并集等一系列操作。
C# +AE加载shp、栅格、地图文档数据的代码
arcgis 批量DEM文本转成栅格脚本
这个实例可以帮助地图输出时做更好的输出界面
C#+ArcEngine:shp矢量点转栅格(VS2010窗体+代码)。
基于C++实现三维点云转换为二维栅格地图源码(课程设计).zip基于C++实现三维点云转换为二维栅格地图源码(课程设计).zip基于C++实现三维点云转换为二维栅格地图源码(课程设计).zip基于C++实现三维点云转换为二维栅格...
室内地图的栅格化程序,用matlab完成。可以地图矩阵用0/1显示
数据源为30m分辨率,经过本人使用ArcGIS进行镶嵌拼接、重采样等操作制作完成,当前数据分辨率为1km,为全国范围内的DEM数据,数据完整正确; 坐标系为WGS-84坐标系; 数据格式为TIFF格式,可直接在ArcGIS中打开使用...
栅格地图