参考:ENVI API

参考:ENVI Classic Display

序号 类名称  

功能说明

  语法 & 举例
01 ENVI 函数  

====<<<< Description >>>>====

启动 ENVI 程序并返回此程序的对象引用。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

Result = ENVI([, Keywords=value] [, Properties=value])
----------------------------------------------------------------------------------

====<<<< Return Value >>>>====

ENVI 程序的对象引用。
----------------------------------------------------------------------------------

====<<<<  Methods >>>>====

AddCustomReader
AddExtension
Close
CreateView
GetBroadcastChannel
GetTemporaryFilename
GetView
HideExtensionFiles
LogMessage
OpenPointCloud
OpenRaster
OpenROI
OpenVector
QueryPointCloud
Refresh
ReportError
RestoreSession
SaveSession
Show

   
 02  ENVI 过程  

====<<<< Description >>>>====

使用这个过程来恢复基本的环境保存文件(.sav)。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI, /RESTORE_BASE_SAVE_FILES
----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  RESTORE_BASE_SAVE_FILES:使用这个关键字来恢复基本的环境保存文件(.sav)批处理模式。

 

ENVI, /RESTORE_BASE_SAVE_FILES
ENVI_BATCH_INIT
ENVI_REPORT_INIT, ['line1', 'line2', 'line3'], $
title='Title', base = base, /interrupt
ENVI_REPORT_INC, base, 100
ENVI_REPORT_STAT, base, 50, 100, CANCEL=cancel

效果如下所示:

添加 Cancel 按钮判断:

ENVI, /RESTORE_BASE_SAVE_FILES
ENVI_BATCH_INIT
ENVI_REPORT_INIT, ['line1', 'line2', 'line3'], $
title='Title', base = base, /interrupt
ENVI_REPORT_INC, base, 100 FOR i = 0, 100-1 DO BEGIN
ENVI_REPORT_STAT, base, i+1, 100, CANCEL=cancelvar
;用来判断是否点击了 Cancel 按钮
IF cancelvar EQ 1 THEN BEGIN
tmp = DIALOG_MESSAGE('是否停止处理?', /cancel)
;用来判断点击了“确定”还是“取消”
IF tmp eq 'OK' THEN BEGIN
ENVI_REPORT_INIT, base = base, /finish
BREAK
ENDIF
ENDIF
WAIT,0.1
ENDFOR ENVI_REPORT_INIT, base = base, /finish
ENVI_BATCH_EXIT

点击 Cancel 按钮效果如下所示:

参考:【转】进度条终止判断(IDL+ENVI)

03 ENVI_BATCH_INIT  

====<<<< Description >>>>====

这个过程已经被 ENVI 函数替换,代码如下:
e = ENVI(/HEADLESS)
代替如下代码:
ENVI, /RESTORE_BASE_SAVE_FILES
ENVI_BATCH_INIT, /NO_STATUS_WINDOW。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI_BATCH_INIT [, BATCH_LUN=variable] [, LOG_FILE=string] [, /NO_STATUS_WINDOW]
----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  NO_STATUS_WINDOW:使用这个关键字不显示经典状态窗体。

 
 04 ENVI_REPORT_INIT  

====<<<< Description >>>>====

这个过程显示一个典型的进度条。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI_REPORT_INIT, Rstr, BASE=variable, /FINISH, /INTERRUPT, TITLE=string

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Rstr:显示在状态窗体上的一组字符串,每一个元素显示一行。
◈  BASE:设置此关键字用于显示状态窗体。
◈  FINISH:设置此关键字,当处理结束后移除状态窗体。必须是相同的 Base 值。
◈  INTERRUPT:设置此关键字允许使用 Cancel 中断处理。
◈  TITLE:显示在状态窗体的标题栏上。

 
 05 ENVI_REPORT_INC  

====<<<< Description >>>>====

用于增量处理。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI_REPORT_INC, Base, Num_tiles

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Base:状态窗体的 ID 值。
◈  Num_tiles:处理循环的总数。

 
 06 ENVI_REPORT_STAT  

====<<<< Description >>>>====

更新百分比。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI_REPORT_STAT, Base, Num, Den, CANCEL=variable
----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  Base:状态窗体的 ID 值。
◈  Num:处理的数值,百分比取决于此值与总数的比值。
◈  Den:总数。
◈  CANCEL:用此关键字获取 cancel 按钮的返回值。 此关键字仅当设置了 ENVI_REPORT_INIT 的 INTERRUPT 关键字才管用。如果返回值为 1 表示按钮被按了,否则返回值为 0.

 
 07 ENVI_BATCH_EXIT  

====<<<< Description >>>>====

此过程已经被 ENVI 函数的 Close 方法所代替。

使用此过程用来终止 ENVI。
----------------------------------------------------------------------------------

====<<<< Syntax >>>>====

ENVI_BATCH_EXIT [, /EXIT_IDL] [, /NO_CONFIRM

----------------------------------------------------------------------------------

====<<<< Parameters >>>>====

◈  EXIT_IDL:设置此关键字将会强制退出 IDL。
◈  NO_CONFIRM:不显示窗体退出的确认按钮。

 
           

【300】◀▶ IDL - ENVI API的更多相关文章

  1. 【译】Android NDK API 规范

    [译]Android NDK API 规范 译者按: 修改R代码遇到Lint tool的报错,搜到了这篇文档,aosp仓库地址:Android NDK API Guidelines. 975a589 ...

  2. 【167】IDL 中相关技巧

    IDL 中相关技巧 1. 注释:分号“;”表示注释内容的开始. 2. 续行:最后一个字符是“$”,那么本行将紧接着下一行,续行标志.(换行符,$+回车) 3. 中文编码:窗口>首选项>常规 ...

  3. 【算法】实现字典API:有序数组和无序链表

    参考资料 <算法(java)>                           — — Robert Sedgewick, Kevin Wayne <数据结构>       ...

  4. 【221】◀▶ IDL GUI 函数说明

    参考:GUI - Dialogs Routines参考:GUI - Widgets Routines参考:GUI - Compound Widgets Routines 01   DIALOG_MES ...

  5. 【180】IDL 读写 HDF 文件

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

  6. 【179】IDL 读写 NetCDF 文件

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

  7. 【170】◀▶ IDL 学习初体验-全

    IDL Reference 操作符号 数组 字符及字符串 结构体 指针 链表 & 哈希表 程序控制(循环.条件.跳转语句) 过程 & 函数 输入与输出 系统变量 文件系统操作 直接图形 ...

  8. 【NFC】Android NFC API Reference中英文

    0 Near Field Communication Near Field Communication (NFC) is a set of   short-range wireless technol ...

  9. 【转载】常用精品API接口汇总

    原文链接戳这里~~ 下面列举了100多个国内常用API接口,并按照 笔记.出行.词典.电商.地图.电影.即时通讯.开发者网站.快递查询.旅游.社交.视频.天气.团队协作.图片与图像处理.外卖.消息推送 ...

随机推荐

  1. BZOJ3566 SHOI2014 概率充电器 【概率DP】

    BZOJ3566 SHOI2014 概率充电器 Description 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品——概率充电器: “采用全新纳米级加工技术,实现元件与导线能 ...

  2. ubutun Sogou输入法安装

    http://jingyan.baidu.com/article/ad310e80ae6d971849f49ed3.html 文章来自以上链接 安装搜狗输入法 下载搜狗http://pinyin.so ...

  3. mysql设置合适的索引长度

    理想的索引: 相对于写操作来说,表查询很频繁的表建立索引 字段区分度高 长度小(合适的长度,不是越小越好) 尽量能够覆盖常用字段 这些条件综合起来才能够达到最优索引,本次我们着重聊一下建立合适长度的索 ...

  4. CArray,CList,CMap如何实例化

    1.定义一个CMap,向这个CMap中增加数据项(键-值对).CMap<CString, LPCTSTR, CString, LPCTSTR>m_ItemMap;CString strKe ...

  5. Jquery each循环中中断

    在each代码块内不能使用break和continue,要实现break和continue的功能的话,要使用其它的方式 break----用return false; continue --用retu ...

  6. (转)Inno Setup入门(五)——添加readme文件

    本文转载自:http://blog.csdn.net/yushanddddfenghailin/article/details/17250771 这个实现起来很简单,就是在[files]段中的某个预先 ...

  7. STS - 配置Tomcat 运行路径

    背景 今天在一台新机器上面安装开发环境,下载完code以后在STS上配置Tomcat,发现启动以后无法读取到配置文件...启动失败! 七月 , :: 上午 org.apache.catalina.co ...

  8. 【洛谷】P1388 算式(dp)

    题目描述 给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大.因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号.例如: N ...

  9. Java int Integer

    http://www.cnblogs.com/haimingwey/archive/2012/04/16/2451813.html http://developer.51cto.com/art/200 ...

  10. 转:Ubuntu下下载工具安装--uget+aria2

    原文地址:http://burner1024.blog.163.com/blog/static/17447800420126191858424/ Windows下的下载工具--迅雷,之所以下载速度快, ...