zoukankan      html  css  js  c++  java
  • 用shapefile切割rasterdataset

    Sub ExtractionOfRaster()

    Dim app As IApplication
    Set app = Application

    Dim pMxDocument As IMxDocument
    Set pMxDocument = Application.Document

    Dim pMap As IMap
    Set pMap = pMxDocument.FocusMap

    Dim pFeatureLayer As IFeatureLayer
    Set pFeatureLayer = pMap.Layer(0)

    Dim pRasterLayer As IRasterLayer
    Set pRasterLayer = pMap.Layer(1)

    Dim pFeatureClass As IFeatureClass
    Set pFeatureClass = pFeatureLayer.FeatureClass

    Dim pPolygon As IPolygon
    Set pPolygon = pFeatureClass.GetFeature(0).Shape

    Dim pExtractionOp As IExtractionOp
    Set pExtractionOp = New RasterExtractionOp

    Dim pInputDataset As IGeoDataset
    Set pInputDataset = pRasterLayer.Raster


    Dim pOutputDataset As IGeoDataset
    Set pOutputDataset = pExtractionOp.Polygon(pInputDataset, pPolygon, False) 'false表示保留shapefile以外的部分,ture表示保留shapefile以内的部分

     Dim pWS As IWorkspace
     Dim pWSF As IWorkspaceFactory
     Set pWSF = New RasterWorkspaceFactory
     Set pWS = pWSF.OpenFromFile("c:\temp", 0) '结果数据的输出目录
     Dim pRWS As IRasterWorkspace2 ' 用来create rasterdataset
     Set pRWS = pWS
     

    Dim pSaveAs As ISaveAs
    Set pSaveAs = pOutputDataset

    Dim outdataset As IDataset
    Set outdataset = pSaveAs.SaveAs("new2.tif", pRWS, "TIFF")

    MsgBox "GOOD!"
    End Sub

  • 相关阅读:
    Android和C#实时视频传输Demo
    cocos2d-x3.0 windows 环境配置
    WPF六个控制概述
    高度并行的指令级的超级处理器
    Oracle存储过程的简单示例
    SharePoint Search之(两)持续抓取Continues crawl
    第28周三
    第28周二
    第28周一
    第27周日
  • 原文地址:https://www.cnblogs.com/zhangjun1130/p/1746372.html
Copyright © 2011-2022 走看看