欢迎来到天天文库
浏览记录
ID:9295431
大小:56.50 KB
页数:5页
时间:2018-04-27
《arcengine栅格影像开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1栅格数据处理常用到的接口:IRasterIRatserLayerIRasterDatasetIInterpolationOpIGeoDatasetIPixelBlock2IPntIRawPixels(read)IRaster(read)2.加载栅格数据(1)直接用IRasterLayer接口打开一个栅格文件并加载到地图控件IRasterLayerrasterLayer=newRasterLayerClass();rasterLayer.CreateFromFilePath(fileName);//fileName指存本地的栅格文件路径axMapControl1.Ad
2、dLayer(rasterLayer,0);(2)用IRasterDataset接口打开一个栅格数据集IWorkspaceFactoryworkspaceFactory=newRasterWorkspaceFactory();IWorkspaceworkspace;workspace=workspaceFactory.OpenFromFile(inPath,0);//inPath栅格数据存储路径if(workspace==null){Console.WriteLine("Couldnotopentheworkspace.");return;}IRasterWorksp
3、acerastWork=(IRasterWorkspace)workspace;IRasterDatasetrastDataset;rastDataset=rastWork.OpenRasterDataset(inName);//inName栅格文件名3.读取栅格数据的属性和遍历栅格数据IRasterPropsrasterProps=(IRasterProps)clipRaster;intdHeight=rasterProps.Height;//当前栅格数据集的行数intdWidth=rasterProps.Width;//当前栅格数据集的列数doubledX=ras
4、terProps.MeanCellSize().X;//栅格的宽度doubledY=rasterProps.MeanCellSize().Y;//栅格的高度IEnvelopeextent=rasterProps.Extent;//当前栅格数据集的范围rstPixelTypepixelType=rasterProps.PixelType;//当前栅格像素类型IPntpntSize=newPntClass();pntSize.SetCoords(dX,dY);IPixelBlockpixelBlock=clipRaster.CreatePixelBlock(pntSize
5、);IPntpnt=newPntClass();for(inti=0;i6、iCarto),IExtractionOp,IExtractionOp2(esriSpatialAnalyst),IRasterLayerExport接口提供的栅格数据提取功能有限,只能以矩形范围作为提取范围,而IExtractionOp接口提供了多边形,圆,属性,矩形等几种形式作为提取栅格数据.(1).IRasterLayerExport接口IRasterLayerExportrLayerExport=newRasterLayerExportClass();rLayerExport.RasterLayer=rasterLayer;//rasterLayer指当前加载7、的栅格图层rLayerExport.Extent=clipExtent;//clipExtent指提取栅格数据的范围if(proSpatialRef!=null)rLayerExport.SpatialReference=proSpatialRef;//proSpatialRef当前栅格数据的投影信息IWorkspaceFactorypWF=newRasterWorkspaceFactoryClass();IWorkspacepRasterWorkspace=pWF.OpenFromFile(_folder,0);//_folder指栅格文件保存路径
6、iCarto),IExtractionOp,IExtractionOp2(esriSpatialAnalyst),IRasterLayerExport接口提供的栅格数据提取功能有限,只能以矩形范围作为提取范围,而IExtractionOp接口提供了多边形,圆,属性,矩形等几种形式作为提取栅格数据.(1).IRasterLayerExport接口IRasterLayerExportrLayerExport=newRasterLayerExportClass();rLayerExport.RasterLayer=rasterLayer;//rasterLayer指当前加载
7、的栅格图层rLayerExport.Extent=clipExtent;//clipExtent指提取栅格数据的范围if(proSpatialRef!=null)rLayerExport.SpatialReference=proSpatialRef;//proSpatialRef当前栅格数据的投影信息IWorkspaceFactorypWF=newRasterWorkspaceFactoryClass();IWorkspacepRasterWorkspace=pWF.OpenFromFile(_folder,0);//_folder指栅格文件保存路径
此文档下载收益归作者所有