什麼是IDL

  1. IDL-Interactive Data Language

  IDL 是一種數據分析和圖像化應用程序及編程語言,先由美國ITT公司所有。最初在七十年代後期用於幫助科學家分析火星探險衛星發回的數據,將浩瀚的數據轉換爲圖形。從此後,IDL 得到廣泛運用,使用者日衆,呈幾何級別增長。
  IDL 使用者可以迅速且方便地運用此軟件將數據轉換爲圖象,促進分析和理解。通過軟件轉化的圖像既可以是簡單色彩,也可以是全色三維圖像和模型。
  一。 IDL開發環境
  IDLDE是用戶快速編寫、測試並調試代碼的最佳環境,用戶可以在該環境中方便地
  進行應用開發。IDLDE具有完善的代碼編譯、調試環境。IDLGUIBuilder 可以迅速開發跨
  平臺的用戶圖形界面(GUI),而無需熟悉IDL控件編程知識。用戶可以拖放式建立圖形用戶
  界面GUI,非常靈活、快速地產生應用程序的界面。IDL GUIBuilder已被集成到Idl開發
  環境中(IDLDE)。用戶還可方便地輸出project,生成可執行文件。
  二。 靈活的數據輸入和輸出
  IDL是完全面向矩陣的,因此它具有快速分析超大規模數據的能力。IDL可以通過靈
  活方便的I/O分析任何數據。可以讀取和輸出任意有格式或者無格式的數據類型,支持通
  用文本及圖形數據,並且支持在NASA、TPT、NOAA等機構中大量使用的HDF、CDF及netCD
  F等科學數據格式,以及醫學掃描設備的DICOM標準格式。IDL還支持字符、字節、16位整
  型、長整型、浮點、雙精度、複數等多種數據類型。從IDL5.5起還可以支持MrSID壓縮數
  據格式。
  三。 IDL——快速實現可視化
  IDL支持OpenGL軟件或硬件加速,可加速交互式的2D及3D數據分析、圖像處理及可視化,
  除了保留傳統的直接圖形法外,IDL還採用了先進的面向對象技術;可以實現曲面的旋轉
  和飛行; 用多光源進行陰影或照明處理;可觀察實體(Volume)內部複雜的細節;一旦創
  建對象後,可從各個不同的視角對對象進行可視分析,而不用費時地反覆重畫。
  IDL具有強大的數據分析能力,從IDL5.5起支持多進程運算,IDL帶有完善的數學分析和
  統計軟件包,提供強大的科學計算模型,支持IMSL函數庫。它的圖像處理軟件包提供了
  大量方便的分析工具、地圖投影變換軟件包,使您開發GIS易如反掌。
  IDL提供了可縮放的TrueType字體,可以註記中文;能將結果存爲標準圖像格式或PostSc
  ript格式,並儘可能地使圖像質量最優化。
  例如: 2-D 繪圖
  等直線分析
  四。外部語言接口
  IDL支持COM/ActiveX組件,可將您的IDL應用開發集成到與COM兼容的環境中。
  從Visual Basic、Visual C++等訪問IDL,還可以通過動態連接庫和COM組件方式在IDL程
  序裏調用C 、Fortran 等程序。
  用 IDL DataMiner 可快速訪問、查詢並管理與ODBC兼容的數據庫,支持Oracl
  e, Informix, Sybase, MS SQL 等數據庫。可以創建、刪除、查詢表格,執行任意的SQ
  L命令,讀取/設置/查詢/增加/刪除記錄等操作。
  例如:圖像和信號處理
  3D、4D曲線和曲面分析
  三維體數據分析
  IDL的小波變換工具包,主要用於信號處理和圖像處理、去除噪聲、圖像壓縮、
  特徵提取、提取圖像細節、其信息量損失比 FFT小得多。
  五。應用領域
  IDL爲用戶提供了可視數據分析的解決方案,早在1982年NASA火星飛越航空器的開
  發就使用了IDL軟件。IDL使科學家無須寫傳統程序就可直接研究數據。IDL還被廣泛應用
  於地球科學、醫學影像、圖像處理、軟件開發、大學教學、實驗室研究、測試技術、天
  文、信號處理、防禦工程、數學分析、統計等諸多領域。
  六。 廣泛的支持平臺:
  Microsoft Windows 95/98/2000
  Microsoft Windows NT(x86/Alpha)
  Open VMS
  SunOS
  Solaris
  Solaris X86
  AIX
  Digital UNIX
  HP-UX
  IRIX
  Linux(Intel x86)
  MacOS
  2。 接口定義語言(Interface Definition Language)的縮寫,使用Java(TM)編寫的API提供基於標準的和CORBA的交互性和連接性。
  ·Used to describe "interfaces"
  similar to RPC .x file
  Like a contract
  Defines protocol to access objects
  ·Builds on OOP principle of encapsulation
  Clear boundary between implementation and interface
  ·Well-specified, Language-independent
  interface specifies names and methods that clients can use (invoke)
  same lexical rules as C++ syntax
  IDL modules
  – logical grouping of interface and type definitions
  – defines naming scope
  IDL interface
  – methods that are available in CORBA objects implementing the interface
  – inheritance using ’:’ for example interface Z inherits interfaces A and B interface Z:A,B{ };
  IDL methods
  – specify signatures
  – parameters are labeled as in, out and inout
  – one way indicates that client will not be blocked when invoking this method
  these methods use maybe invocation semantics
  – raises: user-defined exceptions

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章