[转]续ENVI Export/Import IDL Variable_Learning ...

来源:百度文库 编辑:神马文学网 时间:2024/04/27 12:17:50
[转]续ENVI Export/Import IDL Variable2010年01月26日 星期二 21:12

   BBS上大家一致赞同“hh太懒了,不能做版主”【http://bbs.esrichina-bj.cn/ESRI/thread-60806-2-2.html】,所以他的博客也好久没更新了。今天下午借讨论机会让他看鸟文帮助去,顺道看看scope_*的用法。果然,晚上就出了一篇新文章,看来如果继续下去那个“懒”的说法有望修改修改啊,文章copy如下:

上一篇写到 ENVI Export/Import Variable的基本用法,

但是很快就发现问题:   ENVI导出的变量,无法进入Pro进行操作. 这就限制了ENVI此功能的用处了.

和DYQ讨论了一下, 都同意是Scope上的问题. 和IDL帮助进行一番斗争后,得到了这个问题的解答:

直接上代码了.注意看注释.哈哈

; 从Envi导出数据到 aaa, 在命令行输入help, SCOPE_LEVEL() 可知,命令行为Scope Level 1
; aaa 在 Scope Level 1
Pro HH_TestENVIScope
help, 'Pro Scope: ', SCOPE_LEVEL() ; 可知Pro的Scope为 Level 2
; aaa进入Pro, 为bbb
bbb = SCOPE_VARFETCH('aaa', level=1) ; 获取Scope Level 1 的变量 aaa, 存到 bbb
help, bbb
; 现在要把bbb输出到Scope Level 1 上去,按以下步骤操作
; bbb 出去Pro : 为ccc,
(Scope_Varfetch('ccc', /enter, level=1)) = bbb
; 退出Pro后,执行 help, ccc 即可看到 Scope Level 1 上已经有ccc这个变量了, 可以直接被ENVI导入

End