ArcEngine保存栅格数据至rastercatalog

时间:2022-08-31 13:32:18

  将栅格数据(IRasterDataset)直接保存到数据库中很常见,但是保存到栅格目录下就比较少见,好不容易才找到,在这里记录一下。

  

         public void saveRasterDs2Catalog(IRasterDataset rasterDs, IRasterCatalog rasterCatalog)
{
//保存前先设置rasterCatalog的坐标系,不然保存的栅格数据坐标系为空
IRasterProps rProps = rasterDs.CreateDefaultRaster() as IRasterProps;
rasterCatalog.AlterRasterSpatialReference(rProps.SpatialReference); IFeatureClass featureclass = rasterCatalog as IFeatureClass;
IFeature feature = featureclass.CreateFeature(); IRasterValue rValue = new RasterValueClass();
rValue.RasterDataset = rasterDs;
feature.set_Value(rasterCatalog.RasterFieldIndex, rValue);
//如果栅格目录里还有其他属性,也可以在这里设置
feature.Store();
} /// <summary>
/// 把一个文件夹里的栅格数据都保存到rastercatalog中
/// </summary>
/// <param name="propertySet">数据库的连接属性</param>
/// <param name="catalogName">rastercatalog的名称</param>
/// <param name="rasterFolder">包含有栅格数据的文件夹</param>
public void loadDir2Catalog(IPropertySet propertySet,String catalogName,String rasterFolder)
{
//IWorkspaceFactory wkspFactory = new SdeWorkspaceFactoryClass();
//IWorkspace wksp = wkspFactory.Open(propertySet, 0);
//IRasterWorkspaceEx rasterWkspEx = wksp as IRasterWorkspaceEx;
//IRasterCatalog rasterCatalog = rasterWkspEx.OpenRasterCatalog(catalogName); ITrackCancel pTrackCancel = new TrackCancel();
IRasterCatalogLoader rCatalogLoader = new RasterCatalogLoaderClass();
rCatalogLoader.ConnectionProperties = propertySet;
rCatalogLoader.Load(catalogName, rasterFolder, pTrackCancel);
}

ArcEngine保存栅格数据至rastercatalog的更多相关文章

  1. ArcEngine做栅格数据拉伸

    //获得已打开的栅格数据 IRasterLayer rasterLayer = new RasterLayerClass(); rasterLayer = (IRasterLayer)axMapCon ...

  2. C&num;&plus;arcengine获得栅格数据的像素值(高程)

    此文问获得栅格数据的像元值(即高程),有可能部分见解不到位,望大神看到了不惜指教! /// <summary> ///  得到高程(通过像素值)         /// </summ ...

  3. AE 栅格数据使用总结

    RasterBand)的数据组成,一个波段就是一个数据矩阵.对于格网数据(DEM数据)和单波段的影像数据,表现为仅仅只有一个波段数据的栅格数据集,而对于多光谱影像数据则表现为具有多个波段的栅格数据集. ...

  4. ArcGIS Engine栅格数据使用总结

    jojojojo2002 原文 ArcGIS Engine栅格数据使用总结 简介:ArcGIS Engine栅格数据使用总结,一个栅格数据集由一个或者多个波段(RasterBand)的数据组成,一个波 ...

  5. 栅格数据AE

    转自原文 栅格数据AE 两个星期以来一直与栅格数据打交道,对AO的栅格部分应该有了一定的理解,下面是自己的一点体会,希望高手指教:-) 1.栅格数据的存储类型 栅格数据一般可以存储为ESRI GRID ...

  6. ArcEngine 栅格数据

    1.ArcEngine中的栅格数据组织方式(详细信息见:http://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/009t0000 ...

  7. ArcEngine编辑保存错误:Unable to create logfile system tables

    通过ArcEngine对多个SDE中多个图层进行批量编辑处理,其中有部分图层在结束编辑的时候出现错误提示(部分图层可以,只有两个数据较多的图层保存失败). 错误信息:Unable to create ...

  8. ArcEngine和GDAL读写栅格数据机制对比(一)

    最近应用AE开发插值和栅格转等值线的程序,涉及到栅格读写的有关内容.联想到ArcGIS利用了GDAL的某些东西,从AE的OMD中也发现RasterDataset和RasterBand这些命名和GDAL ...

  9. ArcEngine和GDAL读写栅格数据机制对比(二)—— IPixelBlock读写栅格

    以下是设定一个矩形框,用IPixelBlock将256*256瓦片tile拼接成一个整块影像的代码,row1, col1, row2, col2是一个矩形框行列号范围.level是瓦片的金字塔等级.这 ...

随机推荐

  1. c&plus;&plus;实现矩阵类矩阵行列式,伴随矩阵,逆矩阵

    //Matrix ver1.0 //只支持矩阵内部(方阵)的运算 #include<iostream> #include<math.h> using namespace std ...

  2. 复杂对象的本地化(以Person为例)

    Person.h #import <Foundation/Foundation.h> @interface Person : NSObject <NSCoding> /// 姓 ...

  3. C&num;远程共享文件路径访问

    public class Win32ServiceManager    {        private string strPath;        private ManagementClass ...

  4. 30种oracle常见的等待事件说明

    1Buffer busy waits从本质上讲,这个等待事件的产生仅说明了一个会话在等待一个Buffer(数据块),但是导致这个现象的原因却有很多种.常见的两种是: 当一个会话视图修改一个数据块,但这 ...

  5. java过滤器&lpar;简化认证&rpar;

    最近在看过滤器,刚刚实现了过滤器的简化认证功能: 使用过滤器简化认证: 在Web应用程序中,过滤器的一个关键用例是保护应用程序不被未授权的用户访问.为跨国部件公司开发的客户支持应用程序使用了一种非常原 ...

  6. Oracle imp exp 导入导出 执行脚本

    一:用命令 imp/exp 的方式进行数据的导入和导出 一:文件后缀名: 二:oracle  导出 exp 命令 echo 开始备份数据库 if not exist D:\oracle_bak\fil ...

  7. MongoDB&comma;pymongo

    MongoDB: 数据库,nosql [{ id:1 name:"蔡文姬" age: 16 gender:"女" }, { id:1 name:"蔡文 ...

  8. Qt性能问题

    使用Qt库开发通信上位机软件,如串口.CAN总线等,涉及到接收界面高速刷新,会使CPU消耗率过高(20%以上),可能还会卡顿. 具体原因不知道,突然想放弃Qt了 ps: 1.问题出在界面刷新,会占据C ...

  9. C&num;中三个关键字params&comma;Ref&comma;out

    关于这三个关键字之前可以研究一下原本的一些操作 using System; using System.Collections.Generic; using System.Text; namespace ...

  10. P2085 最小函数值 洛谷

    https://www.luogu.org/problem/show?pid=2085 题目描述 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Ai*x^2+Bi*x+Ci (x∈N*) ...