【213】IDL函數匯總


名稱 功能說明 類型  語法&舉例
IDL_VALIDNAME 判斷變量名是否有效,無效返回值為空或者自動修改 函數  
DEFSYSV 自定義系統變量,全局變量 過程  
MAKE_ARRAY 構建數組,返回值為數組 函數  
SIZE 返回值是數組,分別表示維度、列、行、類型、個數 函數 (size(findgen(10,2)))[4]
TYPENAME 返回某個變量的類型名 函數  
WHERE 返回符合條件的數組,count記錄個數 函數 where(a gt 2, count)
數組操作
REFORM 調整數組的維度,元素個數不變 函數  
REBIN 調整數組的大小,類似分辨率變化 函數  
CONGRID 重采樣,類似REBIN 函數  
REVERSE 1-行反轉/水平,2-列反轉/垂直 函數  
ROTATE 數組旋轉,1-順時針90°,2-180°中心對稱,3-逆時針90° 函數 ROTATE(Array, Direction)
ROT 任意角度旋轉 函數  
SORT 排序,從小到大,返回索引數組 函數 上升:a[sort(a)]
下降:a[reverse(sort(a))]
UNIQ 相鄰唯一值,返回索引數組 函數 唯一上升數組:
array[UNIQ(array, SORT(array))]
數組計算
MAX 最大值,可選參數為最大值的索引 函數 MAX( Array [, Max_Subscript])
MIN 最小值 函數  
TOTAL 數組元素總和 函數  
PRODUCT 數組元素總乘積 函數  
FACTORIAL 階乘 函數  
MEAN 平均值 函數  
ALOG 自然對數 函數  
ALOG10 以10為底的對數 函數  
EXP e的指數冪 函數   
SQRT 平方根 函數   
^ 操作符 2^2=4, 2^0.5=1.414等
可視化控件
DIALOG_MESSAGE 消息框,返回值為“Yes”, “No”, “OK”, and “Cancel”,可設置消息框的類型、標題等 函數 dialog_message("Right?", /question, title="Look: ", /cancel)
DIALOG_PICKFILE ◈ 文件選擇,返回值為文件路徑
◈ 指定 DIRECTORY 關鍵字,文件夾選擇,返回值為文件夾路徑

DEFAULT_EXTENSION 自動增加擴展名;
DIRECTORY 選擇文件夾;
FILE 可以使用通配符進行篩選(FILE = 'sa*');
FILTER 擴展名設置(FILTER = ['*.jpg', '*.tif', '*.png']);
MULTIPLE_FILES 可以選擇多個文件;
PATH 設置初始進去的路徑,不指定的話就進到當前的工作空間;
READ 標題為 “Select File to Read”。
WRITE 標題為 “Select File to Write”。
函數 dialog_pickfile(title="Select", FILTER = ['*.jpg', '*.tif', '*.png']) 
字符串操作
STRING  返回字符串。  函數  
STRCMP  比較字符串,一樣返回1,不一樣返回0,參數包括比較前幾個字母和是否大小寫敏感。  函數   
STRCOMPRESS  將字符串中的空格和Tab等壓縮成一個空格,參數包括刪除所有空格。  函數   
STRJOIN  將字符串數組合並成一個字符串,用什么符號進行連接。  函數  
STRLEN 返回字符串的長度。 函數   
STRPOS 字符串中字符位置查找,返回數值。/reverse_search從后面開始搜索。 函數   
STRMID 字符串截取,參數有開始字母的位置,以及截取長度。不寫長度就是到最后。 函數   
STRSPLIT 拆分,用什么符號進行拆分。 函數   
STRTRIM 刪除前后空格(2)。
◈ strtrim(a):去掉后面的空格
◈ strtrim(a, 1):去掉前面的空格
◈ strtrim(a, 2):去掉前后的空格
函數   
STRUPCASE  字符串大寫  函數   
STRLOWCASE  字符串小寫  函數   
結構體      
N_TAGS  返回結構體中成員個數。  函數  
TAG_NAMES  返回結構體成員的名字。   函數  
鏈表&哈希表      
LIST  鏈表,訪問用中括號[]。
鏈表方法:Add、Count、IsEmpty、Remove、Reverse、ToArray、Where等。 
函數  
HASH  哈希表,訪問用中括號[]。  函數  
OBJ_DESTROY  對象銷毀  函數  
循環語句      
FOR  循環    FOR variable = init, limit [, Increment] DO statement
  or
  FOR variable = init, limit [, Increment] DO BEGIN
     statements
  ENDFOR 
CONTINUE       
BREAK      
IF...THEN...ELSE 選擇語句   IF expression THEN statement [ ELSE statement ]
  or
  IF expression THEN BEGIN
     statements
  ENDIF
  or
  IF expression THEN BEGIN
     statements
  ENDIF ELSE BEGIN
     statements
  ENDELSE
CASE 只顯示一條   CASE expression OF
      expression: statement(s)
      ...
      expression: statement(s)
  [ ELSE: statement(s) ]
  ENDCASE
SWITCH 下面的全部都顯示   SWITCH expression OF
      expression: statement
      ...
      expression: statement
  ELSE: statement
  ENDSWITCH 
REPEAT      
FOREACH     FOREACH Element, Variable [, Index] DO Statement
  or
  FOREACH Element, Variable [, Index] DO BEGIN
  statements
  ENDFOREACH 
WHILE...DO 循環   WHILE expression DO statement
  or
  WHILE expression DO BEGIN
     statements
  ENDWHILE 
過程&函數      
PRO  過程,Procedure,無返回值,位置參數和關鍵字參數。     
FUNCTION 函數,有返回值    
N_PARAMS 返回非關鍵字參數的個數(即位置參數的個數)。 函數  
N_ELEMENTS 返回一個表達式或變量中包含的元素數。 函數  
KEYWORD_SET      
輸入與輸出      
PRINT 格式化輸出。     
PRINTF 寫入文件中     
Format Codes       
READ  格式化變量輸入。     
READF      
READS 格式化的從字符串讀入。    
READU 讀取二進制文件    
OPENR/OPENU/OPENW 【WIDTH/APPEND】打開讀(已存在的文件)、打開更新(已存在文件)、打開寫(新建文件,若已經存在,則刪除原內容)    
WRITEU  寫入二進制文件。     
FREE_LUN  釋放一個邏輯設備號並關閉文件。     
SKIP_LUN  移動文件指針來讀取文件。     
POINT_LUN  設置或者獲取指定文件的文件指針位置。     
FILE_LINES  返回文本文件的行數。     
EOF  檢測是否到文件末。到達文件的結尾返回1,沒到達返回0.     
CLOSE 關閉一個文件。    
FSTAT 返回一個已打開文件的信息。    
       
ASCII_TEMPLATE      
QUERY_BMP 獲取BMP圖片的信息。讀取成功返回1,讀取失敗返回0.    
READ_BMP 讀取BMP圖片    
WRITE_JPEG 寫入JPEG格式圖片。(TRUE的值通過3那個值所處位置來確定)    
WRITE_TIFF 寫入TIFF格式圖片。    
文件操作系統      
CD 修改當前的工作空間路徑。 過程  
FILE_SEARCH 對文件名進行特定的查找。返回字符串數組。 函數  
FILE_COPY 說明:SourcePath 想要復制的文件夾或文件的路徑
         DestPath 目的地文件夾
         OVERWRITE 覆蓋文件
   
FILE_DELETE 說明:RECURSIVE 默認情況下只能刪除空文件夾,設置此參數能夠刪除非空文件夾
         RECYCLE 默認情況下永久刪除,設置此參數可以將刪除的文件放在回收站里面
   
FILE_MOVE      
FILE_MKDIR      
FILE_TEST      
       
       
ROUTINE_FILEPATH 返回當前編譯過程或函數的完整路徑。    
FILE_DIRNAME 返回文件路徑所在的文件夾路徑。    
FILEPATH      
PATH_SEP      
系統變量      
!NULL 未定義。    
!ERROR_STATE !EXCEPT、!MOUSE、!WARN。    
       
SYSTIME 返回指定的時間形式。 函數 Result = SYSTIME( [0 [, ElapsedSeconds]] [, /UTC] )
  or
  Result = SYSTIME( 1 | /SECONDS )
  or
  Result = SYSTIME( /JULIAN [, /UTC] )
TIC 開始時的系統時間。     
TOC  結束時的系統時間,並計算兩者時間差。     
       
TEMPORARY 為變量不需要增加額外的空間。類似於!NULL。    
CATCH 錯誤捕捉。    
PLOT       
TV      
TVSCL      
DIST  發揮N列M行的數組,省略M就返回N列N行的數組。     
       

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM