IDL Reference
参考:IDL部分系统函数(全)
1. 操作符号
- Relational Operators:【比较运算符】EQ(=), GT(>), LT(<), GE(≥), LE(≤), NE(!=).
- Mathematical Operators:【数学运算符】+、-、*、/、++、--、MOD
- MatrixOperators:【矩阵运算符】#、##
- LogicalOperators:【逻辑运算符】&&(与)、||(或)、~(非)
- BitwiseOperators:AND、OR、NOT、XOR
- Minimum and Maximum Operators:>、<
- OtherOperators:[]、()、[::]、?:(条件)、.(对象方法)、*(指针)
- IDL_VALIDNAME:判断变量名是否有效
- DEFSYSV:自定义系统变量
2. 数组
- 数组:
- 修改数组大小:a=indgen(3, 10),b=a(0:2, 0:5),b相当于indgen(3,6)
-
MAKE_ARRAY:【函数】构建数组,返回值为数组。
语法:Result = MAKE_ARRAY ( [D1[, ..., D8]], DIMENSION=vector, INCREMENT=value, /INDEX, /NOZERO, SIZE=vector, START=value, TYPE=type_code, VALUE=value, /BOOLEAN, /BYTE, /COMPLEX, /DCOMPLEX, /DOUBLE, /FLOAT, /INTEGER, /L64, /LONG, /OBJ, /PTR, /STRING, /UINT, /UL64, /ULONG )- INCREMENT:增加量;
- /INDEX:等差增加;
- /NOZERO:不出现0值,默认情况下是0值;
- START=value:开始的数值;
- TYPE=type_code:返回值的类型,0为Undefined、1为Byte、2为Int等;
- VALUE=value:设置固定值;
- /BOOLEAN:设置一个布尔型数组。
- SIZE:【函数】维度、列、行、类型、个数
-
TYPENAME:
;通过数字,获取类型
IDL> arr=make_array(1,1,type=5)
IDL> typename(arr)
DOUBLE -
WHERE:
IDL> arr=indgen()
IDL> arr
IDL> where(arr eq )
IDL> where(arr gt )
IDL> arr[where(arr gt )]
- REFORM:调整数组的维度。The REFORM function changes the dimensions of an array without changing the total number of elements.
-
REBIN:
- CONGRID:重采样,INTERP抽样采用线性内插法;CUBIC采用卷积内插法 。
-
REVERSE:1,行反转,2,列反转。
字符串反转:string(reverse(byte(str)))
数组对折反转:reverse(reverse(array), 2),第一个是行反转,然后是列反转 - ROTATE:旋转
- TVProcedure:
- ROT:任意角度旋转
- SORT:排序,返回的是排序后的下标
-
UNIQ:相邻的唯一值,下标
b = array[UNIQ(array, SORT(array))] - --<< Math - Miscellaneous Routines >>--
- --<< Math - Transcendental Routines >>--
- MAX:最大值
- 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”。
语法:Result = DIALOG_MESSAGE( Message_Text [, /CANCEL] [, /CENTER] [, /DEFAULT_CANCEL | , /DEFAULT_NO] [, DIALOG_PARENT=widget_id] [, DISPLAY_NAME=string] [, /ERROR | , /INFORMATION | , /QUESTION] [, RESOURCE_NAME=string] [, TITLE=string] ) -
DIALOG_PICKFILE:文件选择
【函数】当未指定 DIRECTORY 关键字的时候,返回值为所选文件的完整路径或者多个路径的数组,没指定文件则返回空字符串;当指定 DIRECTORY 关键字的时候,返回值为所选文件夹的路径数组。
语法:Result = DIALOG_PICKFILE( [, DEFAULT_EXTENSION=string] [, /DIRECTORY] [, DIALOG_PARENT=widget_id] [, DISPLAY_NAME=string] [, FILE=string] [, FILTER=string/string array] [, /FIX_FILTER] [, GET_PATH=variable] [, GROUP=widget_id] [, /MULTIPLE_FILES] [, /MUST_EXIST] [, /OVERWRITE_PROMPT] [, PATH=string] [, /READ | , /WRITE] [, RESOURCE_NAME=string] [, TITLE=string] )
说明:DEFAULT_EXTENSION 自动增加扩展名;
DIRECTORY 选择文件夹;
FILE 可以使用通配符进行筛选(FILE = 'sa*');
FILTER 扩展名设置(FILTER = ['*.jpg', '*.tif', '*.png']);
MULTIPLE_FILES 可以选择多个文件;
PATH 设置初始进去的路径,不指定的话就进到当前的工作空间;
READ 标题为 “Select File to Read”。
WRITE 标题为 “Select File to Write”。 - 特殊字符:
3. 字符及字符串
- 字符串相关
- 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:字符串小写
4. 结构体
- 命名结构体和匿名结构体
PRO TEST_STURCTURE ;匿名结构体
s1 = {a:, b:INDGEN(), c:'hello'}
HELP, s1
;or
s1 = CREATE_STRUCT('a',, 'b',INDGEN(), 'c','hello')
HELP, s1 ;命名结构体
s2 = {s2name, a:, b:INDGEN(), c:'hello'}
HELP, s2
;or
s2 = CREATE_STRUCT(name = 's2name' ,'a',, 'b',INDGEN(), 'c','hello')
HELP, s2 ;获取结构体信息
PRINT, N_TAGS(s1)
PRINT, TAG_NAMES(s1) ;获取结构体成员
PRINT, s1.C
PRINT, s1.() ;动态扩展结构体
s11 = create_struct(s1, 'd', ptr_new('idl'))
help, s11 ;结构体继承
s22 = {s22name, inherits s2name, d:ptr_new('idl')}
help, s22 END -
CREATE_STRUCT:创建结构体
IDL> a={a:,b:}
IDL> a=CREATE_STRUCT(a,'c',)
IDL> a
{
A: ,
B: ,
C:
} - N_TAGS:返回结构体中成员个数。
- TAG_NAMES:返回结构体成员的名字。
5. 指针
- PTR_NEW:创建指针,关键字/no_copy。
- PTR_VALID
-
PTR_FREE
PRO TEST_PTR data = INDGEN(,) ptr1 = PTR_NEW(data)
HELP, data
HELP, ptr1
HELP, *ptr1 ptr2 = PTR_NEW(data, /no_copy)
HELP, data
PRINT, PTR_VALID(ptr2) PTR_FREE, ptr2
PRINT, PTR_VALID(ptr2) END
6. 链表&哈希表
-
LIST:链表,访问用中括号[]。
链表方法:Add、Count、IsEmpty、Remove、Reverse、ToArray、Where等。 - HASH:哈希表,访问用中括号[]。
- OBJ_DESTROY:对象销毁
7. 程序控制(循环、条件、跳转语句)
-
FOR:循环
语法:
FOR variable = init, limit [, Increment] DO statement
or
FOR variable = init, limit [, Increment] DO BEGIN
statements
ENDFORPRO TEST_FOR FOR i=, DO PRINT,i*
FOR i=, DO BEGIN
PRINT,i ENDFOR
;
FOR i=,,- DO BEGIN
PRINT,i
ENDFOR
END - 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
ENDELSEPRO TEST_IF,num,div IF((num MOD ) EQ ) THEN BEGIN
tmp = DIALOG_MESSAGE(STRING(num)+' 是偶数!')
ENDIF
IF((num MOD div) EQ ) THEN BEGIN
tmp = DIALOG_MESSAGE(STRING(num)+'能够被'+STRING(div)+'整除!')
ENDIF ELSE BEGIN
tmp = DIALOG_MESSAGE(STRING(num)+'不能够被'+STRING(div)+'整除!')
ENDELSE IF THEN BEGIN
ENDIF ELSE IF THEN BEGIN
ENDIF ELSE IF THEN BEGIN
PRINT,'end'
ENDIF
END pro alex_if a =
if (a mod eq ) then begin
print, ''
endif else begin
if (a mod eq ) then print, '' else print, ''
endelse end-
CASE:只显示一条
语法:
CASE expression OF
expression: statement(s)
...
expression: statement(s)
[ ELSE: statement(s) ]
ENDCASEPRO TEST_CASE
; index =
READ, index
CASE index OF
: PLOT,SIN(FINDGEN()*0.25)
: SURFACE,DIST()
: BEGIN
ERASE
image=DIST()
TVSCL,image
END
ELSE: PRINT,index
ENDCASE
END -
SWITCH:下面的全部都显示
语法:
SWITCH expression OF
expression: statement
...
expression: statement
ELSE: statement
ENDSWITCHPRO TEST_SWITH
x=
SWITCH x OF
: PRINT,'one'
: PRINT,'two'
: PRINT,'three'
: PRINT, 'four'
ENDSWITCH
PRINT,'end'
END - REPEAT:
-
FOREACH:
语法:
FOREACH Element, Variable [, Index] DO Statement
or
FOREACH Element, Variable [, Index] DO BEGIN
statements
ENDFOREACHPRO Test_Foreach array = [, , , , ]
FOREACH element, array DO PRINT, 'Value = ', element PRINT, '**********************' list = LIST(77.97, 'Galactic', [, , , , ]) FOREACH element, list DO BEGIN
PRINT, 'Value = ', element
ENDFOREACH END -
WHILE...DO:循环
语法:
WHILE expression DO statement
or
WHILE expression DO BEGIN
statements
ENDWHILE
8. 过程&函数
-
PRO:过程,Procedure,无返回值,位置参数和关键字参数。
PRO test_pro
a =
PRINT,a
HELP,a END -
FUNCTION:函数,有返回值
参考:IDL中的关键字参数(keywords parameter) -
N_PARAMS:The N_PARAMS function returns the number of parameters used in calling an IDL procedure or function.
【函数】返回非关键字参数的个数(即位置参数的个数)。
语法:Result = N_PARAMS()PRO test_parameters, param1,param2 HELP,param1,param2
PRINT,N_PARAMS() END -
N_ELEMENTS:The N_ELEMENTS function returns the number of elements contained in an expression or variable.
【函数】返回一个表达式或变量中包含的元素数。
语法:Result = N_ELEMENTS(Expression) - KEYWORD_SET:The KEYWORD_SET function returns a byte value based on the value of the specified expression.
9. 输入与输出
- PLOT:The PLOT function draws a line plot of vector arguments.
-
CATCH:错误捕捉。
PRO CATCH_EXAMPLE A = FLTARR()
CATCH, Error_status IF Error_status NE THEN BEGIN
PRINT, 'Error index: ', Error_status
PRINT, 'Error message: ', !ERROR_STATE.MSG
A=FLTARR()
CATCH, /CANCEL
ENDIF A[]=
HELP, A
END -
TEMPORARY:为变量不需要增加额外的空间。类似于!NULL。
IDL> u eq !null IDL> u=
IDL> u eq !null IDL> temporary(u) IDL> u eq !null - PRINT:PRINT performs output to the standard output stream.
-
SYSTIME:The SYSTIME function returns the current time as either a date/time string.
参考:IDL中的日期和时间函数
【函数】返回指定的时间形式。
语法:
Result = SYSTIME( [0 [, ElapsedSeconds]] [, /UTC] )
or
Result = SYSTIME( | /SECONDS )
or
Result = SYSTIME( /JULIAN [, /UTC] );+
;:Description:
; Describe the procedure.
;
; Author: DYQ --;
;
;- PRO TEST_FORMAT ;IDL的format语法结构如下:
;[N]FC[+][-][width]
;
;符号描述:
;N ----- 代表格式控制的重复次数,默认是1
;FC ---- 即format codes的简写,格式控制代码
;+ ----- 给正数加上前缀
;- ----- 控制输出时对齐方向
;Width - 输出字符的宽度 COMPILE_OPT idl2
;
PRINT, FORMAT = '(A6)', ''
PRINT, FORMAT = '(I2,$)', INDGEN() ;X是偏移字符数,T是绝对字符数位置
PRINT, FORMAT = '("First", 20X, "Last", T10, "Middle")'
PRINT, FORMAT = '("First", 20X, "Last", T4, "Middle")'
;
PRINT, FORMAT = '("First", 5X, "Last", TL2, "Middle")'
;
PRINT, SYSTIME(/JULIAN) ;儒略日
PRINT, FORMAT='(C())', SYSTIME(/JULIAN)
PRINT, FORMAT='(C(CMOI,"/",CDI))',SYSTIME(/JULIAN)
PRINT, FORMAT='(C(CHI2.2,":",CMI2.2,":",CSF05.2))',SYSTIME(/JULIAN)
;
PRINT, FORMAT='(%"I have %d monkeys, %s,", " and ", I0, " parrots.")', , 'Scott',
PRINT, FORMAT='(%"I have \xb1%d monkeys \\")',
;
PRINT,'进制转换'
PRINT,'0F'X ; 十六进制转十进制
PRINT,"17 ; 八进制转十进制
PRINT, , format='(B)';十进制转二进制的
PRINT, , format='(O)';十进制转到八进制
PRINT, , format='(Z)';十进制转到十六进制 ENDIDL> PRINT, SYSTIME(/JULIAN) ;儒略日
2457255.0
IDL> PRINT, FORMAT='(C())', SYSTIME(/JULIAN)
Thu Aug ::
IDL> PRINT, FORMAT='(C(CMOI,"/",CDI))',SYSTIME(/JULIAN)【Y/MO/D/H/M/S】
/
IDL> PRINT, FORMAT='(C(CHI2.2,":",CMI2.2,":",CSF05.2))',SYSTIME(/JULIAN)
::50.00 - TIC:开始时的系统时间。
- TOC:结束时的系统时间,并计算两者时间差。
-
FormatCodes:Format codes specify either how data should be transferred or how input/output is handled.
-
READ:格式化变量输入。
语法:READ, [Prompt,] Var1, ..., Varn -
READF:READF requires a file unit to be explicitly specified.
语法:READF, [Prompt,] Unit, Var1, ..., Varn -
READS:格式化的从字符串读入。
语法:READS, Input, Var1, ..., Varn [, AM_PM=[string, string]] [, DAYS_OF_WEEK=string_array{7 names}] [, FORMAT=value] [, MONTHS=string_array{12 names}]IDL> str='abc100def'
IDL> a=''
IDL> b=
IDL> c=''
IDL> reads,str,a,b,c,format='(A3,I3,A3)'
IDL> print,a,b,c
abc 100def
IDL> help,a,b,c
A STRING = 'abc'
B INT =
C STRING = 'def' IDL> tmp = ' 2 4 4 '
IDL> row =
IDL> columns =
IDL> type =
IDL> reads, tmp, row, columns, type
IDL> row IDL> columns IDL> type IDL> str='
IDL> str=''
IDL> reads, tmp,row
IDL> row IDL> reads, tmp, str
IDL> str IDL> reads, tmp, type
IDL> type-
READU:读取二进制文件
语法:READU, Unit, Var1, ..., Varn [, TRANSFER_COUNT=variable] -
OPENR/OPENU/OPENW:【WIDTH/APPEND】打开读(已存在的文件)、打开更新(已存在文件)、打开写(新建文件,若已经存在,则删除原内容)
语法:OPENR, Unit, File
语法:OPENW, Unit, File
语法:OPENU, Unit, File
Keywords: [, /APPEND | , /COMPRESS] [, BUFSIZE={0 | 1 | value>512}] [, /DELETE] [, ERROR=variable] [, /F77_UNFORMATTED] [, /GET_LUN] [, /MORE] [, /NOEXPAND_PATH] [, /STDIO] [, /SWAP_ENDIAN] [, /SWAP_IF_BIG_ENDIAN] [, /SWAP_IF_LITTLE_ENDIAN] [, /VAX_FLOAT] [, WIDTH=value] [, /XDR]
pro alex_openw file='D:\idl1.txt'
str=FINDGEN(,)
openw, lun, file, /get_lun
printf, lun, str, format='(4F-)'
free_lun,lun endIDL> file='D:\idl.txt'
IDL> openw,lun,file,/get_lun
IDL> lun IDL> printf,lun,arr
IDL> free_lun,lun -
PRINT:格式化输出。
语法:PRINT [, Expression1, ..., Expressionn] -
PRINTF:PRINTF requires a file unit to be explicitly specified.(写入文件中)
语法:PRINTF [, Unit, Expression1, ..., Expressionn]
Keywords: [, AM_PM=[string, string]] [, DAYS_OF_WEEK=string_array{7 names}] [, FORMAT=value] [, /IMPLIED_PRINT] [, MONTHS=string_array{12 names}] [, /STDIO_NON_FINITE] -
WRITEU:写入二进制文件。
语法:WRITEU, Unit, Expr1 ..., Exprn [, TRANSFER_COUNT=variable] -
FREE_LUN:The FREE_LUN procedure deallocates previously-allocated file units.
释放一个逻辑设备号并关闭文件。
语法:FREE_LUN [, Unit1, ..., Unitn] [, EXIT_STATUS=variable] [, /FORCE] -
SKIP_LUN:The SKIP_LUN procedure reads data in an open file and moves the file pointer.
移动文件指针来读取文件。
语法:SKIP_LUN, FromUnit, [, Num] [, /EOF] [, /LINES] [, /TRANSFER_COUNT=variable] -
POINT_LUN:The POINT_LUN procedure sets or obtains the current position of the file pointer for the specified file.
设置或者获取指定文件的文件指针位置。
语法:POINT_LUN, Unit, Position -
FILE_LINES:The FILE_LINES function reports the number of lines of text contained within the specified file or files.
【函数】返回文本文件的行数。
语法:Result = FILE_LINES(Path [, /COMPRESS] [, /NOEXPAND_PATH] ) -
FILE_DIRNAME:The FILE_DIRNAME function returns the dirname of a file path.
【函数】返回文件路径所在的文件夹路径。
语法:Result = FILE_DIRNAME(Path [, /MARK_DIRECTORY]) -
ROUTINE_FILEPATH:The ROUTINE_FILEPATH function returns the full path to a currently-compiled procedure or function.
【函数】返回当前编译过程或函数的完整路径。
语法:Result = ROUTINE_FILEPATH( [Routine] [, /EITHER] [, /IS_FUNCTION] ) - FILEPATH:The FILEPATH function returns the fully-qualified path to a file contained in the IDL distribution.
-
PATH_SEP:The PATH_SEP function returns the proper file path segment separator character for the current operating system.
【函数】返回当前系统路径的分割符号。
语法:Result = PATH_SEP( [, /PARENT_DIRECTORY] [, /SEARCH_PATH] ) -
EOF:The EOF function tests the specified file unit for the end-of-file condition.
【函数】检测是否到文件末。到达文件的结尾返回1,没到达返回0.
语法:Result = EOF(Unit)asciiFile = FILE_DIRNAME(ROUTINE_FILEPATH('alex_while_readf')) + $
'\data\ascii.txt' ;依次读取
PRINT, '依次读取--------------------------------'
OPENR,lun,asciifile,/get_lun IF lun EQ - THEN RETURN;
tmp = ''
WHILE(~EOF(lun)) DO BEGIN
READF,lun,tmp
PRINT,tmp
ENDWHILE
;
FREE_LUN,lun- While循环阅读文本文件内容
-
CLOSE:The CLOSE procedure closes the file units specified as arguments.
关闭一个文件。 -
FSTAT:The FSTAT function returns status information about a specified file unit.
返回一个已打开文件的信息。 - ASCII_TEMPLATE:The ASCII_TEMPLATE function presents a graphical user interface (GUI) which generates a template defining an ASCII file format.
-
QUERY_BMP:QUERY_BMP is a method of obtaining information about a BMP image file without having to read the file.
【函数】获取BMP图片的信息。读取成功返回1,读取失败返回0.
语法:Result = QUERY_BMP( Filename [, Info] ) -
READ_BMP:The READ_BMP function reads a Microsoft Windows Version 3 device independent bitmap file (.BMP) and returns the image.
【函数】读取BMP图片
语法:Result = READ_BMP( Filename, [, R, G, B] [, Ihdr] [, /RGB] ) -
WRITE_JPEG:写入JPEG格式图片。(TRUE的值通过3那个值所处位置来确定)
语法:WRITE_JPEG [, Filename], Image [, /ORDER] [, /PROGRESSIVE] [, QUALITY=value{0 to 100}] [, TRUE={1 | 2 | 3}] [, UNIT=lun] -
WRITE_TIFF:写入TIFF格式图片。
语法:WRITE_TIFF, Filename[, Image] [, /APPEND] [, /BIGTIFF] [, BITS_PER_SAMPLE={1 | 4 | 8}] [, RED, GREEN, BLUE=value] [, /CMYK] [, COMPRESSION={0 | 1 | 2 | 3}] [, DESCRIPTION=string] [, DOCUMENT_NAME=string] [, DOT_RANGE=intarray] [, GEOTIFF=structure] [, /COMPLEX | , /DCOMPLEX | , /DOUBLE | , /L64 | , /LONG | , /SHORT | , /FLOAT] [, ICC_PROFILE=bytearray] [, ORIENTATION=value] [, PHOTOSHOP=array] [, PLANARCONFIG={1 | 2}] [, /SIGNED] [, UNITS={1 | 2 | 3}] [, /VERBOSE] [, XPOSITION=units] [, XRESOL=pixels/inch] [, YPOSITION=units] [, YRESOL=pixels/inch] - :
- :
- :
- :
10. 系统变量
- !NULL:未定义。
- !ERROR_STATE:!EXCEPT、!MOUSE、!WARN。
- :
- :
- :
11. 文件系统操作
-
CD:The CD procedure is used to set and/or change the current working directory.
修改当前的工作空间路径。
语法:CD [, Directory] [, CURRENT=variable] -
FILE_SEARCH:The FILE_SEARCH function returns a string array containing the names of all files matching the input path specification.
【函数】对文件名进行特定的查找。返回字符串数组。
语法:
Result = FILE_SEARCH(Path_Specification)
or for recursive searching,
Result = FILE_SEARCH(Dir_Specification, Recur_Pattern)
Keywords: [, COUNT=variable ] [, /EXPAND_ENVIRONMENT ] [, /EXPAND_TILDE ] [, /FOLD_CASE ] [, /FULLY_QUALIFY_PATH ] [, /ISSUE_ACCESS_ERROR ] [, /MARK_DIRECTORY ] [, /MATCH_ALL_INITIAL_DOT | /MATCH_INITIAL_DOT ] [, /NOSORT ] [, /QUOTE ] [, /TEST_DIRECTORY ] [, /TEST_EXECUTABLE ] [, /TEST_READ ] [, /TEST_REGULAR ] [, /TEST_WRITE ] [, /TEST_ZERO_LENGTH ] [, /WINDOWS_SHORT_NAMES ] -
FILE_COPY:The FILE_COPY procedure copies files, or directories of files, to a new location.
语法:FILE_COPY, SourcePath, DestPath [, /ALLOW_SAME] [, /NOEXPAND_PATH] [, /OVERWRITE] [, /RECURSIVE] [, /REQUIRE_DIRECTORY] [, /VERBOSE]
说明:SourcePath 想要复制的文件夹或文件的路径
DestPath 目的地文件夹
OVERWRITE 覆盖文件 -
FILE_DELETE:The FILE_DELETE procedure deletes a file or empty directory.
语法:FILE_DELETE, File1[,... Filen] [, /ALLOW_NONEXISTENT] [, /NOEXPAND_PATH] [, /QUIET] [, /RECURSIVE] [, /RECYCLE] [, /VERBOSE]
说明:RECURSIVE 默认情况下只能删除空文件夹,设置此参数能够删除非空文件夹
RECYCLE 默认情况下永久删除,设置此参数可以将删除的文件放在回收站里面 -
FILE_MOVE:The FILE_MOVE procedure renames files and directories, effectively moving them to a new location.
语法:FILE_MOVE, SourcePath, DestPath [, /ALLOW_SAME] [, /NOEXPAND_PATH] [, /OVERWRITE] [, /REQUIRE_DIRECTORY] [, /VERBOSE] -
FILE_MKDIR:The FILE_MKDIR procedure creates a new directory, or directories, with the default access permissions for the current process.
语法:FILE_MKDIR, File1 [,... Filen] [, /NOEXPAND_PATH] - FILE_TEST:The FILE_TEST function checks files for existence and other attributes without having to first open the file.
- :
12. 直接图形系统
-
TV:
语法:
TV, Image [, Position] [, /CENTIMETERS | , /INCHES] [, /ORDER] [, TRUE={1 | 2 | 3}] [, /WORDS] [, XSIZE=value] [, YSIZE=value]
or
TV, Image [, X, Y [, Channel]] [, /CENTIMETERS | , /INCHES] [, /ORDER] [, TRUE={1 | 2 | 3}] [, /WORDS] [, XSIZE=value] [, YSIZE=value]
Graphics Keywords: [, ../../Resources/CHANNEL=value] [, /DATA | , /DEVICE | , /NORMAL] [, /T3D] [, Z=value] -
TVSCL:
语法:
TVSCL, Image [, Position] [, /CENTIMETERS] [, /INCHES] [, /NAN] [, /ORDER] [, TOP=value] [, TRUE={1 | 2 | 3}] [, /WORDS] [, XSIZE=value] [, YSIZE=value]
or
TVSCL, Image [, X, Y [, Channel] [, /CENTIMETERS] [, /INCHES] [, /NAN] [, /ORDER] [, TOP=value] [, TRUE={1 | 2 | 3}] [, /WORDS] [, XSIZE=value] [, YSIZE=value]]
Graphics Keywords: [, CHANNEL=value] [, /DATA | , /DEVICE | , /NORMAL] [, /T3D] [, Z=value] -
DIST:
【函数】发挥N列M行的数组,省略M就返回N列N行的数组。
语法:Result = DIST(N [, M]) - :
语法:
graphic = PLOT(Y, [Format] [, Keywords=value] [, Properties=value])
graphic = PLOT(X, Y, [Format] [, Keywords=value] [, Properties=value])
graphic = PLOT(Equation, [Format] [, Keywords=value] [, Properties=value])
Keywords
Keywords are applied only during the initial creation of the graphic.
AXIS_STYLE=value
/BUFFER, /CURRENT, /DEVICE, DIMENSIONS=[width, height], LAYOUT=array, LOCATION=[x, y], MARGIN=scalar or [left, bottom, right, top], /NO_TOOLBAR, /NODATA, /OVERPLOT, /WIDGETSProperties
Properties can be set as keywords to the function during creation, or retrieved or changed using the "." notation after creation.
ANTIALIAS, ASPECT_RATIO, AXES, BACKGROUND_COLOR, BACKGROUND_TRANSPARENCY, CLIP, COLOR, CROSSHAIR, EQN_SAMPLES, EQN_USERDATA, EQUATION, FILL_BACKGROUND, FILL_COLOR, FILL_LEVEL, FILL_TRANSPARENCY, FONT_COLOR, FONT_NAME, FONT_SIZE, FONT_STYLE, HIDE, HISTOGRAM, LINESTYLE, MAPGRID, MAPPROJECTION, MAP_PROJECTION, MAX_VALUE, MIN_VALUE, NAME, POSITION, RGB_TABLE, STAIRSTEP, SYM_COLOR, SYM_FILLED, SYM_FILL_COLOR, SYM_INCREMENT(指定横坐标步长), SYM_OBJECT, SYM_SIZE, SYM_THICK, SYM_TRANSPARENCY, SYMBOL, THICK, TITLE, TRANSPARENCY, UVALUE, VERT_COLORS, WINDOW, WINDOW_TITLE, XRANGE, YRANGE, ZVALUE
Methods
CloseConvertCoordCopyWindowDeleteEraseGenerateCodeGetDataGetValueAtLocationMapForwardMapInverseOrderPrintRefreshRotateSaveScaleSelectSetDataTranslate
- :
- :
- :
- :
- :
- :
- :
- :