利用ENVI_SUBSET_VIA_ROI_DOIT函数实现矢量文件裁剪栅格数据。

测试数据:栅格文件是Mercator投影,矢量文件是Geographic坐标系

   infile='F:\Temp_Data\FY3_BEIJING_HFII_DAY_200808031211_Mercator.tif'
outfile='F:\Temp_Data\FY3_BEIJING_HFII_DAY_200808031211_Mercator_Sub.dat'
shpfile='F:\Shapefile\beijing.shp' envi_open_file,infile,r_fid=tfid
envi_file_query,tfid,dims=dims,ns=ns,nl=nl,nb=nb
oproj=envi_get_projection(fid=tfid)
iproj=envi_proj_create(/geographic) oshp=obj_new('IDLffShape',shpfile)
oshp->GetProperty,n_Entities=n_ent,attribute_info=attr_info,n_attributes=n_attr,Entity_type=ent_type
roi_ids=lonarr(n_ent)
for i=0,n_ent-1 do begin
entity=oshp->GetEntity(i)
if ptr_valid(entity.parts) ne 0 then begin
tempLon=reform((*entity.vertices)[0,*])
tempLat=reform((*entity.vertices)[1,*])
envi_convert_projection_coordinates, $
tempLon,tempLat,iproj, $
xmap,ymap,oproj
envi_convert_file_coordinates, $
tfid,xf,yf,xmap,ymap
roi_ids[i]=envi_create_roi(ns=ns,nl=nl)
envi_define_roi,roi_ids[i],xpts=xf,ypts=yf,/polygon
endif if i eq 0 then begin
xmin=round(min(xf,max=xmax))
ymin=round(min(yf,max=ymax))
endif else begin
xmin=xmin<round(min(xf))
xmax=xmax>round(max(xf))
ymin=ymin<round(min(yf))
ymax=ymax>round(max(yf))
endelse
oshp->DestroyEntity,entity
endfor
obj_destroy,oshp
xmin=xmin>0
xmax=xmax<ns
ymin=ymin>0
ymax=ymax<nl dims=[-1,xmin,xmax,ymin,ymax]
envi_doit,'envi_subset_via_roi_doit', $
fid=tfid, $
dims=dims, $
ns=ns,nl=nl, $
pos=indgen(nb), $
background=0, $
roi_ids=roi_ids, $
proj=oproj, $
out_name=outfile
envi_file_mng,id=tfid,/remove
envi_file_mng,id=rfid,/remove
envi_delete_rois,/all

结果如下:

                        

IDL实现矢量文件裁剪栅格数据的更多相关文章

  1. 使用QGIS将文本坐标转换为矢量文件

    本文主要是说明如果使用QGIS将文本格式的点坐标转换为矢量文件(如shapefile格式). 所需工具:QGIS 所需数据:文本格式的点文件 所需要处理的点坐标文件如下所示, 114.2 22.15 ...

  2. [转]TrueType(TTF)字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪)

    原文入口: TTF字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪) 对于TrueType(TTF)字体格式的介绍可以看: https://www.cnblogs.com/slysky/p/1131 ...

  3. 时空地图TimeGIS 可编辑ArcGIS的Shape矢量文件的地理信息系统

    时空地图 TimeGIS 6.0 是一个地理信息系统软件,它可以显示网络地图,编辑ArcGIS的SHP矢量文件格式,显示NETCDF等栅格文件,管理图层等. 在它的基础上,可以二次开发各种GIS应用, ...

  4. GDAL读写矢量文件——Python

    在Python中使用OGR时,先要导入OGR库,如果需要对中文的支持,还需要导入GDAL库,具体代码如下.Python创建的shp结果如图1所示. 图1 Python创建矢量结果 #-*- codin ...

  5. 【180】IDL 读写 HDF 文件

    HDF(Hierarchical Data Formats)数据格式由 NCSA 开发.HDF 提供了大量的数据模式,包括多维数组.表格.图像.注解和调色板.在下面的章节中,将描述 HDF 科学数据系 ...

  6. 【179】IDL 读写 NetCDF 文件

    NetCDF(network Common Data Form)由位于科罗拉多州波尔市的 Unidata 程序中心开发,主要应用于大气科学的研究.NetCDF 的数据模式具有简单性和灵活性的特点.Ne ...

  7. OpenCV+Python实现视频文件裁剪功能

    Python编程实现对视频文件进行剪切的功能.截取指定长度的视频并保存,运行后首先选择要裁剪的视频,然后输入开始时间点和停止时间点即可.将剪切后的视频保存为output.avi文件 所属网站分类: 资 ...

  8. 【171】IDL读取HDF文件

    ;+ ;:Description: ; Describe the procedure. ; ; Author: DYQ 2009-7-19; ; ;- PRO TEST_READHDF COMPILE ...

  9. 通过Nginx訪问FastDFS文件系统并进行图片文件裁剪的性能測试和分析

    前段时间公司的分布式图片文件系统(FastDFS)做了图片裁剪和缩放功能,并把缩放计算和FastDFS做了解耦分离,前端用虚拟机作为图片文件缩放的訪问代理层(Nginx Proxy),后端使用ngin ...

随机推荐

  1. 2018.8.8 SpringMVC分层

    分层: 表示层:请求分发,调用处理器,页面展示. 业务层:业务处理接口和实现. 持久层:数据访问和持久化. 各层之间解耦,下层对上层透明. 具体代码分析如下图,图转自https://blog.csdn ...

  2. python画高斯分布图形

    高斯分布,也叫正态分布,是一个在数学.物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响力. 若随机变量X服从一个数学期望为μ.方差为σ^2的正态分布,记为N(μ,σ^2).其概率 ...

  3. 用vs2010打开使用vs2013升级后的WP工程

    项目在win7+vs2010的环境中建立的,后来在win8.1+vs2013的环境下修改和完善: 但是所有功能实现后发现wp7项目在使用vs2013打开后因为单向升级的原因,项目只能被编译为wp8项目 ...

  4. python中logging模块的用法

    很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...

  5. 2019CVTE技术支持软件编程2

    题目:有8位数密码,加密规则如下:第一步取最后一位数:第二部将倒数第二位数放到最前形成一个新数,再取新数最后一位,以此循环取完所有数为止:如98698426,密码为64982689,时间复杂度为O(N ...

  6. Ubuntu 终端使用ss代理

    用polipo软件,这个软件可以吧socket5转换成http代理 $ sudo apt-get install polipo $ sudo vim /etc/polipo/config 在文件中加入 ...

  7. Spring MVC的原理及配置详解

    网址链接:https://www.cnblogs.com/baiduligang/p/4247164.html

  8. 在linxu机器ansible上运行启动django项目命令

    source py3env/bin/activate  进入虚拟环境 cd /xiangmulujing     进入项目路径 然后就可以执行运行命令了 python manage.py runser ...

  9. I.MX 6UL与6ULL应用领域区别

  10. Taro 常用 API

    table th:first-of-type { width: 300px; } Taro 常用 API 说明 网址 Taro.getSystemInfoSync() 获取系统信息同步接口. http ...