22.ENVI功能扩展与二次开发

  • 格式:pdf
  • 大小:1.49 MB
  • 文档页数:18

网址:
技术支持邮箱: ENVI-IDL@
电话: 010-57632288
技术支持热线: 400-819-2881-7
遥感事业部
1. 概述
ENVI 是使用 IDL 语言编写的完整的遥感图像处理平台。在 ENVI 中,用户可以很方便的通过 IDL 语言以及 ENVI 提供的二次开发工具对 ENVI 的功能进行扩展,添加新的功能函数,甚至开发 独立 ENVI 界面的全新系统。可以大致分为两类,分别为 ENVI 功能扩展与 ENVI 二次开发。 一、 ENVI 功能扩展
网址:
技术支持邮箱: ENVI-IDL@
电话: 010-57632288
技术支持热线: 400-819-2881-7
遥感事业部
2. ENVI Classic 开发技术
2.1 ENVI Classic 菜单介绍
ENVI Classic 的菜单系统,包括主菜单和显示窗口菜单,是由 ENVI 安装目录下 menu 目录下 的 envi.men 和 display.men 这两个 ASCII 码文件定义的。Windows 系统上 menu 的路径如下: ENVI 4.x:Home:\Program Files\ITT\IDL\IDLXX\products\enviXX\menu ENVI Classic:Home:\Program Files\Exelis\ENVIXX\classic\menu
每一行开始的数据定义了菜单项的层次。0 表示最顶层,1 表示一级子菜单,2 表示二级子 菜单,如此类推。 {Open Image File}:第一个大括号括起来的部分定义了显示在菜单上的内容。 {open envi file}:第二个大括号括起来的部分定义了为菜单项所赋给的用户值。用户值 在同一用户函数处理多个菜单项时非常有用,可以区别那个菜单项被选中。 {envi_menu_event}:第三个大括号定义了菜单项事件处理程序的名称,即编写的用户 函数名。该处使用的是用户函数名,而不是用户函数所在的文件名,所以没有后缀。 二、 修为 Envi_file_info,event, 那么只需添加个功能过程 PRO Envi_file_info_define_buttons, buttonInfo,然后菜单的添加工作就可以在这个过程下完成了。 ENVI_DEFINE_MENU_BUTTON 的调用格式如下: ENVI_DEFINE_MENU_BUTTON, ButtonInfo [, /DISPLAY], $ EVENT_PRO=string | /MENU | UVALUE=string [, POSITION=long integer or string] [, REF_INDEX=long integer] [, REF_UVALUE=variable], REF_VALUE=string [, SEPARATOR={0 | 1 | -1}] [, /SIBLING], VALUE=string 其中: Display-是创建在主菜单还是显示菜单; VALUE -菜单的显示信息 -必须的; UVALUE -必须的; EVENT_PRO-程序事件名称; Menu- 是否为菜单; REF_INDEX-如 REF_VALUE 不唯一则可用此来设置; REF_VALUE -作为 parent 的已存在菜单名; SIBLING -是否创建同级菜单;
注:上边的 XX 代表版本 ENVI 或 IDL 的版本号 一、 envi.men 文件结构
该文件定义了 ENVI 主菜单中的选项, display.men 文件定义了显示窗口菜单中的选项。 每次 ENVI 启动的时候,这两个文件被读入并根据其内容构建 ENVI 的菜单。在菜单中添加内容,只 需在这两个文件中添加相应的内容并重启 ENVI 即可。 使用任何文本编辑器就可以打开 envi.men 文件。在文件的顶部有些介绍的注释文本。注释 结束后,就是如下的文件的结构:
0 {File} 1 {Open Image File} {open envi file} {envi_menu_event} 1 {Open Vector File} {open vector file} {envi_menu_event} 1 {Open Remote File} {open remote file} {envi_menu_event} 1 {Open External File} {separator} 2 {Landsat} 3 {Fast} {open eosat tm} {envi_menu_event}
遥感事业部
ENVI 功能扩展与二次开发
版权声明:本教程涉及到的数据仅供练习使用,禁止用于商业用途。
目录
ENVI 功能扩展与二次开发 ............................................................................................................. 1 1. 2. 概述..................................................................................................................................... 2 ENVI Classic 开发技术 ........................................................................................................ 3 2.1 2.2 ENVI Classic 菜单介绍 ................................................................................................. 3 ENVI Classic 组件介绍 ................................................................................................. 4 2.2.1 组件介绍............................................................................................................... 4 2.2.2 事件管理............................................................................................................... 6 2.3 2.4 ENVI Classic 功能扩展实例 ......................................................................................... 6 ENVI Classic 二次开发 ................................................................................................. 7 2.4.1 启动二次开发模式............................................................................................... 7 2.4.2 常用关键字介绍................................................................................................... 8 2.4.3 常用函数介绍....................................................................................................... 9 2.4.4 二次开发实例..................................................................................................... 10 3. ENVI 5.x 开发技术 ............................................................................................................ 11 3.1 3.2 3.3 3.4 3.5 3.6 启动 ENVI 5 ................................................................................................................ 11 ENVI 5 程序控制 ....................................................................................................... 11 ENVI 5 数据控制 ....................................................................................................... 13 ENVI 5 显示控制 ....................................................................................................... 14 ENVI 5 图像处理 ....................................................................................................... 14 ENVI 5 扩展工具 ....................................................................................................... 17