欢迎您来到GIS动力

加入收藏 免费注册 用户登陆 帮助中心
首页 新闻动态 技术专栏 银杏树下 学习考研 软件下载 求职招聘 许愿瓶 节日祝福 用户中心 精彩推荐 资源搜索 地图
专栏导航: AO开发 | SO开发 | ArcGIS桌面 | 超图桌面 | 开发语言 | 数据库 | WebGIS | 银杏文学 | 研究生考题 | FreeMap 谈天说地
   您现在位于: 首页技术专栏ArcGIS应用与开发AO开发 → 正文
关于Raster的理解
08-02-22 12:31:15 作者:3s4d 出处:http://www.gissky.net/blog/user1/yumao/15896.html
raster 是在重投影、重采样后内存中存在的短暂的数据表达。对raster的修改并不能够影响现有的数据源。虽然是存储在内存中,但是我们可以通过方法来永久保存这个raster对象。
如我们可以使用:ISaveAs 接口 或者 IRasterBandCollection  接口 来进行保存 raster对象;

创建raster对象的方法:
1,从现有的RasterLayer 中派生出raster对象IRasterLayer::Raster;
2,从rasterdataset对象中创建raster对象;
   IRasterDataset::CreateDefaultRaster 方法;--本方法是创建默认的raster,最多具有3个rasterdataset
   中的波段band。
   IRasterDataset2::CreateRaster 方法;--本方法是创建空raster对象的方法,所创建的raster属性都是空值0。
   IRasterDataset2::CreateFullRaster方法;--本方法创建的raster对象,会包含所有的波段band。

当创建完空的raster对象后,就需要对raster对象设置长、宽 extent 等属性,使用IRasterProps(设置)接口;
使用获取Raster对象的raster属性信息 使用IRasterDefaultProps(只读)接口来查看;
使用IRasterAnalysisProps接口来设置raster分析时的属性;

名词解释:
PixelBlock :字面上理解为“像素块”。顾名思义PixelBlock 是多个像素点组成的块,它的大小可以是整个raster, 当然也可以是raster中的某一个区域(要随定义块的大小而定行数、列数而确定);利用这个PixelBlock 我们可以读取PixelBlock上的所有像素点值(通过SafeArray来获取)。我们也可以理解使用PixelBlock可以从原有的raster或rasterband中截取一个区域,组成新的raster或者rasterband。
Planes :    可以把它理解为是波段。如一个raster有3个波段,那么Planes的数量就是3;
SafeArray:  返回某一波段中pixelBlock的所有像素数组;
GetVal:   而GetVal是可以返回特点波段上,特定行、列上的数值;


(本文已被浏览 次)
发布人:admin
推荐给好友:发送给好友
上篇新闻:
下篇新闻:
相关评论
发表我的评论
  • 尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
  • 本站有权保留或删除您发表的任何评论内容;
  •   相关文章  
    浅入浅出Oracle Spatial GeoRaster 10g影像数据管理(3
    浅入浅出Oracle Spatial GeoRaster 10g影像数据管理(2
    浅入浅出Oracle Spatial GeoRaster 10g影像数据管理(1
    利用ArcSDE C API读取ArcSDE Raster数据1

    关于我们 友情链接 ┋ 与我在线 ┋ 管理 ┋ TOP
    网站当前版本:GisPower CMS V3.0
    『GIS 动力』- http://www.gispower.org/
    联系我们:webmaster#gispower.org
    Copyright (c) 2003-2007 GisPOwer.Org. All Rights Reserved.

                   滇ICP备05006901号