zoukankan      html  css  js  c++  java
  • ArcGIS Engine开发之旅07---文件地理数据库、个人地理数据库和 ArcSDE 地理数据库中的栅格存储加以比较 、打开栅格数据

    对文件地理数据库、个人地理数据库和 ArcSDE 地理数据库中的栅格存储加以比较 

    1.打开栅格数据 

    要打开一个栅格数据,这个有点类似我们打开 FeatureClass 一样,先要获取工作空间,只不过我们过于要素类的时候需要 IFeatureWorkspace,而栅格数据则需要 IRasterWorkspace,示例如下:

     IRasterWorkspace GetRasterWorkspace(string pWsName) 
            {              
                try 
                { 
                    IWorkspaceFactory pWorkFact = new RasterWorkspaceFactoryClass(); 
                    return pWorkFact.OpenFromFile(pWsName, 0) as IRasterWorkspace;             
                } 
                catch (Exception ex) 
                { 
                    return null; 
                } 
            }   
             IRasterDataset OpenFileRasterDataset(string pFolderName, string pFileName)         
            { 
                 
                IRasterWorkspace pRasterWorkspace = GetRasterWorkspace(pFolderName);  
                IRasterDataset pRasterDataset = pRasterWorkspace.OpenRasterDataset(pFileName);            
                return pRasterDataset; 
            } 

    注意当访问的栅格数据是存在SDE中,文件数据库中或者个人数据库中,应该使用IRasterWorkspaceEx接口
    IRasterWorkspace 与 IRasterWorkspaceEx 的区别
    1) IRasterWorkspace 主要是用来读取以文件格式存储在本地的栅格数据
    2) IRasteWorkspaceEx 接口主要是用来读取 GeoDatabase 中的栅格数据集和栅格目录,如下示例:

     IRasterDataset OpenGDBRasterDataset(IRasterWorkspaceEx pRasterWorkspaceEx, string pDatasetName) 
            { 
                //打开存放在数据库中的栅格数据 
                return pRasterWorkspaceEx.OpenRasterDataset(pDatasetName); 
            }
  • 相关阅读:
    dljd_(004_005)_jdbc编程步骤
    dljd_003_jdbc编程_概述
    dljd_002_通过接口降低代码的耦合度(2)
    dljd_001_通过接口降低代码的耦合度(1)
    dljd_(002-003)_什么是持久化
    dljd_001_由hibernate名称引出的相关知识
    001_学习26个英文字母
    06_dljd_mysql数据库常用操作
    05_dljd_mysql数据库表的介绍
    【数据结构】树状数组(简单名次树)
  • 原文地址:https://www.cnblogs.com/CSharpLover/p/5733503.html
Copyright © 2011-2022 走看看