文章出處
文章列表
目的:
用IDL將ENVI的功能封裝成為IDL的類,并使用IDL的對象導出功能把這些功能類導出為java類,方便java調用。(本來想直接通過GP工具調用的,但是沒有授權文件)
操作步驟:
1、如何用IDL封裝ENVI,使其能夠被IDL對象導出工具導出
在類的init中初始化ENVI,并使用批處理模式,代碼如下:
CALL_PROCEDURE,'ENVI',/restore_base_save_files
CALL_PROCEDURE,'ENVI_BATCH_INIT',/NO_STATUS_WINDOW
注意:在寫IDL程序時,如果使用ENVI函數或其他外部函數時,請使用CALL_PROCEDURE或CALL_FUNCTION,另外外部函數需要放到ITT\IDL64\lib文件夾下。
2、如何使用導出工具導出IDL對象
IDL可以通過對象導出助手導出成JAVA對象,以下是一個小例子和一些注意事項。
首先,IDL的LICENSE中需要注冊對象導出助手,詳細說明請參看IDL幫助中的Supported Platforms and IDL Modes。
其次,導出JAVA對象請確保機器已經安裝了JAVA JDK 1.5或更高版。
再次,導出JAVA對象請將系統環境變量中的變量Path的最前面加上“JAVA_PATH\ jdk1.6\bin\;”,其中JAVA_PATH是JAVA的安裝目錄,請查看該路徑下是否有javac.exe,沒有請重裝JAVA。設置好了環境變量請重起IDL。
打開IDL,在IDL命令行中輸入IDLEXBR_ASSISTANT啟動對象導出助手,點擊菜單欄File->New Project來選擇導出JAVA對象,在彈出的對話框中選擇寫好的IDL類文件(*__define.pro),選擇例子文件“ITT\IDL64\examples\doc\bridges\ helloworldex__define.pro”,然后點擊菜單欄Build->Build Object來導出文件。
3、如何使用導出IDL對象
使用IDL導出的對象本質上是建立IDL與其他語言的接口,所以需要將你編寫的IDL程序放到Exelis\IDL82\lib目錄下供IDL運行環境調用。另外,如果IDL類的函數名和參數未改變,需要改變IDL程序的內容,則只需要修改lib文件中的IDL文件即可,不需要重新導出。如果需要增加或修改IDL類的函數或參數則對象也需要重新導出。
文章列表
全站熱搜
留言列表