arcEngine开发之加载栅格数据
2018-03-02 23:52
316 查看
加载数据思路
在Engine中加载各种各样的数据都是通过这样的格式IWorkspaceFactory pWorkspace = new IWorkspaceFactory(); IWorkspace pWorkspace = pWorkspace.OpenFromFile(string path, int hWnd); pWorkspace as ... //转换成相应的工作空间 pWorkspace.OpenDataset() //打开数据
一般的数据通过这样的方式都是可以打开的,但是,打开栅格数据时还需要(不是必须)这些代码来加快加载效率
IRasterPyrmid pRasPyrmid; pRasPyrmid = pRasterDataset as IRasterPyramid3; if(pRasPyrmid != null) { if(!(pRasPyrmid.Present)) { pRasPyrmid.Create(); //创建金字塔 } } IRaster pRaster; pRaster = pRasterDataset.CreateDefaultRaster(); IRasterLayer pRasterLayer; pRasterLayer = new RasterLayerClass(); pRasterLayer.CreateFromRaster(pRaster); ILayer pLayer = pRasterLayer as ILayer; axMapControl.AddLayer(pLayer,0);
这里的RasPyrmid是一个金字塔对象,金字塔可用于改善性能。它们是原始栅格数据集的缩减采样版本,可包含多个缩减采样图层。下图是栅格数据集创建的两级金字塔示例:
金字塔通过仅检索使用指定分辨率的数据,可以加快栅格数据的显示速度。例如进行放大操作时,由于已经建立了金字塔,可以高效率的将需要展示的数据显示出来。没有创建金字塔,则必须从磁盘中读取整个数据集,然后将其重采样为更小的大小。
创建金字塔会浪费一定的时间,但是,这也意味着后期显示数据时节省了更多的时间。
更多关于金字塔的信息点击这里.
相关文章推荐
- ArcEngine加载SDE中的栅格数据的问题
- C#+ArcEngine:加载打开Shp矢量数据和栅格数据(VS2010窗体+代码)
- C#+ArcEngine加载影像Raster栅格数据,并与ArcGIS一样判断是否创建金字塔。
- ArcEngine加载SDE中的栅格数据的问题
- ArcEngine -- 加载本地离线地图数据
- 基于ArcEngine+C#开发的空间数据管理平台架构设计及功能说明
- Android开发之通过接口回调机制加载数据(源代码分享)
- Knockoutjs实战开发:JSON数据的加载和保存(Loading and Saving JSON data)
- Knockout应用开发指南 第六章:加载或保存JSON数据
- iOS开发 webView加载html数据
- ****Android开发教程:OnScrollListener实现ListView滚屏时不加载数据
- Android官方开发文档Training系列课程中文版:后台加载数据之使用CursorLoader进行查询
- arcengine C# 按行政区范围加载图层数据
- windows phone开发学习--Pivot动态加载数据
- Android 应用开发 之通过AsyncTask与ThreadPool(线程池)两种方式异步加载大量数据的分析与对比
- Qgs开发18-读取栅格数据
- Android - 开发实例(9):使用Loader进行数据加载
- iOS开发 -- 表加载数据时,数据混乱怎么办?!
- Android 应用开发 之通过AsyncTask与ThreadPool(线程池)两种方式异步加载大量数据的分析与对比
- Android官方开发文档Training系列课程中文版:后台加载数据之处理CursorLoader的查询结果