0% found this document useful (0 votes)
353 views154 pages

Idl Reference

IDL quick reference

Uploaded by

vititmani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
353 views154 pages

Idl Reference

IDL quick reference

Uploaded by

vititmani
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 154

IDL Quick

Reference

IDL Version 7.1


May 2009 Edition
Copyright © ITT Visual Information Solutions
All Rights Reserved

0509IDL71QR
Restricted Rights Notice
The IDL®, IDL Advanced Math and Stats™, ENVI®, and ENVI Zoom™ software programs and the accompanying procedures,
functions, and documentation described herein are sold under license agreement. Their use, duplication, and disclosure are subject to
the restrictions stated in the license agreement. ITT Visual Information Solutions reserves the right to make changes to this document
at any time and without notice.
Limitation of Warranty
ITT Visual Information Solutions makes no warranties, either express or implied, as to any matter not expressly set forth in the
license agreement, including without limitation the condition of the software, merchantability, or fitness for any particular purpose.
ITT Visual Information Solutions shall not be liable for any direct, consequential, or other damages suffered by the Licensee or any
others resulting from use of the software packages or their documentation.
Permission to Reproduce this Manual
If you are a licensed user of these products, ITT Visual Information Solutions grants you a limited, nontransferable license to
reproduce this particular document provided such copies are for your use only and are not sold or distributed to third parties. All such
copies must contain the title page and this notice page in their entirety.
Export Control Information
The software and associated documentation are subject to U.S. export controls including the United States Export Administration
Regulations. The recipient is responsible for ensuring compliance with all applicable U.S. export control laws and regulations. These
laws include restrictions on destinations, end users, and end use.
Acknowledgments
ENVI® and IDL® are registered trademarks of ITT Corporation, registered in the United States Patent and Trademark Office. ION™, ION Script™,
ION Java™, and ENVI Zoom™ are trademarks of ITT Visual Information Solutions.
ESRI®, ArcGIS®, ArcView®, and ArcInfo® are registered trademarks of ESRI.
Portions of this work are Copyright © 2008 ESRI. All rights reserved.
Numerical Recipes™ is a trademark of Numerical Recipes Software. Numerical Recipes routines are used by permission.
GRG2™ is a trademark of Windward Technologies, Inc. The GRG2 software for nonlinear optimization is used by permission.
NCSA Hierarchical Data Format (HDF) Software Library and Utilities. Copyright © 1988-2001, The Board of Trustees of the University of Illinois. All
rights reserved.
NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities. Copyright © 1998-2002, by the Board of Trustees of the University of
Illinois. All rights reserved.
CDF Library. Copyright © 2002, National Space Science Data Center, NASA/Goddard Space Flight Center.
NetCDF Library. Copyright © 1993-1999, University Corporation for Atmospheric Research/Unidata.
HDF EOS Library. Copyright © 1996, Hughes and Applied Research Corporation.
SMACC. Copyright © 2000-2004, Spectral Sciences, Inc. and ITT Visual Information Solutions. All rights reserved.
This software is based in part on the work of the Independent JPEG Group.
Portions of this software are copyrighted by DataDirect Technologies, © 1991-2003.
BandMax®. Copyright © 2003, The Galileo Group Inc.
Portions of this computer program are copyright © 1995-1999, LizardTech, Inc. All rights reserved. MrSID is protected by U.S. Patent No. 5,710,835.
Foreign Patents Pending.
Portions of this software were developed using Unisearch’s Kakadu software, for which ITT has a commercial license. Kakadu Software. Copyright ©
2001. The University of New South Wales, UNSW, Sydney NSW 2052, Australia, and Unisearch Ltd, Australia.
This product includes software developed by the Apache Software Foundation (www.apache.org/).
MODTRAN is licensed from the United States of America under U.S. Patent No. 5,315,513 and U.S. Patent No. 5,884,226.
QUAC and FLAASH are licensed from Spectral Sciences, Inc. under U.S. Patent No. 6,909,815 and U.S. Patent No. 7,046,859 B2.
Portions of this software are copyrighted by Merge Technologies Incorporated.
Support Vector Machine (SVM) is based on the LIBSVM library written by Chih-Chung Chang and Chih-Jen Lin (www.csie.ntu.edu.tw/~cjlin/libsvm),
adapted by ITT Visual Information Solutions for remote sensing image supervised classification purposes.
IDL Wavelet Toolkit Copyright © 2002, Christopher Torrence.
IMSL is a trademark of Visual Numerics, Inc. Copyright © 1970-2006 by Visual Numerics, Inc. All Rights Reserved.
Other trademarks and registered trademarks are the property of the respective trademark holders.
Contents
Chapter 1:
Functional List of IDL Routines ............................................................. 5
Chapter 2:
Alphabetical List of IDL Routines ........................................................ 27
Chapter 3:
Scientific Data Formats ...................................................................... 137

IDL Quick Reference 3


4

Contents IDL Quick Reference


Functional List of
IDL Routines
The following is a list of all routines included in IDL, categorized by functionality.

3D Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Mathematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Object Class Library . . . . . . . . . . . . . . . . . . . . . . 18
Array Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Operating System Access . . . . . . . . . . . . . . . . . . 20
Array Manipulation . . . . . . . . . . . . . . . . . . . . . . . 8 Plotting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Color Table Manipulation . . . . . . . . . . . . . . . . . . 8 Programming and IDL Control . . . . . . . . . . . . . 21
Date and Time . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Query Routines . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Saving/Restoring a Session . . . . . . . . . . . . . . . . 22
Dialog Routines . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Scientific Data Formats . . . . . . . . . . . . . . . . . . . 22
Direct Graphics . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Scope Functions . . . . . . . . . . . . . . . . . . . . . . . . . 23
Error Handling . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . 23
Executive Commands . . . . . . . . . . . . . . . . . . . . 10 Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
External Linking . . . . . . . . . . . . . . . . . . . . . . . . 10 String Processing . . . . . . . . . . . . . . . . . . . . . . . . 23
Font Manipulation . . . . . . . . . . . . . . . . . . . . . . . 10 Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Help Routines . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Type Conversion . . . . . . . . . . . . . . . . . . . . . . . . . 24
Image Processing . . . . . . . . . . . . . . . . . . . . . . . . 10 Utilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Input/Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Wavelet Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . 24
iTools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Widget Routines . . . . . . . . . . . . . . . . . . . . . . . . . 25
Language Catalogs . . . . . . . . . . . . . . . . . . . . . . . 14 Widget Routines, Compound . . . . . . . . . . . . . . . 25
Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Window Routines . . . . . . . . . . . . . . . . . . . . . . . . 26

IDL Quick Reference 5


6 Functional List of IDL Routines

3D Visualization MESH_VALIDATE - Checks for NaN values in vertices, removes


unused vertices, and combines close vertices.
MESH_VOLUME - Computes the volume that the mesh encloses.
3D Transformations & Scene Setup POLYSHADE - Creates a shaded surface representation from a set of
polygons.
CONVERT_COORD - Transforms coordinates to and from the coor-
dinate systems supported by IDL. Surfaces and Contours
COORD2TO3 - Returns 3D data coordinates given normalized screen
coordinates. CONTOUR - Draws a contour plot.
CREATE_VIEW - Sets up 3D transformations. ICONTOUR - Creates an iTool and associated user interface (UI) con-
figured to display and manipulate contour data.
CV_COORD - Converts 2D and 3D coordinates between coordinate
systems. IDLgrContour - Draws a contour plot from data stored in a rectangu-
lar array or from a set of unstructured points.
IDLgrLight - Represents a source of illumination for three-dimensional
graphic objects. IDLgrSurface - Represents a shaded or vector representation of a
mesh grid.
IDLgrModel - Represents a graphical item or group of items that can
be transformed (rotated, scaled, and/or translated). IMAGE_CONT - Overlays an image with a contour plot.
IDLgrScene - Represents the entire scene to be drawn and serves as a ISURFACE - Creates an iTool and associated user interface (UI) con-
container of IDLgrView or IDLgrViewgroup objects. figured to display and manipulate surface data.
IDLgrView - Represents a rectangular area in which graphics objects MIN_CURVE_SURF - Interpolates points with a minimum curvature
are drawn. surface or a thin-plate-spline surface. Useful with CONTOUR.
IDLgrViewgroup - Represents a simple container object, very similar POLAR_CONTOUR - Draws a contour plot from data in polar coor-
to the IDLgrScene object, but can contain objects without a Draw dinates.
method in addition to IDLgrView objects. SHADE_SURF - Creates a shaded-surface representation of gridded
IDLgrWindow - Represents an on-screen area on a display device that data.
serves as a graphics destination. SHADE_SURF_IRR - Creates a shaded-surface representation of an
SCALE3 - Sets up axis ranges and viewing angles for 3D plots. irregularly gridded dataset.
SCALE3D - Scales 3D unit cube into the viewing area. SHOW3 - Displays array as image, surface plot, and contour plot simul-
taneously.
SET_SHADING - Sets the light source shading parameters.
SURFACE - Plots an array as a wireframe mesh surface.
SURFR - Sets up 3D transformations by duplicating rotation, transla-
tion, and scaling of SURFACE. XSURFACE - Provides GUI to SURFACE and SHADE_SURF.
T3D - Performs various 3D transformations.
Tetrahedral Mesh Routines
VERT_T3D - Transforms a 3D array by a 4x4 transformation matrix.
VOXEL_PROJ - Generates volume visualizations using voxel tech- IDLgrTessellator - Decomposes a polygon description into a set of
nique. triangles to convert complex and/or concave polygons into a convex
form suitable for drawing with the IDLgrPolygon object.
Polygonal Mesh Routines TETRA_CLIP - Clips a tetrahedral mesh to an arbitrary plane in space
and returns a tetrahedral mesh of the remaining portion.
COMPUTE_MESH_NORMALS - Computes normal vectors for a TETRA_SURFACE - Extracts a polygonal mesh as the exterior sur-
set of polygons described by the input array. face of a tetrahedral mesh.
IDLgrPolygon - Represents one or more polygons that share a given TETRA_VOLUME - Computes properties of tetrahedral mesh array.
set of vertices and rendering attributes.
MESH_CLIP - Clips a polygonal mesh to an arbitrary plane in space Vector Field Visualization
and returns a polygonal mesh of the remaining portion.
MESH_DECIMATE - Reduces the density of geometry while preserv- FLOW3 - Draws lines representing a 3D flow/velocity field.
ing as much of the original data as possible.
INTERPOL - Performs linear interpolation on vectors.
MESH_ISSOLID - Computes various mesh properties and enables
IDL to determine if a mesh encloses space (is a solid). IVECTOR - Creates an iTool and associated user interface (UI) config-
ured to display and manipulate vector data.
MESH_MERGE - Merges two polygonal meshes.
PARTICLE_TRACE - Traces the path of a massless particle through a
MESH_NUMTRIANGLES - Computes the number of triangles in a vector field.
polygonal mesh.
STREAMLINE - Generates the visualization graphics from a path.
MESH_OBJ - Generates a polygon mesh for various simple objects.
VECTOR_FIELD - Places colored, oriented vectors of specified
MESH_SMOOTH - Performs spatial smoothing on a polygon mesh. length at each vertex in an input vertex array.
MESH_SURFACEAREA - Computes various mesh properties to VEL - Draws a velocity (flow) field with streamlines.
determine the mesh surface area, including integration of other
properties interpolated on the surface of the mesh. VELOVECT - Draws a 2D velocity field plot.

3D Visualization IDL Quick Reference


Functional List of IDL Routines 7

Volume Visualization MPEG_PUT - Inserts an image array into an MPEG sequence.


MPEG_SAVE - Saves an MPEG sequence to a file.
EXTRACT_SLICE - Returns 2D planar slice extracted from volume. XINTERANIMATE - Displays animated sequence of images.
IDLgrVolume - Represents a mapping from a 3D array of data to a 3D
array of voxel colors, which, when drawn, are projected to two
dimensions.
Array Creation
IDLgrVRML - Saves the contents of an Object Graphics hierarchy into
a VRML 2.0 format file. BINDGEN - Returns byte array with each element set to its subscript.
INTERVAL_VOLUME - Generates a tetrahedral mesh from volumet- BYTARR - Creates a byte vector or array.
ric data.
CINDGEN - Returns a complex array with each element set to its sub-
ISOSURFACE - Returns topologically consistent triangles by using script.
oriented tetrahedral decomposition.
COMPLEXARR - Creates a complex, single-precision, floating-point
IVOLUME - Creates an iTool and associated user interface (UI) config- vector or array.
ured to display and manipulate volume data.
DBLARR - Creates a double-precision array.
PROJECT_VOL - Returns a translucent rendering of a volume pro-
jected onto a plane. DCINDGEN - Returns a double-precision, complex array with each ele-
ment set to its subscript.
QGRID3 - Interpolates the dependent variable values to points in a regu-
larly sampled volume. DCOMPLEXARR - Creates a complex, double-precision vector or
array.
QHULL - Constructs convex hulls, Delaunay triangulations, and Voronoi
diagrams. DINDGEN - Returns a double-precision array with each element set to
its subscript.
RECON3 - Reconstructs a 3D representation of an object from 2D
images. FINDGEN - Returns a floating-point array with each element set to its
subscript.
SEARCH3D - Finds “objects” or regions of similar data values within a
volume. FLTARR - Returns a single-precision, floating-point vector or array.
SHADE_VOLUME - Contours a volume to create a list of vertices and IDENTITY - Returns an identity array (an array with ones along the
polygons that can be displayed using POLYSHADE. main diagonal and zeros elsewhere) of the specified dimensions.
SLICER3 - Interactive volume visualization tool. INDGEN - Return an integer array with each element set to its subscript.
VOXEL_PROJ - Generates volume visualizations using voxel tech- INTARR - Creates an integer vector or array.
nique.
L64INDGEN - Returns a 64-bit integer array with each element set to
XOBJVIEW - Displays object viewer widget. its subscript.
XOBJVIEW_ROTATE - Programmatically rotate the object currently LINDGEN - Returns a longword integer array with each element set to
displayed in XOBJVIEW. its subscript.
XOBJVIEW_WRITE_IMAGE - Write the object currently dis- LON64ARR - Returns a 64-bit integer vector or array.
played in XOBJVIEW to an image file.
LONARR - Returns a longword integer vector or array.
XVOLUME - Utility for viewing and interactively manipulating vol-
umes and isosurfaces. MAKE_ARRAY - Returns an array of the specified type, dimensions,
and initialization.

Animation OBJARR - Creates an array of object references.


PTRARR - Creates an array of pointers.
CW_ANIMATE - Creates a compound widget for animation. REPLICATE - Creates an array of given dimensions, filled with speci-
fied value.
CW_ANIMATE_GETP - Gets pixmap window IDs used by
CW_ANIMATE. SINDGEN - Returns a string array with each element set to its subscript.
CW_ANIMATE_LOAD - Loads images into CW_ANIMATE. STRARR - Returns string array containing zero-length strings.
CW_ANIMATE_RUN - Displays images loaded into TIMEGEN - Returns an array of double-precision floating-point values
CW_ANIMATE. that represent times in Julian dates.

IDLffMJPEG2000- provides the ability to read and write Motion UINDGEN - Returns unsigned integer array with each element set to its
JPEG2000 (MJ2) files. subscript.

IDLgrModel - Animates the display of objects by displaying a single UINTARR - Returns an unsigned integer vector or array.
object in the collection of objects contained in the model when the UL64INDGEN - Returns an unsigned 64-bit integer array with each
RENDER_METHOD property is set. element set to its subscript.
IDLgrMPEG - Creates an MPEG movie file from an array of image ULINDGEN - Returns an unsigned longword array with each element
frames. set to its subscript.
FLICK - Causes the display to flicker between two images. ULON64ARR - Returns an unsigned 64-bit integer vector or array.
MPEG_CLOSE - Closes an MPEG sequence. ULONARR - Returns an unsigned longword integer vector or array.
MPEG_OPEN - Opens an MPEG sequence.

IDL Quick Reference Animation


8 Functional List of IDL Routines

Array Manipulation HSV - Creates color table based on Hue and Saturation Value color sys-
tem.
IDLgrPalette - Represents a color lookup table that maps indices to
ARRAY_EQUAL - Provides fast test for data equality in cases where red, green, and blue values.
the positions of the differing data elements is not required. LOADCT - Loads one of the predefined IDL color tables.
ARRAY_INDICES - Converts one-dimensional subscripts of an array MODIFYCT - Saves modified color tables in the IDL color table file.
into corresponding multi-dimensional subscripts.
MULTI - Replicates current color table to enhance contrast.
BLAS_AXPY - Updates existing array by adding a multiple of another
array. PSEUDO - Creates pseudo-color table based on Lightness, Hue, and
Brightness system.
INVERT - Computes the inverse of a square array.
REDUCE_COLORS - Reduces the number of colors used in an
MAX - Returns the value of the largest element of Array. image by eliminating unused pixel values.
MEDIAN - Returns the median value of Array or applies a median filter. STRETCH - Stretches color table for contrast enhancement.
MIN - Returns the value of the smallest element of an array. TEK_COLOR - Loads color table based on Tektronix printer.
REFORM - Changes array dimensions without changing the total num- TVLCT - Loads display color tables.
ber of elements.
XLOADCT - Provides GUI to interactively select and load color tables.
REPLICATE_INPLACE - Updates an array by replacing all or
selected parts of it with a specified value. XPALETTE - Displays widget used to create and modify color tables.
REVERSE - Reverses the order of one dimension of an array.
ROT - Rotates an image by any amount. Date and Time
ROTATE - Rotates/transposes an array in multiples of 90 degrees.
SHIFT - Shifts elements of vectors or arrays by a specified number of BIN_DATE - Converts ASCII date/time string to binary string.
elements.
CALDAT - Converts Julian date to month, day, year.
SIZE - Returns array size and type information.
CALENDAR - Displays a calendar for a given month or year.
SORT - Returns indices of an array sorted in ascending order.
JULDAY - Returns Julian Day Number for given month, day, and year.
TOTAL - Sums of the elements of an array.
SYSTIME - Returns the current time as either a date/time string, as the
TRANSPOSE - Transposes an array. number of seconds elapsed since 1 January 1970, or as a Julian
date/time value.
UNIQ - Returns subscripts of the unique elements in an array.
TIMEGEN - Returns an array of double-precision floating-point values
WHERE - Returns subscripts of nonzero array elements. that represent date/times in terms of Julian values.
XVAREDIT - Provides widget-based editor for IDL variables.
Debugging
Color Table Manipulation
.CONTINUE - Continues execution of a stopped program.
CMYK_CONVERT - Converts color triples to and from RGB, HLS, .SKIP - Skips over the next n statements and then single steps.
and HSV.
.STEP - Executes one or n statements from the current position.
COLOR_QUAN - Converts true-color (24-bit) image to pseudo-color
(8-bit) image. .STEPOVER - Executes a single statement if the statement doesn’t call
a routine.
COLORMAP_APPLICABLE - Determines whether the current
visual class supports the use of a colormap. .TRACE - Similar to .CONTINUE, but displays each line of code before
execution.
CT_LUMINANCE - Calculates the luminance of colors.
BREAKPOINT - Sets and clears breakpoints for debugging.
CW_PALETTE_EDITOR - Creates compound widget to display and
edit color palettes. SHMDEBUG - Print debugging information when a variable loses ref-
erence to an underlying shared memory segment.
CW_PALETTE_EDITOR_GET - Gets CW_PALETTE_EDITOR
properties. STOP - Stops the execution of a running program or batch file.
CW_PALETTE_EDITOR_SET - Sets CW_PALETTE_EDITOR
properties. Dialog Routines
GAMMA_CT - Applies gamma correction to a color table.
H_EQ_CT - Histogram-equalizes the color tables for an image or a DIALOG_MESSAGE - Creates modal message dialog.
region of the display.
H_EQ_INT - Interactively histogram-equalizes the color tables of an DIALOG_PICKFILE - Creates native file-selection dialog.
image or a region of the display. DIALOG_PRINTERSETUP - Opens native dialog used to set prop-
HLS - Creates color table in Hue, Lightness, Saturation color system. erties for a printer.

Array Manipulation IDL Quick Reference


Functional List of IDL Routines 9

DIALOG_PRINTJOB - Opens native dialog used to set parameters POLYFILL - Fills the interior of a polygon.
for a print job.
POLYSHADE - Creates a shaded-surface representation of one or more
DIALOG_READ_IMAGE - Presents GUI for reading image files. solids described by a set of polygons.
DIALOG_WRITE_IMAGE - Presents GUI for writing image files. PROFILE - Extracts a profile from an image.
PROFILES - Interactively examines image profiles.
Direct Graphics PROJECT_VOL - Returns a two-dimensional image that is the projec-
tion of a 3-D volume of data onto a plane (similar to an X-ray).
RDPIX - Interactively displays the X position, Y position, and pixel
ANNOTATE - Starts IDL widget used to interactively annotate images value at the cursor.
and plots with text and drawings.
SCALE3 - Sets up transformation and scaling parameters for basic 3-D
ARROW - Draws line with an arrow head. viewing.
AXIS - Draws an axis of the specified type and scale at a given position. SCALE3D - Scales the 3-D unit cube (a cube with the length of each
BAR_PLOT - Creates a bar graph. side equal to 1) into the viewing area.

BOX_CURSOR - Emulates operation of a variable-sized box cursor. SET_PLOT - Sets the output device used by the IDL direct graphics
procedures.
CONVERT_COORD - Transforms coordinates to and from the coor-
dinate systems supported by IDL. SET_SHADING - Modifies the light source shading parameters that
affect the output of SHADE_SURF and POLYSHADE.
CONTOUR - Draws a contour plot.
SHADE_SURF - Creates a shaded-surface representation of a regular
CREATE_VIEW - Sets the various system variables required to define or nearly-regular gridded surface.
a coordinate system and a 3-D view.
SHADE_SURF_IRR - Creates a shaded-surface representation of an
CURSOR - Reads position of the interactive graphics cursor. irregularly gridded elevation dataset. Given a 3-D volume and a
contour value, SHADE_VOLUME produces a list of vertices and
CVTTOBM - Creates a bitmap byte array for a button label. polygons describing the contour surface.
DEFROI - Defines an irregular region of interest of an image using the SHADE_VOLUME - Given a 3-D volume and a contour value, pro-
image display system and the cursor and mouse. duces a list of vertices and polygons describing the contour surface.
DEVICE - Sets to plot in device coordinates. SHOW3 - Combines an image, a surface plot of the image data, and a
DRAW_ROI - Draws a region or group of regions to the current Direct contour plot of the images data in a single tri-level display.
Graphics device. SURFACE - draws a wire-mesh representation of a two-dimensional
EMPTY - Empties the graphics output buffer. array projected into two dimensions, with hidden lines removed.

ERASE - Erases the screen of the current graphics device, or starts a THREED - Plots a 2D array as a pseudo 3D plot.
new page if the device is a printer. TV - Displays an image.
ERRPLOT - Plots error bars over a previously drawn plot. TVCRS - Manipulates the image display cursor.
FLICK - Causes the display to flicker between two output images at a TVLCT - Loads a predefined color table or a color table from specified
given rate. variables.
FORMAT_AXIS_VALUES - Formats numbers as strings for use as TVRD - Returns the contents of the specified rectangular portion of the
axis values. current graphics window or device.
IMAGE_CONT - Overlays an image with a contour plot. TVSCL - Scales and displays an image.
LABEL_REGION - Consecutively labels all of the regions, or blobs, WINDOW - Creates a window for the display of graphics or text.
of a bi-level image with a unique region index.
WSET - Selects the current window.
LOADCT - Loads a pre-defined color table.
WSHOW - Exposes or hides the designated window.
OPLOT - Plots vector data over a previously drawn plot.
XYOUTS - Draws text on currently-selected graphics device.
OPLOTERR - Plots error bars over a previously drawn plot.
ZOOM - Zooms portions of the display.
PLOT - Draws a graph of vector arguments.
ZOOM_24 - Zooms portions of true-color (24-bit) display.
PLOT_3DBOX - Plots a function of two variables (e.g., Z=f(X, Y))
inside a 3-D box.
PLOT_FIELD - Plots a 2-D field. N random points are picked, and Error Handling
from each point a path is traced along the field.
PLOTERR - plots individual data points with error bars.
CATCH - Intercepts and processes error messages, and continues pro-
PLOTS - Plots vectors and points. gram execution.
POLAR_CONTOUR - Draws a contour plot from data in polar coor- MESSAGE - Issues error and informational messages.
dinates.
ON_ERROR - Designates the error recovery method.
POLAR_SURFACE - Interpolates a surface from polar coordinates
(R, Theta, Z) to rectangular coordinates (X, Y, Z). ON_IOERROR - Declares I/O error exception handler.
STRMESSAGE - Returns the text of a given error number.

IDL Quick Reference Direct Graphics


10 Functional List of IDL Routines

Executive Commands Help Routines


.COMPILE - Compiles programs without running. ? - Invokes the IDL Online Help facility when entered at the IDL com-
mand line.
.CONTINUE - Continues execution of a stopped program.
DOC_LIBRARY - Extracts documentation headers from IDL pro-
.EDIT - Opens files in editor windows of the IDL Workbench. grams.
.FULL_RESET_SESSION - Does everything .RESET_SESSION HELP - Provides information about the current IDL session.
does, plus additional reset tasks such as unloading sharable librar-
ies. MEMORY - Returns information about dynamic memory currently in
use by the IDL session.
.GO - Executes a previously compiled $MAIN$ program.
MK_HTML_HELP - Converts text documentation headers to HTML
.OUT - Continues execution until the current routine returns. files.
.RESET_SESSION - Resets much of the state of an IDL session ONLINE_HELP - Invokes online help viewer from programs.
without requiring the user to exit and restart the IDL session.
STRUCT_HIDE - Prevents the IDL HELP procedure from displaying
.RETURN - Continues execution until RETURN statement. information about structures or objects.
.RNEW - Erases $MAIN$ program variables and then executes .RUN.
.RUN - Compiles and executes IDL commands from files or keyboard. Image Processing
.SKIP - Skips over the next n statements and then single steps.
.STEP - Executes one or n statements from the current position. Contrast Enhancement and Filtering
.STEPOVER - Executes a single statement if the statement does not
call a routine.
ADAPT_HIST_EQUAL - Performs adaptive histogram equalization
.TRACE - Similar to .CONTINUE, but displays each line of code before
execution. BANDPASS_FILTER - Applies a bandpass filter to a one-channel
image.
BANDREJECT_FILTER - Applies a band reject filter on a one-
External Linking channel image.
BUTTERWORTH - Returns the absolute value of the low-pass Butter-
worth kernel.
CALL_EXTERNAL - Calls a function in an external sharable object
and returns a scalar value. BYTSCL - Scales all values of an array into range of bytes.
DLM_LOAD - Explicitly causes a DLM to be loaded. CANNY - Implements the Canny edge-detection algorithm.
IDLcomActiveX - Creates an IDL object that encapsulates an CONVOL - Convolves two vectors or arrays.
ActiveX control.
DIGITAL_FILTER - Calculates coefficients of a non-recursive, digital
IDLcomIDispatch - Creates an IDL object that encapsulates a COM filter.
object.
ESTIMATOR_FILTER - Applies an order statistic noise-reduction
IDLEXBR_ASSISTANT- Launches the Export Bridge Assistant. filter to a one-channel image.
IDLjavaObject - An IDL object encapsulating a Java object. IDL pro- FFT - Returns the Fast Fourier Transform of an array.
vides data type and other translation services, allowing IDL pro-
grams to access the Java object’s methods and properties using HILBERT - Constructs a Hilbert transform.
standard IDL syntax. HIST_EQUAL - Histogram-equalizes an image.
LINKIMAGE - Merges routines written in other languages with IDL at IR_FILTER - Performs the infinite or finite impulse response filter on
run-time. data.
MAKE_DLL - Compiles and links sharable libraries (DLLs). LEAST_SQUARES_FILTER - Reduces degradation and noise in
an image based on the mean and variance of the degradation and
Font Manipulation noise.
LEEFILT - Performs the Lee filter algorithm on an image array.
MEAN_FILTER - Applies mean filter noise reduction on a one- or
EFONT - Interactive vector font editor and display tool. multi-channel image.
IDLgrFont - represents a typeface, style, weight, and point size that MEDIAN - Returns the median value of Array or applies a median filter.
may be associated with text objects.
ROBERTS - Returns an approximation of Roberts edge enhancement.
PS_SHOW_FONTS - Displays all the PostScript fonts that IDL
knows about. SMOOTH - Smooths with a boxcar average.
PSAFM - Converts Adobe Font Metrics file to IDL format. SOBEL - Returns an approximation of Sobel edge enhancement.
SHOWFONT - Displays a TrueType or vector font UNSHARP_MASK - Performs an unsharp-mask sharpening filter on
a two-dimensional array or a truecolor image.
XFONT - Creates modal widget to select and view an X Windows font.

Executive Commands IDL Quick Reference


Functional List of IDL Routines 11

WIENER_FILTER - Reduces degradation and noise in an image by XOBJVIEW_WRITE_IMAGE - Write the object currently dis-
statistically comparing it with an undegraded image. played in XOBJVIEW to an image file.
See Also - Wavelet Toolkit ZOOM - Zooms portions of the display.
ZOOM_24 - Zooms portions of true-color (24-bit) display.
Feature Extraction/Image Segmentation
Image Geometry Transformations
CONTOUR - Draws a contour plot.
DEFROI - Defines an irregular region of interest of an image. CONGRID - Resamples an image to any dimensions.
HISTOGRAM - Computes the density function of an array. EXPAND - Shrinks/expands image using bilinear interpolation.
HOUGH - Returns the Hough transform of a two-dimensional image. EXTRAC - Returns sub-matrix of input array. Array operators (e.g., *
and :) should usually be used instead.
IMAGE_STATISTICS - Computes sample statistics for a given array
of values. INTERPOLATE - Returns an array of interpolates.
ISOCONTOUR - Interprets the contouring algorithm found in the INVERT - Computes the inverse of a square array.
IDLgrContour object.
POLY_2D - Performs polynomial warping of images.
ISOSURFACE - Returns topologically consistent triangles by using
oriented tetrahedral decomposition. POLYWARP - Performs polynomial spatial warping.
LABEL_REGION - Labels regions (blobs) of a bi-level image. REBIN - Resizes a vector or array by integer multiples.
MAX - Returns the value of the largest element of Array. REFORM - Changes array dimensions without changing the total num-
ber of elements.
MEDIAN - Returns the median value of Array or applies a median filter.
REVERSE - Reverses the order of one dimension of an array.
MIN - Returns the value of the smallest element of an array.
ROT - Rotates an image by any amount.
PROFILES - Interactively examines image profiles.
ROTATE - Rotates/transposes an array in multiples of 90 degrees.
RADON - Returns the Radon transform of a two-dimensional image.
SHIFT - Shifts elements of vectors or arrays by a specified number of
REGION_GROW - Perform region growing. elements.
SEARCH2D - Finds “objects” or regions of similar data within a 2D TRANSPOSE - Transposes an array.
array.
WARP_TRI - Warps an image using control points.
THIN - Returns the “skeleton” of a bi-level image.
UNIQ - Returns subscripts of the unique elements in an array. Morphological Image Operators
WATERSHED - Applies the morphological watershed operator to a
grayscale image. DILATE - Implements morphologic dilation operator on binary and
grayscale images.
WHERE - Returns subscripts of nonzero array elements.
ERODE - Implements the erosion operator on binary and grayscale
Image Display images and vectors.
LABEL_REGION - Labels regions (blobs) of a bi-level image.
DISSOLVE - Provides a digital “dissolve” effect for images. MORPH_CLOSE - Applies closing operator to binary or grayscale
image.
IDLgrImage - Creates an image object that represents a mapping from
a 2D array of data values to a 2D array of pixel colors. MORPH_DISTANCE - Estimates N-dimensional distance maps,
which contain for each foreground pixel the distance to the nearest
IDLgrPalette - Represents a color lookup table that maps indices to background pixel, using a given norm.
red, green, and blue values.
MORPH_GRADIENT - Applies the morphological gradient operator
IIMAGE - Creates an iTool and associated user interface (UI) configured to a grayscale image.
to display and manipulate image data.
MORPH_HITORMISS - Applies the hit-or-miss operator to a binary
RDPIX - Interactively displays image pixel values. image.
SLIDE_IMAGE - Creates a scrolling graphics window for examining MORPH_OPEN - Applies the opening operator to a binary or gray-
large images. scale image.
TV - Displays an image. To scale and display the image, use TVSCL. MORPH_THIN - Performs a thinning operation on binary images.
TVCRS - Manipulates the image display cursor. MORPH_TOPHAT - Applies top-hat operator to a grayscale image.
TVLCT - Loads display color tables. WATERSHED - Applies the morphological watershed operator to a
TVSCL - Scales and displays an image. grayscale image.

XOBJVIEW - Displays object viewer widget. Regions of Interest


XOBJVIEW_ROTATE - Programmatically rotate the object currently
displayed in XOBJVIEW.
CW_DEFROI - Creates compound widget used to define region of
interest.

IDL Quick Reference Image Processing


12 Functional List of IDL Routines

DEFROI - Defines an irregular region of interest of an image. PATH_SEP - Returns the proper file path segment separator character
for the current operating system.
DRAW_ROI - Draws region or group of regions to current Direct
Graphics device.
Image Data Formats
IDLanROI - Represents a region of interest used for analysis.
IDLanROIGroup - Analytical representation of a group of regions of NOTE: Also see “Query Routines” on page 22.
interest.
DIALOG_READ_IMAGE - Presents GUI for reading image files.
IDLgrROI - Object graphics representation of a region of interest.
DIALOG_WRITE_IMAGE - Presents GUI for writing image files.
IDLgrROIGroup - Object Graphics representation of a group of
regions of interest. GET_DXF_OBJECTS - Returns an IDLgrModel containing graph-
ics from a given DXF file.
LABEL_REGION - Labels regions (blobs) of a bi-level image.
IDLffDICOM - Contains the data for one or more images embedded in a
REGION_GROW - Grows an initial region to include all areas that DICOM part 10 file.
match specified constraints.
IDLffDicomEx - Allows you to read and write data contained in a
XROI - Utility for defining regions of interest, and obtaining geometry DICOM file. See the Medical Imaging in IDL manual.
and statistical data about these ROIs.
IDLffJPEG2000 - Contains the data for one or more JPEG2000 files.
Input/Output IDLffMJPEG2000 - Allows you to create and play Motion JPEG2000
animations contained in MJ2 files.
IDLffMrSID - Allows you to query and load image data from a MrSID
image file.
General File Access
MPEG_CLOSE - Closes an MPEG sequence.
APP_USER_DIR - Provides access to the application user directory. MPEG_OPEN - Opens an MPEG sequence.
APP_USER_DIR_QUERY - Locates existing application user MPEG_PUT - Inserts an image array into an MPEG sequence.
directories. MPEG_SAVE - Saves an MPEG sequence to a file.
DIALOG_PICKFILE - Creates native file-selection dialog. READ_BMP - Reads Microsoft Windows bitmap file (.BMP).
FILE_BASENAME - Returns the final segment of a file path. READ_DICOM - Reads an image from a DICOM file.
FILE_CHMOD - Changes the current access permission associated READ_GIF - Reads GIF file (.GIF)
with a file or directory.
FILE_COPY - Copies files or directories to a new location. READ_IMAGE - Reads the image contents of a file and returns the
image in an IDL variable.
FILE_DELETE - Removes a file or empty directory. READ_INTERFILE - Reads Interfile (v3.3) file.
FILE_DIRNAME - Returns the directory name of a file path consisting READ_JPEG - Reads JPEG file.
of everything except the final segment of the file path.
FILE_EXPAND_PATH - Returns a fully qualified path regardless of READ_JPEG2000 - Reads JPEG 2000 file.
the current working directory. READ_MRSID - Reads MrSID file.
FILE_INFO - Returns status information about a file. READ_PICT - Reads Macintosh PICT (version 2) bitmap file.
FILE_LINES - Returns the number of lines of text in a file. READ_PNG - Reads Portable Network Graphics (PNG) file.
FILE_LINK - Creates Unix file links. READ_PPM - Reads PGM (gray scale) or PPM (portable pixmap for
FILE_MKDIR - Creates a new directory or directories. color) file.

FILE_MOVE - Renames files and directories. READ_SRF - Reads Sun Raster Format file.
FILE_POLL_INPUT - Blocks processing until it detects that a read READ_TIFF - Reads TIFF format file.
operation on a specified file will succeed. READ_X11_BITMAP - Reads X11 bitmap file.
FILE_READLINK - Returns the path pointed to by a Unix symbolic READ_XWD - Reads X Windows Dump file.
link.
TVRD - Reads an image from a window into a variable.
FILE_SAME - Determines it two different file names refer to the same
underlying file. WRITE_BMP - Writes Microsoft Windows Version 3 device indepen-
dent bitmap file (.BMP).
FILE_SEARCH - Returns a string array containing the names of all
files matching the input path specification. WRITE_GIF - Writes GIF file (.GIF).
FILE_TEST - Test a file or directory for existence and other specific WRITE_IMAGE - Writes an image and its color table vectors, if any, to
attributes. a file of a specified type.
FILE_WHICH - Returns the path for the first file for the given name WRITE_JPEG - Writes JPEG file.
found by searching the specified path.
WRITE_JPEG2000 - Writes JPEG 2000 file.
FILEPATH - Returns full path to a file in the IDL distribution.
WRITE_NRIF - Writes NCAR Raster Interchange Format rasterfile.
FSTAT - Returns information about a specified file unit.
WRITE_PICT - Writes Macintosh PICT (version 2) bitmap file.

Input/Output IDL Quick Reference


Functional List of IDL Routines 13

WRITE_PNG - Writes Portable Network Graphics (PNG) file. General Input/Output


WRITE_PPM - Writes PPM (true-color) or PGM (gray scale) file.
WRITE_SRF - Writes Sun Raster File (SRF). ASSOC - Associates an array structure with a file.
WRITE_TIFF - Writes TIFF file with 1 to 3 channels. CLOSE - Closes the specified files.
XOBJVIEW_WRITE_IMAGE - Write the object currently dis- COPY_LUN - Copies data between two open files.
played in XOBJVIEW to an image file. EOF - Tests the specified file for the end-of-file condition.
Scientific Data Formats FLUSH - Flushes file unit buffers.
FREE_LUN - Frees previously-reserved file units.
CDF Routines - see the Scientific Data Formats chapter of this man- GET_KBRD - Gets one input IDL character.
ual in quickref.pdf, located on your IDL DVD.
GET_LUN - Reserves a logical unit number (file unit).
EOS Routines - see the Scientific Data Formats chapter of this man-
ual in quickref.pdf, located on your IDL DVD. IOCTL - Performs special functions on UNIX files.
HANNING - Opens a GUI to view contents of HDF5 files. OPENR/OPENU/OPENW - Opens files for reading, updating, or
writing.
HDF Routines - see the Scientific Data Formats chapter of this man-
ual in quickref.pdf, located on your IDL DVD. POINT_LUN - Sets or gets current position of the file pointer.
HDF5 Routines - see the Scientific Data Formats chapter of this man- PRINT/PRINTF - Writes formatted output to screen or file.
ual in quickref.pdf, located on your IDL DVD.
READ/READF - Reads formatted input from keyboard or file.
HEAP_FREE - Opens a GUI to view contents of HDF, HDF-EOS, or READS - Reads formatted input from a string variable.
NetCDF file.
HDF_READ - Extracts HDF, HDF-EOS, and NetCDF data and meta- READU - Reads unformatted binary data from a file.
data into an output structure. SEM_CREATE - Creates a reference to a semaphore in the current
NCDF Routines - see the Scientific Data Formats chapter of this IDL process. Creates the semaphore itself if necessary.
manual in quickref.pdf, located on your IDL DVD. SEM_DELETE - Destroys a reference to the specified semaphore in
the current IDL process. Optionally destroys the semaphore itself.
Other Data Formats SEM_LOCK - Attempts to gain the lock on an existing semaphore (cre-
ated by a call to the SEM_CREATE function) for the current IDL
ASCII_TEMPLATE - Presents a GUI that generates a template defin- process.
ing an ASCII file format. SEM_RELEASE - Releases the lock on the specified semaphore held
BINARY_TEMPLATE - Presents a GUI for interactively generating a by the current IDL process.
template structure for use with READ_BINARY. SHMMAP - Maps anonymous shared memory, or local disk files, into
IDLffDXF - Object that contains geometry, connectivity, and attributes the memory address space of the currently executing IDL process.
for graphics primitives. SHMUNMAP - Removes a memory segment previously created by
IDLffShape - Contains geometry, connectivity and attributes for graph- SHMMAP from the system.
ics primitives accessed from ESRI Shapefiles. SHMVAR - Creates an IDL array variable that uses the memory from a
IDLffXMLDOM* - Represents classes that provide support for IDL’s current mapped memory segment created by the SHMMAP proce-
XML Document Object Model (DOM). See “IDLffXMLDOM dure.
Classes” on page 85. SKIP_LUN - Reads data in an open file and moves the file pointer.
IDLffXMLSAX - Represents an XML SAX level 2 parser. SOCKET - Opens a client-side TCP/IP Internet socket as an IDL file
IDLgrVRML - Saves the contents of an Object Graphics hierarchy into unit.
a VRML 2.0 format file. TRUNCATE_LUN - Truncates an open file at the location of the cur-
READ_ASCII - Reads data from an ASCII file. rent file pointer.

READ_BINARY - Reads the contents of a binary file using a passed WRITEU - Writes unformatted binary data to a file.
template or basic command line keywords.
READ_CSV - Reads data from an ASCII file containing comma-
delimited data.
iTools
READ_SYLK - Reads Symbolic Link format spreadsheet file.
READ_WAV - Reads the audio stream from the named .WAV file. iTool Creation Routines
READ_WAVE - Reads Wavefront Advanced Visualizer file.
ICONTOUR - Creates an iTool and associated user interface (UI) con-
WRITE_CSV - Writes comma-separated-values file (.CSV). figured to display and manipulate contour data.
WRITE_SYLK - Writes SYLK (Symbolic Link) spreadsheet file. IIMAGE - Creates an iTool and associated user interface (UI) configured
to display and manipulate image data.
WRITE_WAV - Writes the audio stream to the named .WAV file.
IMAP - Displays georeferenced data in an iTool.
WRITE_WAVE - Writes Wavefront Advanced Visualizer (.WAV) file.

IDL Quick Reference iTools


14 Functional List of IDL Routines

IPLOT - Creates an iTool and associated user interface (UI) configured LOCALE_GET - Returns the current locale of the operating platform.
to display and manipulate plot data.
ISURFACE - Creates an iTool and associated user interface (UI) con-
figured to display and manipulate surface data.
Mapping
IVECTOR - Creates an iTool and associated user interface (UI) config-
ured to display and manipulate vector data. IDLffShape - Contains geometry, connectivity and attributes for graph-
IVOLUME - Creates an iTool and associated user interface (UI) config- ics primitives accessed from ESRI Shapefiles.
ured to display and manipulate volume data. IMAP - Displays georeferenced data in an iTool.
iTool Procedural Routines LL_ARC_DISTANCE - Returns the longitude and latitude of a point
given arc distance and azimuth.
MAP_2POINTS - Returns distance, azimuth, and path relating to the
ICONVERTCOORD - Converts between iTool coordinate systems. great circle or rhumb line connecting two points on a sphere.
IDELETE - Deletes a tool in the IDL Intelligent Tools system. MAP_CONTINENTS - Draws continental boundaries, filled conti-
IELLIPSE - Creates an ellipse annotation in an existing iTool. nents, political boundaries, coastlines, and/or rivers, over an exist-
ing map projection established by MAP_SET.
IGETCURRENT - Retrieves the iTool identifier of the current tool in
the IDL Intelligent Tools system. MAP_GRID - Draws parallels and meridians over a map projection.
IGETDATA - Retrieves data from a specified iTools visualization. MAP_IMAGE - Returns an image warped to fit the current map projec-
tion. (Use when map data is larger than the display).
IGETID - Retrieves the full iTool object identifier string for an iTool
visualization item based on a portion of the identifier. MAP_PATCH - Returns an image warped to fit the current map projec-
tion. (Use when map data is smaller than the display).
IGETPROPERTY - Retrieves a property value from an iTools visual-
ization. MAP_PROJ_FORWARD - Transforms map coordinates from lon-
gitude/latitude to Cartesian (X, Y) coordinates
IOPEN - Opens a file, reads data from the file, and adds one or more
variables containing the data to IDL’s current scope. MAP_PROJ_IMAGE - Warps an image from geographic coordinates
to a specified map projection.
IPOLYGON - Creates a polygon annotation in an existing iTool.
MAP_PROJ_INFO - Returns information about current map and/or
IPOLYLINE - Creates a line annotation in an existing iTool. the available projections.
IPUTDATA - Replaces the data in a specified iTools visualization with- MAP_PROJ_INIT - Initializes a mapping projection, using either
out changing other properties of the visualization. IDL’s own map projections or the General Cartographic Transfor-
mation Package (GCTP) map projections.
IREGISTER- Registers iTool object classes or other iTool functionality
with the IDL Intelligent Tools system. MAP_PROJ_INVERSE - Transforms map coordinates from Carte-
sian (X, Y) coordinates to longitude/latitude.
IRESET - Resets the IDL iTools session.
MAP_SET - Establishes map projection type and limits.
IRESOLVE - Resolves all IDL code within the iTools directory, as well
as all other IDL code required for the iTools framework.
IROTATE - Rotates an iTools visualization. Mathematics
ISAVE - Saves the contents of the current iTool as an image file.
ISCALE - Scales an iTools visualization. Complex Numbers
ISETCURRENT - Sets the current tool in the IDL Intelligent Tools
system. COMPLEX - Converts argument to complex type.
ISETPROPERTY - Sets a property on one or more iTools visualiza- CONJ - Returns the complex conjugate of X.
tions.
DCOMPLEX - Converts argument to double-precision complex type.
ITEXT - Creates a text annotation in an existing iTool.
IMAGINARY - Returns the imaginary part of a complex value.
ITRANSLATE - Translates an iTools visualization.
REAL_PART - Returns the real part of a complex-valued argument.
IZOOM - Changes the zoom factor on an iTools visualization.

iTool Framework Objects Correlation Analysis


A_CORRELATE - Computes autocorrelation.
See “iTool Framework Objects” on page 19.
C_CORRELATE - Computes cross correlation.
Language Catalogs CORRELATE - Computes the linear Pearson correlation.
M_CORRELATE - Computes multiple correlation coefficient.
IDLffLangCat - Finds and loads an XML language catalog. P_CORRELATE - Computes partial correlation coefficient.
R_CORRELATE - Computes rank correlation.

Language Catalogs IDL Quick Reference


Functional List of IDL Routines 15

Curve and Surface Fitting Gridding and Interpolation


COMFIT - Fits paired data using one of six common filtering functions. BILINEAR - Computes array using bilinear interpolation.
CRVLENGTH - Computes the length of a curve. CONGRID - Shrinks or expands the size of an array by an arbitrary
amount.
CURVEFIT - Fits multivariate data with a user-supplied function.
GRID_INPUT - Preprocesses and sorts two-dimensional scattered data
GAUSS2DFIT - Fits a 2D elliptical Gaussian equation to rectilinearly points, and removes duplicate values.
gridded data.
GRID_TPS - Uses thin plate splines to interpolate a set of values over a
GAUSSFIT - Fits the sum of a Gaussian and a quadratic. regular 2D grid, from irregularly sampled data values.
GRID_TPS - Uses thin plate splines to interpolate a set of values over a GRID3 - Creates a regularly-gridded 3D dataset from a set of scattered
regular 2D grid, from irregularly sampled data values. 3D nodes.
KRIG2D - Interpolates set of points using kriging. GRIDDATA - Interpolates scattered data values and locations sampled
on a plane or a sphere to a regular grid.
LADFIT - Fits paired data using least absolute deviation method.
INTERPOL - Performs linear interpolation on vectors.
LINFIT - Fits by minimizing the Chi-square error statistic.
INTERPOLATE - Returns an array of interpolates.
LMFIT - Does a non-linear least squares fit.
KRIG2D - Interpolates set of points using kriging.
MIN_CURVE_SURF - Interpolates points with a minimum curvature
surface or a thin-plate-spline surface. Useful with CONTOUR. MIN_CURVE_SURF - Interpolates points with a minimum curvature
surface or a thin-plate-spline surface. Useful with CONTOUR.
POLY_FIT - Performs a least-square polynomial fit.
POLAR_SURFACE - Interpolates a surface from polar coordinates to
REGRESS - Computes fit using multiple linear regression. rectangular coordinates.
SFIT - Performs polynomial fit to a surface. SPH_SCAT - Performs spherical gridding.
SVDFIT - Multivariate least squares fit using SVD method. SPL_INIT - Establishes the type of interpolating spline.
TRIGRID - Interpolates irregularly-gridded data to a regular grid from a SPL_INTERP - Performs cubic spline interpolation (Numerical Reci-
triangulation. pes).

Differentiation and Integration REBIN - Resizes a vector or an array to a set of given dimensions.
SPLINE - Performs cubic spline interpolation.
CRVLENGTH - Computes the length of a curve. SPLINE_P - Performs parametric cubic spline interpolation.
DERIV - Performs differentiation using 3-point Langrangian interpola- TRI_SURF - Interpolates gridded set of points with a smooth quintic
tion. surface.
DERIVSIG - Computes standard deviation of derivative found by TRIANGULATE - Constructs Delaunay triangulation of a planar set of
DERIV. points.
INT_2D - Computes the double integral of a bivariate function. TRIGRID - Interpolates irregularly-gridded data to a regular grid from a
triangulation.
INT_3D - Computes the triple integral of a trivariate function.
VALUE_LOCATE - Finds the intervals within a given monotonic vec-
INT_TABULATED - Integrates a tabulated set of data. tor that brackets a given set of one or more search values.
LSODE - Advances a solution to a system of ordinary differential equa- VORONOI - Computes Voronoi polygon given Delaunay triangulation.
tions one time-step H.
QROMB - Evaluates integral over a closed interval. Hypothesis Testing
QROMO - Evaluates integral over an open interval.
QSIMP - Evaluates integral using Simpson’s rule. CTI_TEST - Performs chi-square goodness-of-fit test.
RK4 - Solves differential equations using fourth-order Runge-Kutta FV_TEST - Performs the F-variance test.
method. KW_TEST - Performs Kruskal-Wallis H-test.
Eigenvalues and Eigenvectors LNP_TEST - Computes the Lomb Normalized Periodogram.
MD_TEST - Performs the Median Delta test.
EIGENQL - Computes eigenvalues and eigenvectors of a real, symmet- R_TEST - Runs test for randomness.
ric array.
RS_TEST - Performs the Wilcoxon Rank-Sum test.
EIGENVEC - Computes eigenvectors of a real, non-symmetric array.
S_TEST - Performs the Sign test.
ELMHES - Reduces nonsymmetric array to upper Hessenberg form.
TM_TEST - Performs t-means test.
HQR - Returns all eigenvalues of an upper Hessenberg array.
XSQ_TEST - Computes Chi-square goodness-of-fit test.
TRIQL - Determines eigenvalues and eigenvectors of tridiagonal array.
TRIRED - Reduces a real, symmetric array to tridiagonal form.

IDL Quick Reference Mathematics


16 Functional List of IDL Routines

LAPACK Routines IDENTITY - Returns an identity array.


INVERT - Computes the inverse of a square array.
LA_CHOLDC - Computes the Cholesky factorization of an n-by-n LINBCG - Solves a set of sparse linear equations using the iterative
symmetric positive-definite array. biconjugate gradient method.
LA_CHOLMPROVE - Uses Cholesky factorization to improve the LU_COMPLEX - Solves complex linear system using LU decomposi-
solution to a system of linear equations. tion.
LA_CHOLSOL - Used in conjunction with LA_CHOLDC to solve a LUDC - Replaces array with the LU decomposition.
set of linear equations.
LUMPROVE - Uses LU decomposition to iteratively improve an
LA_DETERM - Uses LU decomposition to compute the determinant of approximate solution.
a square array.
LUSOL - Solves a set of linear equations. Use with LUDC.
LA_EIGENPROBLEM - Uses the QR algorithm to compute eigen-
values and eigenvectors of an array. NORM - Computes Euclidean norm of vector or Infinity norm of array.
LA_EIGENQL - Computes selected eigenvalues and eigenvectors. SVDC - Computes Singular Value Decomposition of an array.
LA_EIGENVEC - Uses the QR algorithm to compute all of some SVSOL - Solves set of linear equations using back-substitution.
eigenvectors of an array.
TRACE - Computes the trace of an array.
LA_ELMHES - Reduces a real nonsymmetric or complex array to
upper Hessenberg from. TRISOL - Solves tridiagonal systems of linear equations.
LA_GM_LINEAR_MODEL - Used to solve a general Gauss- Mathematical Error Assessment
Markov linear model problem.
LA_HQR - Uses the multishift QR algorithm to compute all eigenvalues
of an array. CHECK_MATH - Returns and clears accumulated math error status.
LA_INVERT - Uses LU decomposition to compute the inverse of a FINITE - Returns True if its argument is finite.
square array. MACHAR - Determines and returns machine-specific parameters affect-
LA_LEAST_SQUARE_EQUALITY - Used to solve linear least- ing floating-point arithmetic.
squares problems.
LA_LEAST_SQUARES - Used to solve linear least-squares prob- Miscellaneous Math Routines
lems.
LA_LINEAR_EQUATION - Uses LU decomposition to sole a sys- ABS - Returns the absolute value of X.
tem of linear equations. CEIL - Returns the closest integer greater than or equal to X.
LA_LUDC - Computes the LU decomposition of an array. CIR_3PNT - Returns radius and center of circle, given 3 points.
LA_LUMPROVE - Uses LU decomposition to improve the solution to COMPLEXROUND - Rounds a complex array.
a system of linear equations.
LA_LUSOL - Used in conjunction with LA_LUDC to solve a set of lin- DIAG_MATRIX - Constructs a diagonal matrix from an input vector, or
if given a matrix, then extracts a diagonal vector.
ear equations.
LA_SVD - Computes the singular value decomposition of an array. DIST - Creates array with each element proportional to its frequency.
LA_TRIDC - Computes the LU decomposition of a tridiagonal array. EXP - Returns the natural exponential function of given expression.
LA_TRIMPROVE - Improves the solution to a system of linear equa- FLOOR - Returns closest integer less than or equal to argument.
tions with a tridiagonal array. IMAGINARY - Returns the imaginary part of a complex value.
LA_TRIQL - Uses the QL and QR variants of the implicitly-shifted QR ISHFT - Performs integer bit shift.
algorithm to compute the eigenvalues and eigenvectors of an array.
LEEFILT - Performs the Lee filter algorithm on an image array.
LA_TRIRED - Reduces a real symmetric or complex Hermitian array
to real tridiagonal from. MATRIX_MULTIPLY - Calculates the IDL matrix-multiply operator
(#) of two (possibly transposed) arrays.
LA_TRISOL - Used in conjunction with LA_TRIDC to solve a set of
linear equations. MATRIX_POWER - Computes the product of a matrix with itself.
PNT_LINE - Returns the perpendicular distance between a point and a
Linear Systems line.
POLY_AREA - Returns the area of a polygon given the coordinates of
CHOLDC - Constructs Cholesky decomposition of a matrix. its vertices.
CHOLSOL - Solves set of linear equations (use with CHOLDC). PRIMES - Computes the first K prime numbers.
COND - Computes the condition number of a square matrix. PRODUCT - Returns the product of elements within an array.
CRAMER - Solves system of linear equations using Cramer’s rule. ROUND - Returns the integer closest to its argument.
CROSSP - Computes vector cross product. SPH_4PNT - Returns center and radius of a sphere given 4 points.
DETERM - Computes the determinant of a square matrix. SQRT - Returns the square root of X.
GS_ITER - Solves linear system using Gauss-Seidel iteration. TOTAL - Sums of the elements of an array.

Mathematics IDL Quick Reference


Functional List of IDL Routines 17

VOIGT - Calculates intensity of atomic absorption line (Voight) profile. GAUSSINT - Returns integral of Gaussian probability function.
T_CVF - Computes the cutoff value in a Student’s t distribution.
Multivariate Analysis
T_PDF - Computes Student’s t distribution.
CLUST_WTS - Computes cluster weights of array for cluster analysis. Sparse Arrays
CLUSTER - Performs cluster analysis.
CLUSTER_TREE - Computes the hierarchical clustering for a set of NOTE: SPRSIN must be used to convert to sparse storage format before
m items in an n-dimensional space. the other routines can be used.
CTI_TEST - Performs chi-square goodness-of-fit test. FULSTR - Restores a sparse matrix to full storage mode.
DENDRO_PLOT - Draws a two-dimensional dendrite plot on the cur- LINBCG - Solves a set of sparse linear equations using the iterative
rent direct graphics device if given a hierarchical tree cluster, as cre- biconjugate gradient method.
ated by CLUSTER_TREE.
READ_SPR - Reads a row-indexed sparse matrix from a file.
DENDROGRAM - Constructs a dendrogram and returns a set of verti-
ces and connectivity that can be used to visualize the dendrite plot if SPRSAB - Performs matrix multiplication on sparse matrices.
given a hierarchical tree cluster, as created by CLUSTER_TREE. SPRSAX - Multiplies sparse matrix by a vector.
DISTANCE_MEASURE - Computes the pairwise distance between SPRSIN - Converts matrix to row-index sparse matrix.
a set of items or observations.
SPRSTP - Constructs the transpose of a sparse matrix.
KW_TEST - Performs Kruskal-Wallis H-test.
WRITE_SPR - Writes row-indexed sparse array structure to a file.
M_CORRELATE - Computes multiple correlation coefficient.
P_CORRELATE - Computes partial correlation coefficient. Special Math Functions
PCOMP - Computes principal components/derived variables.
STANDARDIZE - Computes standardized variables. BESELI - Returns the I Bessel function of order N for X.
BESELJ - Returns the J Bessel function of order N for X.
Nonlinear Equations BESELK - Returns the K Bessel function of order N for X.
BESELY - Returns the Y Bessel function of order N for X.
BROYDEN - Solves nonlinear equations using Broyden’s method.
BETA - Returns the value of the beta function.
FX_ROOT - Computes real and complex roots of a univariate nonlinear
function using an optimal Müller’s method. ERF - Returns the value of an error function.
FZ_ROOTS - Finds the roots of a complex polynomial using ERFC - Returns the value of a complementary error function.
Laguerre’s method.
ERFCX - Returns the value of a scaled complementary error function.
NEWTON - Solves nonlinear equations using Newton’s method.
EXPINT - Returns the value of the exponential integral.
Optimization GAMMA - Returns the gamma function of X.
IBETA - Computes the incomplete beta function.
AMOEBA - Minimizes a function using downhill simplex method. IGAMMA - Computes the incomplete gamma function.
CONSTRAINED_MIN - Minimizes a function using Generalized LAGUERRE - Returns value of the associated Laguerre polynomial.
Reduced Gradient Method.
LEGENDRE - Returns value of the associated Legendre polynomial.
DFPMIN - Minimizes a function using Davidon-Fletcher-Powell
method. LNGAMMA - Returns logarithm of the gamma function of X.
POWELL - Minimizes a function using the Powell method. POLY - Evaluates polynomial function of a variable.
SIMPLEX - Use the simplex method to solve linear programming prob- SPHER_HARM - Returns value of the spherical harmonic function.
lems.
Statistical Fitting
Probability
COMFIT - Fits paired data using one of six common filtering functions.
BINOMIAL - Computes binomial distribution function.
CURVEFIT - Fits multivariate data with a user-supplied function.
CHISQR_CVF - Computes cutoff value in a Chi-square distribution.
FUNCT - Evaluates the sum of a Gaussian and a 2nd-order polynomial
CHISQR_PDF - Computes Chi-square distribution function. and optionally returns the value of its partial derivatives.
F_CVF - Computes the cutoff value in an F distribution. LADFIT - Fits paired data using least absolute deviation method.
F_PDF - Computes the F distribution function. LINFIT - Fits by minimizing the Chi-square error statistic.
GAUSS_CVF - Computes cutoff value in Gaussian distribution. REGRESS - Multiple linear regression.
GAUSS_PDF - Computes Gaussian distribution function. SVDFIT - Multivariate least squares fit using SVD method.

IDL Quick Reference Mathematics


18 Functional List of IDL Routines

Statistical Tools Transforms


FACTORIAL - Computes the factorial N!. BLK_CON - Convolves input signal with impulse-response sequence.
HIST_2D - Returns histogram of two variables. CHEBYSHEV - Returns the forward or reverse Chebyshev polynomial
expansion.
HISTOGRAM - Computes the density function of an array.
CONVOL - Convolves two vectors or arrays.
KURTOSIS - Computes statistical kurtosis of n-element vector.
FFT - Returns the Fast Fourier Transform of an array.
MAX - Returns the value of the largest element of an array.
HILBERT - Constructs a Hilbert transform.
MEAN - Computes the mean of a numeric vector.
HOUGH - Returns the Hough transform of a two-dimensional image.
MEANABSDEV - Computes the mean absolute deviation of a vector.
RADON - Returns the Radon transform of a two-dimensional image.
MEDIAN - Returns the median value of Array or applies a median filter.
WTN - Returns wavelet transform of the input array.
MIN - Returns the value of the smallest element of an array.
See Also - Wavelet Toolkit
MOMENT - Computes mean, variance, skewness, and kurtosis.
RANDOMN - Returns normally-distributed pseudo-random numbers. Object Class Library
RANDOMU - Returns uniformly-distributed pseudo-random numbers.
RANKS - Computes magnitude-based ranks.
SKEWNESS - Computes statistical skewness of an n-element vector.
Analysis Objects
SORT - Returns the indices of an array sorted in ascending order. IDLanROI - Represents a region of interest.
STDDEV - Computes the standard deviation of an n-element vector. IDLanROIGroup - Analytical representation of a group of regions of
TOTAL - Sums of the elements of an array. interest.
VARIANCE - Computes the statistical variance of an n-element vector.
File Format Objects
Time-Series Analysis
IDLffDICOM - Contains the data for one or more images embedded in a
DICOM Part 10 file.
A_CORRELATE - Computes autocorrelation.
IDLffDicomEx - Allows you to read and write data contained in a
C_CORRELATE - Computes cross correlation. DICOM file. See the Medical Imaging in IDL manual.
SMOOTH - Smooths with a boxcar average. IDLffDXF - Contains geometry, connectivity and attributes for graphics
primitives.
TS_COEF - Computes the coefficients for autoregressive time-series.
IDLffJPEG2000 - Contains the data for one or more images embed-
TS_DIFF - Computes the forward differences of a time-series. ded in a JPEG-2000 file as well as functionality for reading and
TS_FCAST - Computes future or past values of stationary time-series. writing JPEG-2000 files.

TS_SMOOTH - Computes moving averages of a time-series. IDLffLangCat - Finds and loads an XML language catalog.
IDLffMrSID - Used to query information about and load image data
Transcendental Functions from a MrSID (.sid) image file.
IDLffShape - Contains geometry, connectivity and attributes for graph-
ACOS - Returns the arc-cosine of X. ics primitives.

ALOG - Returns the natural logarithm of X. IDLffXMLDOMAttr - Represents an attribute that is part of an element
object in an XML document.
ALOG10 - Returns the logarithm to the base 10 of X.
IDLffXMLDOMCDATASection - Used to escape blocks of text in
ASIN - Returns the arc-sine of X. an XML document containing characters that would otherwise be
regarded as markup.
ATAN - Returns the arc-tangent of X.
IDLffXMLDOMCharacterData - Extension of the IDLffXML-
COS - Returns the cosine of X. DOMNode class that supplies a set of methods for accessing char-
COSH - Returns the hyperbolic cosine of X. acter data in the XML DOM tree.
IDLffXMLDOMComment - Represents the content of an XML com-
EXP - Returns the natural exponential function of a given expression. ment (characters between “<!--“ and “-->”).
SIN - Returns the trigonometric sine of X. IDLffXMLDOMDocument - Represents the entire XML document
SINH - Returns the hyperbolic sine of X. as the root of the XML document tree and by providing the primary
access to the document’s data.
TAN - Returns the tangent of X.
IDLffXMLDOMDocumentFragment - Represents a document
TANH - Returns the hyperbolic tangent of X. fragment in an XML document.
IDLffXMLDOMDocumentType - References a DocumentType
node in an XML document.

Object Class Library IDL Quick Reference


Functional List of IDL Routines 19

IDLffXMLDOMElement - References an element node in an XML IDLgrFont - Represents a typeface, style, weight, and point size that
document. may be associated with text objects.
IDLffXMLDOMEntity - References an entity, either parsed or IDLgrImage - Represents a mapping from a 2D array of data values to
unparsed, in an XML document. a 2D array of pixel colors, resulting in a flat 2D-scaled version of
the image, drawn at Z = 0.
IDLffXMLDOMEntityReference - References an entity reference
node in an XML document. IDLgrLegend - Provides a simple interface for displaying a legend.
IDLffXMLDOMNamedNodeMap - Container for IDLffXML- IDLgrLight - Represents a source of illumination for 3D graphic
DOM nodes that uses node names to access the nodes. objects.
IDLffXMLDOMNode - Abstract class used as a superclass for other IDLgrPalette - Represents a color lookup table that maps indices to
IDLffXMLDOM node classes. red, green, and blue values.
IDLffXMLDOMNodeIterator - Allows iterative navigation of the IDLgrPattern - Describes which pixels are filled and which are left
XML DOM tree. blank when an area is filled.
IDLffXMLDOMNodeList - Container for IDLffXMLDOM nodes. IDLgrPlot - Creates set of polylines connecting data points in 2D space.
IDLffXMLDOMNotation - Represents a notation in the XML DTD. IDLgrPolygon - Represents one or more polygons that share a set of
vertices and rendering attributes.
IDLffXMLDOMProcessingInstruction - Represents a process-
ing instruction in an XML document. IDLgrPolyline - Represents one or more polylines that share a set of
vertices and rendering attributes.
IDLffXMLDOMText - References a text node in the XML document.
IDLgrROI - Object graphics representation of a region of interest.
IDLffXMLDOMTreeWalker - Allows tree-walking navigation of the
XML DOM tree. IDLgrROIGroup - Object Graphics representation of a group of
regions of interest.
IDLffXMLSAX - Represents an XML SAX level 2 parser.
IDLgrSurface - A shaded or vector representation of a mesh grid. No
IDLgrMPEG - Creates an MPEG movie file from an array of image superclasses.
frames.
IDLgrSymbol - Represents a graphical element that is plotted relative
IDLgrVRML - Saves the contents of an Object Graphics hierarchy into to a particular position.
a VRML 2.0 format file.
IDLgrTessellator - Converts a simple concave polygon (or a simple
polygon with “holes”) into a number of simple convex polygons
Graphic Objects—Destination (general triangles).
IDLgrText - Represents one or more text strings that share common
IDL_Container - A container for other objects. rendering attributes.
IDLgrBuffer - An in-memory, off-screen destination object. IDLgrView - Represents a rectangular area in which graphics objects
IDLgrClipboard - A destination object representing the native clipboard. are drawn. It is a container for objects of the IDLgrModel class.

IDLgrPrinter - Represents a hardcopy graphics destination. IDLgrViewgroup - A simple container object that contains one or
more IDLgrView objects. An IDLgrScene can contain one or more
IDLgrWindow - Represents an on-screen area on a display device that of these objects.
serves as a graphics destination. IDLgrVolume - Represents mapping from a 3D array of data to a 3D
array of voxel colors, which, when drawn, are projected to two
Graphic Objects—Display dimensions.

IDL_Container - Object that holds other objects. iTool Framework Objects


IDLgrModel - Represents a graphical item or group of items that can
be transformed (rotated, scaled, and/or translated). IDLitCommand - The base functionality for the iTools command
buffer system.
IDLgrScene - Represents the entire scene to be drawn and serves as a
container of IDLgrView or IDLgrViewgroup objects. IDLitCommandSet - A container for IDLitCommand objects, which
allows a group of commands to be managed as a single item.
IDLgrView - Represents a rectangular area in which graphics objects
are drawn. It is a container for objects of the IDLgrModel class. IDLitComponent - A core or base component, from which all other
components subclass.
IDLgrViewgroup - A simple container object that contains one or
more IDLgrView objects. An IDLgrScene can contain one or more IDLitContainer - A specialization of the IDL_Container class that
of these objects. manages a collection of IDLitComponents and provides methods
for working with the Identifier system of the iTools framework.
Graphic Objects—Visualization IDLitData - A generic data storage object that can hold any IDL data
type available. It provides typing, metadata, and data change notifi-
cation functionality. When coupled with IDLitDataContainer, it
IDLgrAxis - Represents a single vector that may include a set of tick forms the element for the construction of composite data types.
marks, tick labels, and a title.
IDLitDataContainer - A container for IDLitData and IDLitDataCon-
IDLgrColorbar - Consists of a color-ramp with an optional framing tainer objects. This container is used to form hierarchical data struc-
box and annotation axis. tures. Data and DataContainer objects can be added and removed
to/from a DataContainer during program execution, allowing for
IDLgrContour - Draws a contour plot from data stored in a rectangu- dynamic creation of composite data types.
lar array or from a set of unstructured points.

IDL Quick Reference Object Class Library


20 Functional List of IDL Routines

IDLitDataOperation - A subclass to IDLitOperation that automates IDLsysMonitorInfo - Contains information about the display moni-
data access and automatically records information for the undo- tor or monitors attached to your system. Use this object to obtain
redo system. information about the monitor(s) when building applications that
use multiple monitors.
IDLitIMessaging - An interface providing common methods to send
or trigger messaging and error actions, which may occur during TrackBall - Translates widget events from a draw widget into transfor-
execution. mations that emulate a virtual trackball (for transforming object
graphics in three dimensions).
IDLitManipulator - The base functionality of the iTools manipulator
system.
Network Objects
IDLitManipulatorContainer - A container for IDLitManipulator
objects, which allows for the construction of manipulator hierar-
chies. This container implements the concept of a current manipula- IDLnetOGCWCS- Provides the ability to query and return data from
tor for the items it contains. and Open Geospatial Consortium Web Coverage Service server.
IDLitManipulatorManager - A specialization of the manipulator IDLnetOGCWMS- Provides the ability to query and return data from
container (IDLitManipulatorContainer), which acts as the root of and Open Geospatial Consortium Web Map Service server.
the manipulator hierarchy.
IDLitManipulatorVisual - The means for iTool developers to create
visual elements associated with an interactive manipulator.
Operating System Access
IDLitOperation - The basis for all iTool operations. It defines how an
operation is executed and how information about the operation is APP_USER_DIR - Provides access to the application user directory.
recorded for the command transaction (undo-redo) system.
APP_USER_DIR_QUERY - Locates existing application user
IDLitParameter - An interface providing parameter management directories.
methods to associate parameter names with IDLitData objects.
CALL_EXTERNAL - Calls a function in an external sharable object
IDLitParameterSet - A specialized subclass of the IDLitDataCon- and returns a scalar value.
tainer class. This class provides the ability to associate names with
contained IDLitData objects. CD - Sets and/or changes the current working directory.
IDLitReader - The definition of the interface and the process used to FILE_BASENAME - Returns the basename of a file path.
construct file readers for the iTools framework. When a new file
reader is constructed for the iTools system, a new class is sub- FILE_CHMOD - Changes file access permissions.
classed from this IDLitReader class. FILE_DELETE - Deletes files and empty directories.
IDLitTool - All the functionality provided by a particular instance of an FILE_DIRNAME - Returns the dirname of a file path.
IDL Intelligent Tool (iTool). This object provides the management
systems for the underlying tool functionality. FILE_EXPAND_PATH - Fully qualifies file and directory paths.
IDLitUI - A link between the underlying functionality of an iTool and the FILE_INFO - Returns status information about a file.
IDL widget interface.
FILE_MKDIR - Creates directories.
IDLitVisualization - The basis for all iTool visualizations. All visual-
ization components subclass from this class. FILE_SAME - Determines whether two different file names refer to the
same underlying file.
IDLitWindow - The basis for all iTool windows. All iTool windows
subclass from this class. FILE_SEARCH - Returns a string array containing the names of all
files matching the input path specification.
IDLitWriter - The definition of the interface and the process used to
construct file writers for the iTools framework. When a new file FILE_TEST - Test a file or directory for existence and other specific
writer is constructed for the iTools system, a new class is subclassed attributes.
from this IDLitWriter class.
FILE_WHICH - Searches for a specified file in a directory search path.
Miscellaneous Objects GET_DRIVE_LIST (Windows only) - Returns string array of the
names of valid drives/volumes for the file system.

IDL_Container - A container for other objects. GET_SCREEN_SIZE - Returns dimensions of the screen.
IDL_IDLBridge - Creates and controls a synchronous or an asynchro- GETENV - Returns the value of an environment variable.
nous slave IDL process that can operate sequentially or in parallel LINKIMAGE - Merges routines written in other languages with IDL at
with the main IDL process. run-time.
IDL_Savefile - Provides complete query and restore capabilities for PATH_SEP - Returns the proper file path segment separator character
IDL SAVE files. for the current operating system.
IDLcomActiveX - Creates an IDL object that encapsulates an POPD - Removes the top directory on the working directory stack main-
ActiveX control. tained by PUSHD/POPD.
IDLcomIDispatch - Creates an IDL object that encapsulates a COM PRINTD - Prints contents of the directory stack maintained by
object. PUSHD/POPD.
IDLjavaObject - An IDL object encapsulating a Java object. IDL pro- PUSHD - Pushes a directory to top of directory stack maintained by
vides data type and other translation services, allowing IDL pro- PUSHD/POPD.
grams to access the Java object’s methods and properties using
standard IDL syntax. SETENV - Adds or changes an environment variable.
SPAWN - Spawns child process for access to operating system.

Operating System Access IDL Quick Reference


Functional List of IDL Routines 21

Plotting BIT_FFS - Returns the index of the first bit set (non-zero) in an integer.
BIT_POPULATION - Returns the number of set (non-zero) bits in an
integer.
AXIS - Draws an axis of the specified type and scale. BREAKPOINT - Sets and clears breakpoints for debugging.
BAR_PLOT - Creates a bar graph. BYTEORDER - Converts between host and network byte ordering.
ERRPLOT - Plots error bars over a previously drawn plot. CALL_FUNCTION - Calls an IDL function.
IDLgrAxis - Displays a plot axis object that may include tick marks, CALL_METHOD - Calls an IDL object method.
text and a title.
CALL_PROCEDURE - Calls an IDL procedure.
IDLgrContour - Draws a contour plot from data stored in a rectangu-
lar array or from a set of unstructured points. CATCH - Declares and clears exception handlers.
IDLgrLegend - Provides a simple interface for displaying a legend. COMMAND_LINE_ARGS - Returns string values supplied when
the user starts IDL with the -arg or -args command line options.
IDLgrPlot - Creates a set of polylines connecting data points in two-
dimensional space. CPU - Changes the values stored in the read-only !CPU system variable.
IDLgrSymbol - Represents a graphical element that is plotted relative CREATE_STRUCT - Creates and concatenates structures.
to a particular position. COMPILE_OPT - Change default rules for compiling routines.
IPLOT - Creates an iTool and associated user interface (UI) configured DEFINE_KEY - Programs keyboard function keys.
to display and manipulate plot data.
DEFINE_MSGBLK - Defines and loads a new message block into the
LABEL_DATE - Labels axes with dates. Use with [XYZ]TICKFOR- current IDL session.
MAT keyword.
DEFINE_MSGBLK_FROM_FILE - Reads the definition of a mes-
OPLOT - Plots vector data over a previously-drawn plot. sage block from a file, and loads it into the current IDL session.
OPLOTERR - Draws error bars over a previously drawn plot. DEFSYSV - Creates a new system variable.
PLOT - Plots vector arguments as X versus Y graphs. EXECUTE - Compiles, executes IDL statements contained in a string.
PLOT_3DBOX - Plots function of two variables inside 3D box. EXIT - Quits IDL and exits back to the operating system.
PLOT_FIELD - Plots a 2D field using arrows. EXPAND_PATH - Expands path-definition string into full path name
PLOTERR - Plots individual data points with error bars. for use with the !PATH system variable.

PLOTS - Plots vectors and points. HEAP_FREE - Recursively frees all heap variables referenced by its
input argument.
POLYFILL - Fills the interior of a polygon.
HEAP_GC - Performs “garbage collection” on heap variables.
POLYFILLV - Returns subscripts of pixels inside a polygon.
HEAP_NOSAVE - Used to clear the save attribute of pointer or object
PROFILE - Extracts a profile from an image. heap variables.
PROFILES - Interactively examines image profiles. HEAP_SAVE - Used to query whether a pointer or object heap variable
is savable. It can also be used to change the heap variable save
THREED - Plots a 2D array as a pseudo 3D plot. attribute.
TRIANGULATE - Constructs Delaunay triangulation of a planar set of IDELETE - Deletes a tool in the iTools system.
points.
IDL_VALIDNAME - Determines whether a string may be used as a
TRIGRID - Interpolates irregularly-gridded data to a regular grid from a valid IDL variable name or structure tag name.
triangulation.
IDLITSYS_CREATETOOL - Creates an instance of the specified
USERSYM - Defines a new plotting symbol. tool registered within the iTools system.
VEL - Draws a velocity (flow) field with streamlines. IGETCURRENT - Gets the identifier of (and optionally, an object ref-
VELOVECT - Draws a 2D velocity field plot. erence to) the current tool in the IDL Intelligent Tools system.

WF_DRAW - Draws weather fronts with smoothing. IREGISTER - Registers iTool object classes with the iTools system.
XPLOT3D - Utility for creating and interactively manipulating 3D IRESET - Resets the iTools session.
plots. IRESOLVE - Resolves all IDL code within the iTools directory, as well
XYOUTS - Draws text on currently-selected graphics device. as all other IDL code required for the iTools framework.
ISETCURRENT- Sets the current tool in the iTools system.
Programming and IDL Control KEYWORD_SET - Returns True if given expression is defined and
nonzero or an array.
LMGR - Determines the type of license used by the current IDL session.
APP_USER_DIR - Provides access to the application user directory.
LOGICAL_AND - Performs a logical AND operation on its argu-
APP_USER_DIR_QUERY - Locates existing application user ments.
directories.
LOGICAL_OR - Performs a logical OR operation on its arguments.
ARG_PRESENT - Returns TRUE if the value of the specified vari-
able can be passed back to the caller. LOGICAL_TRUE - Determines whether its arguments are non-zero
(or non-NULL).

IDL Quick Reference Plotting


22 Functional List of IDL Routines

MEMORY - Provides information about the amount of dynamic mem- TEMPORARY - Returns a temporary copy of a variable, and sets the
ory currently in use by the IDL session. original variable to “undefined”.
MESSAGE - Issues error and informational messages. TIME_TEST2 - Performs speed benchmarks for IDL.
N_ELEMENTS - Returns the number of elements contained in an WAIT - Suspends execution of an IDL program for a specified period.
expression or variable.
N_PARAMS - Returns the number of non-keyword parameters used in
calling an IDL procedure or function.
Query Routines
N_TAGS - Returns the number of tags in a structure.
OBJ_CLASS - Determines the class name of an object. GET_LOGIN_INFO - Returns the name of the computer running the
IDL process, as well as the user’s login name.
OBJ_DESTROY - Destroys an object reference.
QUERY_ASCII - Obtains information about an ASCII file.
OBJ_HASMETHOD - Determines whether an object class imple-
ments or inherits a specified method or methods. QUERY_BMP - Obtains information about a BMP image file.
OBJ_ISA - Determines inheritance relationship of an object. QUERY_CSV - Obtains information about a comma-separated values
(CSV) file.
OBJ_NEW - Creates an object reference.
QUERY_DICOM - Tests file for compatibility with READ_DICOM.
OBJ_VALID - Verifies validity of object references.
QUERY_GIF - Obtains information about a GIF image file.
ON_ERROR - Designates the error recovery method.
QUERY_IMAGE - Determines if a file is recognized as an image file.
ON_IOERROR - Declares I/O error exception handler.
QUERY_JPEG - Obtains information about a JPEG image file.
PATH_CACHE - Controls IDL’s path caching mechanism.
QUERY_JPEG2000 - Obtains information about a JPEG 2000 image
PREF_COMMIT - Commits IDL preferences in the pending state. file.
PREF_GET - Returns information about IDL preferences. QUERY_MRSID - Obtains information about a MrSID image file.
PREF_MIGRATE - Imports IDL preferences from other versions of QUERY_PICT - Obtains information about a PICT image file.
IDL for use by the currently running version.
QUERY_PNG - Obtains information about a PNG image file.
PREF_SET - Sets new values for IDL preferences.
QUERY_PPM - Obtains information about a PPM image file.
PROFILER - Accesses the IDL Code Profiler used to analyze perfor-
mance of applications. QUERY_SRF - Obtains information about an SRF image file.
PTR_FREE - Destroys a pointer. QUERY_TIFF - Obtains information about a TIFF image file.
PTR_NEW - Creates a pointer. QUERY_WAV - Checks that the file is actually a .WAV file and that the
READ_WAV function can read the data in the file.
PTR_VALID - Verifies the validity of pointers.
ROUTINE_FILEPATH - Returns the full path to a currently-com-
PTRARR - Creates an array of pointers. piled procedure or function (or a list of procedures and functions).
RECALL_COMMANDS - Returns entries in IDL’s command recall
buffer. Saving/Restoring a Session
REGISTER_CURSOR - Associates a given name with cursor infor-
mation, used in conjunction with IDLgrWindow::SetCurrentCursor.
RESOLVE_ALL - Compiles any uncompiled routines. HEAP_NOSAVE - Used to clear the save attribute of pointer or object
heap variables.
RESOLVE_ROUTINE - Compiles a routine.
HEAP_SAVE - Used to query whether a pointer or object heap vari-
RETALL - Returns control to the main program level. able is savable. It can also be used to change the heap variable save
attribute.
RETURN - Returns control to the next-higher program level.
IDL_Savefile - Object that provides complete query and restore capa-
ROUTINE_INFO - Provides information about compiled procedures bilities for IDL SAVE files.
and functions.
JOURNAL - Logs IDL commands to a file.IDL.
STOP - Stops the execution of a running program or batch file.
RESTORE - Restores IDL variables and routines in an IDL SAVE file.
STRMESSAGE - Returns the text of a given error number.
SAVE - Saves variables, system variables, and IDL routines in a file for
STRUCT_ASSIGN - Uses “Relaxed Structure Assignment” to copy later use.
structures.
STRUCT_HIDE - Prevents the IDL HELP procedure from displaying
information about structures or objects. Scientific Data Formats
SWAP_ENDIAN - Reverses the byte ordering of scalars, arrays or
structures. CDF Routines - see the Scientific Data Formats chapter of this man-
SWAP_ENDIAN_INPLACE - Reverses the byte ordering of scalars, ual in quickref.pdf, located on your IDL DVD.
arrays or structures. Differs from the SWAP_ENDIAN function in EOS Routines - see the Scientific Data Formats chapter of this man-
that it alters the input data in place rather than making a copy.
ual in quickref.pdf, located on your IDL DVD.
TAG_NAMES - Returns the names of tags in a structure.

Query Routines IDL Quick Reference


Functional List of IDL Routines 23

HANNING - Opens a GUI to view contents of HDF5 files. TS_SMOOTH - Computes moving averages of a time-series.
HDF Routines - see the Scientific Data Formats chapter of this man- WTN - Returns wavelet transform of the input array.
ual in quickref.pdf, located on your IDL DVD.
See Also - Wavelet Toolkit
HDF5 Routines - see the Scientific Data Formats chapter of this man-
ual in quickref.pdf, located on your IDL DVD.
HEAP_FREE - Opens a GUI to view contents of HDF, HDF-EOS, or
Statements
NetCDF file.
HDF_READ - Extracts HDF, HDF-EOS, and NetCDF data and meta- Compound Statements
data into an output structure.
NCDF Routines - see the Scientific Data Formats chapter of this
manual in quickref.pdf, located on your IDL DVD. BEGIN...END - Defines a block of statements.

Conditional Statements
Scope Functions
IF...THEN...ELSE - Conditionally executes a statement or block of
statements.
SCOPE_LEVEL - Returns the current routine’s scope level.
CASE - Selects one statement for execution, depending on the value of
SCOPE_TRACEBACK - Returns the current interpreter call stack an expression.
(the sequence of routine calls to the present point).
SWITCH - Selects one statement for execution, depending upon the
SCOPE_VARFETCH - Returns variables outside the current rou- value of an expression.
tine’s local scope.
SCOPE_VARNAME - Returns the names of variables outside current Loop Statements
routine’s local scope.

FOR - Executes one or more statements repeatedly, incrementing or dec-


Signal Processing rementing a variable with each repetition, until a condition is met.
REPEAT...UNTIL - Repeats statement(s) until expression evaluates to
true. Subject is always executed at least once.
A_CORRELATE - Computes autocorrelation.
WHILE...DO - Performs statement(s) as long as expression evaluates to
BLK_CON - Convolves input signal with impulse-response sequence. true. Subject is never executed if condition is initially false.
BUTTERWORTH - Returns the absolute value of the low-pass Butter-
worth kernel. Jump Statements
CANNY - Implements the Canny edge-detection algorithm.
BREAK - Exits from a loop (FOR, WHILE, REPEAT), CASE, or
C_CORRELATE - Computes cross correlation. SWITCH statement.
CONVOL - Convolves two vectors or arrays. CONTINUE - Starts the next iteration of the enclosing FOR, WHILE,
CORRELATE - Computes the linear Pearson correlation. or REPEAT loop.

DIGITAL_FILTER - Calculates coefficients of a non-recursive, digital GOTO - Transfers program control to point specified by label.
filter.
FFT - Returns the Fast Fourier Transform of an array. Functions and Procedures
HANNING - Creates Hanning and Hamming windows.
COMPILE_OPT - Gives IDL compiler information that changes the
HILBERT - Constructs a Hilbert transform. default rules for compiling functions or procedures.
INTERPOL - Performs linear interpolation on vectors. FORWARD_FUNCTION - Causes argument(s) to be interpreted as
functions rather than variables (versions of IDL prior to 5.0 used
IR_FILTER - Performs the infinite or finite impulse response filter on parentheses to declare arrays).
data.
FUNCTION - Defines a function.
LEEFILT - Performs the Lee filter algorithm on an image array.
PRO - Defines a procedure.
M_CORRELATE - Computes multiple correlation coefficient.
MEDIAN - Returns median value of an array or applies a median filter. Variable Scope
P_CORRELATE - Computes partial correlation coefficient.
R_CORRELATE - Computes rank correlation. COMMON - Creates a common block.
SAVGOL - Returns coefficients of Savitzky-Golay smoothing filter.
SMOOTH - Smooths with a boxcar average.
String Processing
TS_COEF - Computes the coefficients for autoregressive time-series.
TS_DIFF - Computes the forward differences of a time-series. FILE_BASENAME - Returns the basename of a file path.
TS_FCAST - Computes future or past values of stationary time-series. FILE_DIRNAME - Returns the dirname of a file path.

IDL Quick Reference Scope Functions


24 Functional List of IDL Routines

IDL_BASE64 - Converts between byte arrays and MIME Base64


encoded scalar strings. Utilities
STRCMP - Compares two strings.
STRCOMPRESS - Removes whitespace from a string. EFONT - Interactive vector font editor and display tool.
STREGEX - Performs regular expression matching. IDLEXBR_ASSISTANT- Launches the Export Bridge Assistant.
STRING - Converts arguments to string type. SLIDE_IMAGE - Creates a scrolling graphics window for examining
large images.
STRJOIN - Collapses a string scalar or array into merged strings.
MAKE_RT - Creates a stand-alone IDL runtime distribution for one or
STRLEN - Returns the length of a string. more platforms.
STRLOWCASE - Converts a string to lower case. XBM_EDIT - Creates, edits bitmap icons for IDL widget button labels.
STRMATCH - Compares search string against input string expression. XDISPLAYFILE - Displays ASCII text file in scrolling text widget.
STRMID - Extracts a substring from a string. XDXF - Utility to display and interactively manipulate DXF objects.
STRPOS - Finds first occurrence of a substring within a string. XFONT - Creates modal widget to select and view an X Windows font.
STRPUT - Inserts the contents of one string into another. XINTERANIMATE - Displays animated sequence of images.
STRSPLIT - Splits its input string argument into separate substrings, XLOADCT - Displays a tool for selecting and setting the current color
according to the specified pattern. table.
STRTRIM - Removes leading and/or trailing blanks from string. XMTOOL - Displays a tool for viewing XMANAGER widgets.
STRUPCASE - Converts a string to upper case. XOBJVIEW - Displays object viewer widget.
XOBJVIEW_ROTATE - Programmatically rotate the object currently
Structures displayed in XOBJVIEW.
XOBJVIEW_WRITE_IMAGE - Write the object currently dis-
played in XOBJVIEW to an image file.
IDL_VALIDNAME - Determines whether a string may be used as a XPALETTE - Displays a tool for creating and modifying color tables.
valid IDL variable name or structure tag name.
N_TAGS - Returns the number of tags in a structure. XPCOLOR - Adjusts the value of the current foreground plotting color,
!P.COLOR.
REPLICATE - Creates an array of given dimensions, filled with speci-
fied value. XPLOT3D - Utility for creating and interactively manipulating 3D
plots.
STRUCT_ASSIGN - Uses “Relaxed Structure Assignment” to copy
structures. XROI - Utility for interactively defining and obtaining information about
regions of interest.
STRUCT_HIDE - Prevents the IDL HELP procedure from displaying
information about structures or objects. XSURFACE - Provides a graphical interface to the SURFACE and
SHADE_SURF commands.
TAG_NAMES - Returns the names of tags in a structure.
XVAREDIT - Utility for editing any IDL variable.
XVOLUME - Utility for viewing and interactively manipulating vol-
Type Conversion umes and isosurfaces.
XVOLUME_ROTATE - Utility for rotating a volume displayed in
XVOLUME.
BYTE - Converts argument to byte type.
XVOLUME_WRITE_IMAGE - Utility for writing a volume dis-
COMPLEX - Converts argument to complex type. played in XVOLUME to an image file.
DCOMPLEX - Converts argument to double-precision complex type.
DOUBLE - Converts argument to double-precision type. Wavelet Toolkit
FIX - Converts argument to integer type, or type specified by TYPE key-
word.
FLOAT - Converts argument to single-precision floating-point. Widget Commands and Visualization
LONG - Converts argument to longword integer type. Tools
LONG64 - Converts argument to 64-bit integer type.
WV_APPLET - Runs the IDL Wavelet Toolkit GUI.
STRING - Converts argument to string type.
WV_CW_WAVELET - Compound widget used to select and display
UINT - Converts argument to unsigned integer type. wavelet functions.
ULONG - Converts argument to unsigned longword integer type. WV_IMPORT_DATA - Allows user to add a variable to the currently
active WV_APPLET widget from the IDL> command prompt.
ULONG64 - Converts argument to unsigned 64-bit integer type.
WV_IMPORT_WAVELET - Allows user to add wavelet functions to
the IDL Wavelet Toolkit.

Structures IDL Quick Reference


Functional List of IDL Routines 25

WV_PLOT3D_WPS - Runs the GUI for 3D visualization of the WIDGET_TAB - Creates tab widgets.
wavelet power spectrum.
WIDGET_TABLE - Creates table widgets.
WV_PLOT_MULTIRES - Runs GUI for multiresolution analysis.
WIDGET_TEXT - Creates text widgets.
WV_TOOL_DENOISE - Runs the GUI for wavelet filtering and
denoising. WIDGET_TREE - Creates tree widgets.
WIDGET_TREE_MOVE - Copies and moves tree widget nodes
Wavelet Transform from one tree to another or within the same tree.
XMANAGER - Provides event loop manager for IDL widgets.
WV_CWT - Returns the one-dimensional continuous wavelet transform XMNG_TMPL - Template for creating widgets.
of the input array.
XMTOOL - Displays tool for viewing XMANAGER widgets.
WV_DENOISE - Uses the wavelet transform to filter (or de-noise) a
multi-dimensional array. XREGISTERED - Returns registration status of a given widget.
WV_DWT - Returns the multi-dimensional discrete wavelet transform
of the input array. Widget Routines, Compound
WV_PWT - Returns the partial wavelet transform of the input vector.

Wavelet Functions CW_TMPL - Template for compound widgets that use XMANAGER.

WV_FN_COIFLET - Constructs wavelet coefficients for the coiflet Animation


wavelet function.
WV_FN_DAUBECHIES - Constructs wavelet coefficients for the CW_ANIMATE - Creates a compound widget for animation.
Daubechies wavelet function. CW_ANIMATE_GETP - Gets pixmap window IDs used by
WV_FN_GAUSSIAN - Constructs wavelet coefficients for the Gaus- CW_ANIMATE.
sian wavelet function. CW_ANIMATE_LOAD - Loads images into CW_ANIMATE.
WV_FN_HAAR - Constructs wavelet coefficients for the Haar wavelet CW_ANIMATE_RUN - Displays images loaded into
function. CW_ANIMATE.
WV_FN_MORLET - Constructs wavelet coefficients for the Morlet
wavelet function. Color Manipulation
WV_FN_PAUL - Constructs wavelet coefficients for the Paul wavelet
function.
CW_CLR_INDEX - Creates compound widget for the selection of a
WV_FN_SYMLET - Constructs wavelet coefficients for the symlet color index.
wavelet function.
CW_COLORSEL - Creates compound widget that displays all colors
in current colormap.
Widget Routines CW_PALETTE_EDITOR_SET - Sets the CW_LIGHT_EDITOR
properties.
CW_PALETTE_EDITOR - Creates compound widget to display and
WIDGET_ACTIVEX - Create an ActiveX control and place it into an edit color palettes.
IDL widget hierarchy.
CW_PALETTE_EDITOR_GET - Gets the
WIDGET_BASE - Creates base widget (containers for other widgets). CW_PALETTE_EDITOR properties.
WIDGET_BUTTON - Creates button widgets. CW_PALETTE_EDITOR_SET - Sets the
WIDGET_COMBOBOX - Creates editable droplist widgets. CW_PALETTE_EDITOR properties.
WIDGET_CONTROL - Realizes, manages, and destroys widgets. CW_RGBSLIDER - Creates compound widget with sliders for
adjusting RGB color values.
WIDGET_DISPLAYCONTEXTMENU - Displays a context-sen-
sitive menu.
Data Entry and Display
WIDGET_DRAW - Creates drawable widgets.
WIDGET_DROPLIST - Creates droplist widgets. CW_FIELD - Creates a widget data entry field.
WIDGET_EVENT - Returns events for the widget hierarchy. CW_FILESEL - Creates compound widget for file selection.
WIDGET_INFO - Obtains information about widgets. CW_FORM - Creates compound widget for creating forms.
WIDGET_LABEL - Creates label widgets.
Image/Data Manipulation
WIDGET_LIST - Creates list widgets.
WIDGET_PROPERTYSHEET - Creates a property sheet widget, CW_DEFROI - Creates compound widget used to define region of
which exposes the properties of an IDL object in a graphical inter- interest.
face. This widget transparently handles property value changes.
CW_LIGHT_EDITOR - Creates compound widget to edit properties
WIDGET_SLIDER - Creates slider widgets. of existing IDLgrLight objects in a view.

IDL Quick Reference Widget Routines


26 Functional List of IDL Routines

CW_LIGHT_EDITOR_GET - Gets the CW_LIGHT_EDITOR CW_FSLIDER - Creates slider that selects floating-point values.
properties.
CW_PDMENU - Creates widget pulldown menus.
CW_ZOOM - Creates widget for displaying zoomed images.

Orientation Window Routines


CW_ARCBALL - Creates compound widget for intuitively specifying IDLgrWindow - Represents an on-screen area on a display device that
3D orientations. serves as a graphics destination.
CW_ORIENT - Creates compound widget used to interactively adjust WDELETE - Deletes IDL graphics windows.
the 3D drawing transformation.
WINDOW - Creates window for the display of graphics or text.
User Interface WSET - Selects the current window.
WSHOW - Exposes or hides the designated window.
CW_BGROUP - Creates button group for use as a menu.

Window Routines IDL Quick Reference


Alphabetical List of
IDL Routines
This quick reference guide contains an alphabetical listing of all IDL routines. The alphabetical listing
contains all functions, procedures, statements, and objects, including the syntax of each.

IDL Quick Reference 27


28

IDL Syntax Conventions


Function: Result = FUNCTION( Argument1 [, Argument2] [, KEYWORD1=value] [, /KEYWORD2] )
Procedure: PROCEDURE, Argument1 [, Argument2] [, KEYWORD1={value1 | value2}] [, /KEYWORD2]
Statement: IF expression THEN statement [ ELSE statement ]

Elements of Syntax

Element Description

[ ] (Square brackets) Indicates that the contents are optional.

[ ] (Italicized square brackets) Indicates that the square brackets are part of the statement (used to
define an array).

Argument Arguments are shown in italics, and must be specified in the order
listed.

KEYWORD Keywords are all caps, and can be specified in any order. For functions,
all arguments and keywords must be contained within parentheses.

/KEYWORD Indicates a boolean keyword.

Italics Indicates arguments, expressions, or statements for which you must


provide values.

{ } (Braces) • Indicates that you must choose one of the values they contain
• Encloses a list of possible values, separated by vertical lines ( | )
• Encloses useful information about a keyword
• Defines an IDL structure (this is the only case in which the braces are
included in the statement).

| (Vertical lines) Separates multiple values or keywords.

[, Value1, ... , Valuen] Indicates that any number of values can be specified.

[, Value1, ... , Value8] Indicates the maximum number of values that can be specified.

Square Brackets ( [ ] )
• Content between square brackets is optional. Pay close attention to the grouping of square brackets.
Consider the following examples:
ROUTINE_NAME, Value1 [, Value2] [, Value3] : You must include Value1. You do not have to include Value2 or Value3.
Value2 and Value3 can be specified independently.
ROUTINE_NAME, Value1 [, Value2, Value3] : You must include Value1. You do not have to include Value2 or Value3, but you
must include both Value2 and Value3, or neither.
ROUTINE_NAME [, Value1 [, Value2]] : You can specify Value1 without specifying Value2, but if you specify Value2, you
must also specify Value1.

Alphabetical List of IDL Routines IDL Quick Reference


29

• Do not include square brackets in your statement unless the brackets are italicized. Consider the fol-
lowing syntax:
Result = KRIG2D( Z [, X, Y] [, BOUNDS=[xmin, ymin, xmax, ymax]] )
An example of a valid statement is:
R = KRIG2D( Z, X, Y, BOUNDS=[0,0,1,1] )
• Note that when [, Value1, ... , Valuen] is listed, you can specify any number of arguments. When an
explicit number is listed, as in [, Value1, ... , Value8], you can specify only as many arguments as are
listed.
Braces ( { } )
• For certain keywords, a list of the possible values is provided. This list is enclosed in braces, and the
choices are separated by a vertical line ( | ). Do not include the braces in your statement. For example,
consider the following syntax:
READ_JPEG [, TRUE={1 | 2 | 3}]
In this example, you must choose either 1, 2, or 3. An example of a valid statement is:
READ_JPEG, TRUE=1
• Braces are used to enclose the allowable range for a keyword value. Unless otherwise noted, ranges
provided are inclusive. Consider the following syntax:
Result = CVTTOBM( Array [, THRESHOLD=value{0 to 255}] )
An example of a valid statement is:
Result = CVTTOBM( A, THRESHOLD=150 )
• Braces are also used to provide useful information about a keyword. For example:
[, LABEL=n{label every nth gridline}]
Do not include the braces or their content in your statement.
• Certain keywords are prefaced by X, Y, or Z. Braces are used for these keywords to indicate that you
must choose one of the values it contains. For example, [{X | Y}RANGE=array] indicates that you
can specify either XRANGE=array or YRANGE=array.
• Note that in IDL, braces are used to define structures. When defining a structure, you do want to
include the braces in your statement.
Italics
• Italicized words are arguments, expressions, or statements for which you must provide values. The
value you provide can be a numerical value, such as 10, an expression, such as DIST(100), or a named
variable. For keywords that expect a string value, the syntax is listed as KEYWORD=string. The value
you provide can be a string, such as 'Hello' (enclosed in single quotation marks), or a variable that
holds a string value.
• The italicized values that must be provided for keywords are listed in the most helpful terms possible.
For example, [, XSIZE=pixels] indicates that the XSIZE keyword expects a value in pixels, while
[, ORIENTATION=ccw_degrees_from_horiz] indicates that you must provide a value in degrees, mea-
sured counter-clockwise from horizontal.

IDL Quick Reference Alphabetical List of IDL Routines


30

Specifying Keywords
• Certain keywords are boolean, meaning they can be set to either 0 or 1. These keywords are switches
used to turn an option on and off. Usually, setting such keywords equal to 1 causes the option to be
turned on. Explicitly setting the keyword to 0 (or not including the keyword) turns the option off. All
keywords in this reference that are preceded by a slash can be set by prefacing them by the slash. For
example, SURFACE, DIST(10), /SKIRT is a shortcut for SURFACE, DIST(10), SKIRT=1. To turn
the option back off, you must set the keyword equal to 0, as in SURFACE, DIST(10), SKIRT=0.
In rare cases, a keyword’s default value is 1. In these cases, the syntax is listed as KEYWORD=0, as in
SLIDE_IMAGE [, Image] [, CONGRID=0]. In this example, CONGRID is set to 1 by default. If you
specify CONGRID=0, you can turn it back on by specifying either /CONGRID or CONGRID=1.
• Some keywords are used to obtain values that can be used upon return from the function or procedure.
These keywords are listed as KEYWORD=variable. Any valid variable name can be used for these
keywords, and the variable does not need to be defined first. Note, however that when a keyword calls
for a named variable, only a named variable can be used—sending an expression causes an error.
For example, the WIDGET_CONTROL procedure can return the user values of widgets in a named
variable using the GET_UVALUE keyword. To return the user value for a widget ID (contained in the
variable mywidget) in the variable userval, you would use the command:
WIDGET_CONTROL, mywidget, GET_UVALUE = userval
Upon return from the procedure, userval contains the user value. Note that userval did not have to be
defined before the call to WIDGET_CONTROL.
• Some routines have keywords that are mutually exclusive, meaning only one of the keywords can be
present in a given statement. These keywords are grouped together, and separated by a vertical line.
For example, consider the following syntax:
PLOT, [X,] Y [, /DATA | , /DEVICE | , /NORMAL]
In this example, you can choose either DATA, DEVICE, or NORMAL, but not more than one. An
example of a valid statement is:
PLOT, SIN(A), /DEVICE
• Keywords can be abbreviated to their shortest unique length. For example, the XSTYLE keyword can
be abbreviated to XST because there are no other keywords in IDL that begin with XST. You cannot
shorten XSTYLE to XS, however, because there are other keywords that begin with XS, such as
XSIZE.

Alphabetical List of IDL Routines IDL Quick Reference


Alphabetical List of IDL Routines 31

Alphabetical Listing
The following alphabetical listing contains all IDL APP_USER_DIR_QUERY - Allows searches for application user
directories.
functions, procedures, and statements included in Result = APP_USER_DIR_QUERY(AuthorDirname,
IDL version 7.1. AppDirname [, COUNT=variable]
[, /EXCLUDE_CURRENT] [RESTRICT keywords]
A [QUERY keywords] )
ARG_PRESENT - Returns TRUE if the value of the specified vari-
able can be passed back to the caller.
A_CORRELATE - Computes autocorrelation.
Result = ARG_PRESENT(Variable)
Result = A_CORRELATE(X, Lag [, /COVARIANCE]
[, /DOUBLE] ) ARRAY_EQUAL - Provides a fast way to compare data for equality
in situations where the index of the elements that differ are not of
ABS - Returns the absolute value of X. interest.
Result = ABS(X [, Thread pool keywords]) Result = ARRAY_EQUAL( Op1 , Op2
[, /NO_TYPECONV ] )
ACOS - Returns the arc-cosine of X.
Result = ACOS(X [, Thread pool keywords]) ARRAY_INDICES - Converts one-dimensional subscripts of an array
into corresponding multi-dimensional subscripts.
ADAPT_HIST_EQUAL - Performs adaptive histogram equalization Result = ARRAY_INDICES(Array, Index
Result = ADAPT_HIST_EQUAL (Image [, CLIP=value] [, /DIMENSIONS] )
[, FCN=vector] [, NREGIONS=nregions] [, TOP=value] )
ARROW - Draws line with an arrow head.
ALOG - Returns the natural logarithm of X. ARROW, X0, Y0, X1, Y1 [, /DATA | , /NORMALIZED]
Result = ALOG(X [, Thread pool keywords]) [, HSIZE=length] [, COLOR=index] [, HTHICK=value]
[, /SOLID] [, THICK=value]
ALOG10 - Returns the logarithm to the base 10 of X.
Result = ALOG10(X [, Thread pool keywords]) ASCII_TEMPLATE - Presents a GUI that generates a template defin-
ing an ASCII file format.
AMOEBA - Minimizes a function using downhill simplex method. Result = ASCII_TEMPLATE([Filename]
Result = AMOEBA( Ftol [, FUNCTION_NAME=string] [, BROWSE_LINES=lines] [, CANCEL=variable]
[, FUNCTION_VALUE=variable] [, NCALLS=value] [, GROUP=widget_id] )
[, NMAX=value] [, P0=vector, SCALE=vector | ,
SIMPLEX=array] ) ASIN - Returns the arc-sine of X.
Result = ASIN(X [, Thread pool keywords])
ANNOTATE - Starts IDL widget used to interactively annotate images
and plots with text and drawings. ASSOC - Associates an array structure with a file.
ANNOTATE [, COLOR_INDICES=array] Result = ASSOC( Unit, Array_Structure [, Offset]
[, DRAWABLE=widget_id | , WINDOW=index] [, /PACKED] )
[, LOAD_FILE=filename] [, /TEK_COLORS] ATAN - Returns the arc-tangent of X.
APP_USER_DIR - Provides access to the application user directory. Result = ATAN(X [, /PHASE] [, Thread pool keywords])
Result = APP_USER_DIR(AuthorDirname, AuthorDesc, or
AppDirname, AppDesc, AppReadmeText, Result = ATAN(Y, X) [, Thread pool keywords])
AppReadmeVersion
[, AUTHOR_README_TEXT=string array]
[, AUTHOR_README_VERSION=string]
[, RESTRICT_APPVERSION=string]
[, /RESTRICT_ARCH] [, /RESTRICT_FAMILY |
/RESTRICT_OS] [, /RESTRICT_FILE_OFFSET_BITS]
[, /RESTRICT_IDL_RELEASE]
[, /RESTRICT_MEMORY_BITS] )

IDL Quick Reference


32 Alphabetical List of IDL Routines

AXIS - Draws an axis of the specified type and scale. BEGIN...END - Defines a block of statements.
AXIS [, X [, Y [, Z]]] [, /SAVE] [, XAXIS={0 | 1} | BEGIN
YAXIS={0 | 1} | ZAXIS={0 | 1 | 2 | 3}] [, /XLOG] statements
[, /YNOZERO] [, /YLOG] [, /ZLOG] END | ENDIF | ENDELSE | ENDFOR | ENDREP |
Graphics Keywords: [, CHARSIZE=value] ENDWHILE
[, CHARTHICK=integer] [, COLOR=value] [, /DATA | , BESELI - Returns the I Bessel function of order N for X.
/DEVICE | , /NORMAL] [, FONT=integer] [, /NODATA]
Result = BESELI(X, N [, /DOUBLE] [, ITER=variable])
[, /NOERASE] [, SUBTITLE=string] [, /T3D]
[, TICKLEN=value] BESELJ - Returns the J Bessel function of order N for X.
[, {X | Y | Z}CHARSIZE=value] Result = BESELJ(X, N [, /DOUBLE] [, ITER=variable])
[, {X | Y | Z}GRIDSTYLE=integer{0 to 5}]
BESELK - Returns the K Bessel function of order N for the X.
[, {X | Y | Z}MARGIN=[left, right]]
Result = BESELK(X, N [, /DOUBLE] [, ITER=variable])
[, {X | Y | Z}MINOR=integer]
[, {X | Y | Z}RANGE=[min, max]] BESELY - Returns the Y Bessel function of order N for X.
[, {X | Y | Z}STYLE=value] Result = BESELY(X, N [, /DOUBLE] [, ITER=variable])
[, {X | Y | Z}THICK=value] BETA - Returns the value of the beta function.
[, {X | Y | Z}TICKFORMAT=string or a vector of
Result = BETA( Z, W [, /DOUBLE] )
strings] [, {X | Y | Z}TICKINTERVAL=value]
[, {X | Y | Z}TICKLAYOUT=scalar] BILINEAR - Computes array using bilinear interpolation.
[, {X | Y | Z}TICKLEN=value] Result = BILINEAR(P, IX, JY [, MISSING=value] )
[, {X | Y | Z}TICKNAME=string_array] BIN_DATE - Converts ASCII date/time string to binary string.
[, {X | Y | Z}TICKS=integer] Result = BIN_DATE(Ascii_Time)
[, {X | Y | Z}TICKUNITS=string or a vector of strings]
[, {X | Y | Z}TICKV=array] BINARY_TEMPLATE - Presents a GUI for interactively generating
a template structure for use with READ_BINARY.
[, {X | Y | Z}TICK_GET=variable]
Template = BINARY_TEMPLATE ([Filename]
[, {X | Y | Z}TITLE=string]
[, CANCEL=variable] [, GROUP=widget_id]
[, ZVALUE=value{0 to 1}]
[, N_ROWS=rows] [, TEMPLATE=variable] )
BINDGEN - Returns byte array with each element set to its subscript.
B Result = BINDGEN(D1 [, ...,D8] [, Thread pool keywords])
BINOMIAL - Computes binomial distribution function.
BANDPASS_FILTER - Applies a bandpass filter to a one-channel
image. Result = BINOMIAL(V, N, P [, /DOUBLE]
Result = BANDPASS_FILTER( ImageData, LowFreq, [, /GAUSSIAN] )
HighFreq [, /IDEAL] [, BUTTERWORTH=value] BIT_FFS - Returns the index of the first bit set (non-zero) in an integer.
[, /GAUSSIAN] ) Result = BIT_FFS( Value )
BANDREJECT_FILTER - Applies a band reject filter on a one- BIT_POPULATION - Returns the number of set (non-zero) bits in an
channel image. integer.
Result = BANDREJECT_FILTER( ImageData, LowFreq, Result = BIT_POPULATION( Value )
HighFreq [, /IDEAL] [, BUTTERWORTH=value]
[, /GAUSSIAN] ) BLAS_AXPY - Updates existing array by adding a multiple of another
array.
BAR_PLOT - Creates a bar graph. BLAS_AXPY, Y, A, X [, D1, Loc1 [, D2, Range]]
BAR_PLOT, Values [, BACKGROUND=color_index] BLK_CON - Convolves input signal with impulse-response sequence.
[, BARNAMES=string_array] [, BAROFFSET=scalar]
Result = BLK_CON( Filter, Signal [, B_LENGTH=scalar]
[, BARSPACE=scalar] [, BARWIDTH=value]
[, /DOUBLE] )
[, BASELINES=vector] [, BASERANGE=scalar{0.0 to
1.0}] [, COLORS=vector] [, /OUTLINE] BOX_CURSOR - Emulates the operation of a variable-sized box cur-
sor.
[, /OVERPLOT] [, /ROTATE] [, TITLE=string]
[, XTITLE=string] [, YTITLE=string] BOX_CURSOR, [ X0, Y0, NX, NY [, /INIT]
[, /FIXED_SIZE]] [, /MESSAGE]
BREAK - Immediately exits from a loop (FOR, WHILE, REPEAT),
CASE, or SWITCH statement.
BREAK

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 33

BREAKPOINT - Sets and clears breakpoints for debugging. Auto Glue keywords: [, /AUTO_GLUE] [, CC=string]
BREAKPOINT [, File], Index [, AFTER=integer] [, COMPILE_DIRECTORY=string] [,
[, /CLEAR] [, CONDITION=‘expression’] [, /DISABLE] EXTRA_CFLAGS=string] [, EXTRA_LFLAGS=string]
[, /ENABLE] [, /ON_RECOMPILE] [, /ONCE] [, /SET] [, /IGNORE_EXISTING_GLUE] [, LD=string]
[, /NOCLEANUP] [, /SHOW_ALL_OUTPUT]
BROYDEN - Solves nonlinear equations using Broyden’s method.
[, /VERBOSE]
Result = BROYDEN( X, Vecfunc [, CHECK=variable]
[, /DOUBLE] [, EPS=value] [, ITMAX=value] CALL_FUNCTION - Calls an IDL function.
[, STEPMAX=value] [, TOLF=value] [, TOLMIN=value] Result = CALL_FUNCTION(Name [, P1, ..., Pn])
[, TOLX=value] ) CALL_METHOD - Calls an IDL object method.
BUTTERWORTH - Returns an array that contains the absolute value CALL_METHOD, Name, ObjRef, [, P1, ..., Pn] or
of the low-pass Butterworth kernel. Result = CALL_METHOD(Name, ObjRef, [, P1, ..., Pn])
Result = BUTTERWORTH( X [, Y] [[, Z]]
CALL_PROCEDURE - Calls an IDL procedure.
[, CUTOFF=value] [, ORDER=value] [, /ORIGIN]
[, XDIM=value] [, YDIM=value] [, ZDIM=value] ) CALL_PROCEDURE, Name [, P1, ..., Pn]

BYTARR - Creates a byte vector or array. CANNY - Implements the Canny edge-detection algorithm.
Result = BYTARR( D1 [, ...,D8] [, /NOZERO] ) Result = CANNY( Image [, HIGH=value] [, LOW=value]
[, SIGMA=value] )
BYTE - Converts argument to byte type.
CASE - Selects one statement for execution, depending on the value of
Result = BYTE( Expression [, Offset [, D1 [, ...,D8]]] an expression.
[, Thread pool keywords])
CASE expression OF
BYTEORDER - Converts between host and network byte ordering. expression: statement
BYTEORDER, Variable1, ..., Variablen [, /DTOVAX] ...
[, /DTOXDR] [, /FTOVAX] [, /FTOXDR] [, /HTONL] expression: statement
[, /HTONS] [, /L64SWAP] [, /LSWAP] [, /NTOHL] [ ELSE: statement ]
[, /NTOHS] [, /SSWAP] [, /SWAP_IF_BIG_ENDIAN] ENDCASE
[, /SWAP_IF_LITTLE_ENDIAN] [, /VAXTOD] CATCH - Declares and clears exception handlers.
[, /VAXTOF] [, /XDRTOD] [, /XDRTOF] [, Thread pool CATCH, [Variable] [, /CANCEL]
keywords]
CD - Sets and/or changes the current working directory.
BYTSCL - Scales all values of an array into range of bytes.
CD [, Directory] [, CURRENT=variable]
Result = BYTSCL( Array [, MAX=value] [, MIN=value]
[, /NAN] [, TOP=value] [, Thread pool keywords]) CDF_* Routines - See “CDF Routines” on page 138.
CEIL - Returns the closest integer greater than or equal to X.
C Result = CEIL( X [, /L64] [, Thread pool keywords])
CHEBYSHEV - Returns the forward or reverse Chebyshev polynomial
C_CORRELATE - Computes cross correlation. expansion.
Result = C_CORRELATE( X, Y, Lag [, /COVARIANCE] Result = CHEBYSHEV(D, N)
[, /DOUBLE] ) CHECK_MATH - Returns and clears accumulated math error status.
CALDAT - Converts Julian date to month, day, year. Result = CHECK_MATH( [, MASK=bitmask]
CALDAT, Julian, Month [, Day [, Year [, Hour [, Minute [, /NOCLEAR] [, /PRINT] )
[, Second]]]]] CHISQR_CVF - Computes cutoff value in a Chi-square distribution.
CALENDAR - Displays a calendar for a given month or year. Result = CHISQR_CVF(P, Df)
CALENDAR [[, Month] , Year] CHISQR_PDF - Computes Chi-square distribution function.
CALL_EXTERNAL - Calls a function in an external sharable object Result = CHISQR_PDF(V, Df)
and returns a scalar value.
CHOLDC - Constructs Cholesky decomposition of a matrix.
Result = CALL_EXTERNAL(Image, Entry [, P0, ..., PN-1]
CHOLDC, A, P [, /DOUBLE]
[, /ALL_VALUE] [, /B_VALUE | , /D_VALUE |
, /F_VALUE | , /I_VALUE | , /L64_VALUE | , /S_VALUE CHOLSOL - Solves set of linear equations (use with CHOLDC).
| , /UI_VALUE | , /UL_VALUE | , /UL64_VALUE] Result = CHOLSOL( A, P, B [, /DOUBLE] )
[, /CDECL] [, RETURN_TYPE=value] [, /UNLOAD]
[, VALUE=byte_array]
[, WRITE_WRAPPER=wrapper_file] )

IDL Quick Reference


34 Alphabetical List of IDL Routines

CINDGEN - Returns a complex array with each element set to its sub- Keywords: [, COLORS=integer{2 to 256}] [, CUBE={2 |
script. 3 | 4 | 5 | 6} | , GET_TRANSLATION=variable]
Result = CINDGEN(D1 [, ...,D8] [, Thread pool keywords]) [, /MAP_ALL]] [, /DITHER] [, ERROR=variable]
CIR_3PNT - Returns radius and center of circle, given 3 points. [, TRANSLATION=vector]
CIR_3PNT, X, Y, R, X0, Y0 COLOR_RANGE_MAP - Maps all the pixels of an image to
another set of pixels, using source and target ranges to control the
CLOSE - Closes the specified files. mapping.
CLOSE[, Unit1, ..., Unitn] [, /ALL] Result = COLOR_RANGE_MAP(Image, FromColor1,
[, EXIT_STATUS=variable] [, /FILE] [, /FORCE] FromColor2, ToColor1, ToColor2)
CLUST_WTS - Computes the cluster weights of an array for cluster COLORIZE_SAMPLE - Colorizes a greyscale image by matching
analysis. luminance levels with an RGB sample table.
Result = CLUST_WTS( Array [, /DOUBLE] Result = COLORIZE_SAMPLE(Image, Sample)
[, N_CLUSTERS=value] [, N_ITERATIONS=integer]
COLORMAP_APPLICABLE - Determines whether the current
[, VARIABLE_WTS=vector] ) visual class supports the use of a colormap.
CLUSTER - Performs cluster analysis. Result = COLORMAP_APPLICABLE( redrawRequired )
Result = CLUSTER( Array, Weights [, /DOUBLE] COLORMAP_GRADIENT - Maps an image into a specified lumi-
[, N_CLUSTERS=value] ) nance-based gradient.

CLUSTER_TREE - Computes the hierarchical clustering for a set of Result = COLORMAP_GRADIENT(Image[, Gradient])
m items in an n-dimensional space. COLORMAP_ROTATION - Maps pixels within a given hue range
Result = CLUSTER_TREE( Pairdistance, Linkdistance to another hue range, using the HSV hue component.
[, LINKAGE = value] ) Result = COLORMAP_ROTATION(Image, SrcAngleStart,
or for LINKAGE = 3 (centroid): SrcAngleStop, DstAngleStart, DstAngleStop
Result = CLUSTER_TREE( Pairdistance, Linkdistance, [, /SOURCE_CW][, /DEST_CW])
LINKAGE = 3, DATA = array[, MEASURE=value]
COMFIT - Fits paired data using one of six common filtering functions.
[, POWER_MEASURE=value] )
Result = COMFIT( X, Y, A {, /DOUBLE |
CMYK_CONVERT - Converts color triples to and from RGB and , /EXPONENTIAL | , /GEOMETRIC | , /GOMPERTZ |
CMYK. , /HYPERBOLIC | , /ITMAX | , /LOGISTIC |
CMYK_CONVERT, C, M, Y, K, R, G, B, [, /TO_CMYK] , /LOGSQUARE | , TOL=value} [, CHISQ=variable]
COLOR_CONVERT - Converts colors to and from the RGB (Red [, ITER=variable] [, SIGMA=variable]
Green Blue) and a number of other color spaces. [, STATUS=variable] [, WEIGHTS=vector]
COLOR_CONVERT, I0, I1, I2, O0, O1, O2 [, /HLS_RGB | [, YERROR=variable] [, YFIT=variable] )
, /HSV_RGB | , /YUV_RGB| , /YIQ_RGB |
COMMAND_LINE_ARGS - returns string values supplied when
, /YPBPR_RGB| , /YCBCR_RGB| , /RGB_HLS | the user starts IDL with the -arg or -args command line options.
, /RGB_HSV | , /RGB_YUV | , /RGB_YIQ | Result = COMMAND_LINE_ARGS( [COUNT=variable] )
, /RGB_YPBPR | /RGB_YCBCR]
[, INTERLEAVE=value] COMMON - Creates a common block.
or COMMON Block_Name, Variable1, ..., Variablen
COLOR_CONVERT, I0, O0 [, /HLS_RGB | , /HSV_RGB | COMPILE_OPT - Gives IDL compiler information that changes the
, /YUV_RGB| , /YIQ_RGB | , /YPBPR_RGB| default rules for compiling functions or procedures.
, /YCBCR_RGB| , /RGB_HLS | , /RGB_HSV | COMPILE_OPT opt1 [, opt2, ..., optn]
, /RGB_YUV | , /RGB_YIQ | , /RGB_YPBPR | Note: optn can be IDL2, DEFINT32, HIDDEN,
, /RGB_YCBCR] [, INTERLEAVE=value] LOGICAL_PREDICATE, OBSOLETE, STRICTARR, or
STRICTARRSUBS
COLOR_EXCHANGE - Replaces image pixels of a given color with
pixels of a new color. COMPLEX - Converts argument to complex type.
Result = COLOR_EXCHANGE(Image, Color, Result = COMPLEX( Real [, Imaginary] [, /DOUBLE]
ReplaceColor [, THRESHOLD=vector]) [, Thread pool keywords])
COLOR_QUAN - Converts true-color (24-bit) image to pseudo-color or
(8-bit) image. Result = COMPLEX(Expression, Offset, D1 [, ...,D8]
Result = COLOR_QUAN( Image_R, Image_G, Image_B, [, ./DOUBLE] [, Thread pool keywords])
R, G, B) COMPLEXARR - Creates a complex, single-precision, floating-point
or vector or array.
Result = COLOR_QUAN( Image, Dim, R, G, B ) Result = COMPLEXARR( D1 [, ...,D8] [, /NOZERO] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 35

COMPLEXROUND - Rounds a complex array. CONVOL - Convolves two vectors or arrays.


Result = COMPLEXROUND(Input) Result = CONVOL( Array, Kernel [, Scale_Factor]
[, BIAS=value] [, /CENTER] [, /EDGE_WRAP]
COMPUTE_MESH_NORMALS - Computes normal vectors for a
set of polygons. [, /EDGE_TRUNCATE] [, /EDGE_ZERO]
Result=COMPUTE_MESH_NORMALS( fVerts[, iConn] ) [, INVALID=value] [, MISSING=value] [, /NAN]
[, /NORMALIZE] [, Thread pool keywords])
COND - Computes the condition number of a square matrix.
Result = COND( A [, /DOUBLE] [, LNORM={0 | 1 | 2}]) COORD2TO3 - Returns 3D data coordinates given normalized screen
coordinates.
CONGRID - Resamples an image to any dimensions. Result = COORD2TO3( Mx, My, Dim, D0 [, PTI] )
Result = CONGRID( Array, X, Y, Z [, /CENTER]
COPY_LUN - Copies data between two open files.
[, CUBIC=value{-1 to 0}] [, /INTERP]
COPY_LUN, FromUnit, ToUnit [, Num] [, /EOF]
[, /MINUS_ONE])
[, /LINES] [, TRANSFER_COUNT=va;ie]
CONJ - Returns the complex conjugate of X.
CORRELATE - Computes the linear Pearson correlation.
Result = CONJ(X [, Thread pool keywords])
Result = CORRELATE( X [, Y] [, /COVARIANCE]
CONSTRAINED_MIN - Minimizes a function using Generalized [, /DOUBLE] )
Reduced Gradient Method.
CONSTRAINED_MIN, X, Xbnd, Gbnd, Nobj, Gcomp, COS - Returns the cosine of X.
Inform [, ESPTOP=value] [, LIMSER=value] Result = COS(X [, Thread pool keywords])
[, /MAXIMIZE] [, NSTOP=value] [, REPORT=filename] COSH - Returns the hyperbolic cosine of X.
[, TITLE=string] Result = COSH(X [, Thread pool keywords])
CONTINUE - Immediately starts the next iteration of the enclosing CPU - Changes the values stored in the read-only !CPU system variable.
FOR, WHILE, or REPEAT loop.
CPU [, /RESET] [, RESTORE=structure]
CONTINUE
[,TPOOL_MAX_ELTS = NumMaxElts]
CONTOUR - Draws a contour plot. [,TPOOL_MIN_ELTS = NumMinElts]
CONTOUR, Z [, X, Y] [, C_CHARSIZE=value] [,TPOOL_NTHREADS = NumThreads]
[, C_CHARTHICK=integer] [, C_COLORS=vector] [,/VECTOR_ENABLE]
[, C_LABELS=vector{each element 0 or 1}]
CRAMER - Solves system of linear equations using Cramer’s rule.
[, C_LINESTYLE=vector] [{, /FILL | , /CELL_FILL} |
Result = CRAMER( A, B [, /DOUBLE] [, ZERO=value] )
[, C_ANNOTATION=vector_of_strings]
[, C_ORIENTATION=degrees] [, C_SPACING=value]] CREATE_CURSOR - Returns a 16x16 image suitable for a cursor
[, C_THICK=vector] [, /CLOSED] [, /DOWNHILL] from the input string array.
[, /FOLLOW] [, /IRREGULAR] [, /ISOTROPIC] Result = CREATE_CURSOR( StringArray
[, LEVELS=vector | NLEVELS=integer{1 to 60}] [, HOTSPOT=variable] [, MASK=variable] )
[, MAX_VALUE=value] [, MIN_VALUE=value] CREATE_STRUCT - Creates and concatenates structures.
[, /OVERPLOT] Result = CREATE_STRUCT( [Tag1, Value1, ..., Tagn,
[{, /PATH_DATA_COORDS, PATH_FILENAME=string, Valuen] [, NAME=string] )
PATH_INFO=variable, PATH_XY=variable} | , or
TRIANGULATION=variable] [, /PATH_DOUBLE] Result = CREATE_STRUCT( [Tag1, ..., Tagn], Value1, ...,
[, /XLOG] [, /YLOG] [, ZAXIS={0 | 1 | 2 | 3 | 4}] Valuen [, NAME=string] )
[, /ZLOG]
CREATE_VIEW - Sets up 3D transformations.
Graphics Keywords: Accepts all PLOT graphics
keywords except for: LINESTYLE, PSYM, SYMSIZE. CREATE_VIEW [, AX=value] [, AY=value] [, AZ=value]
[, PERSP=value] [, /RADIANS] [, WINX=pixels]
CONVERT_COORD - Transforms coordinates to and from the coor- [, WINY=pixels] [, XMAX=scalar] [, XMIN=scalar]
dinate systems supported by IDL.
[, YMAX=scalar] [, YMIN=scalar] [, ZFAC=value]
Result = CONVERT_COORD( X [, Y [, Z]] [, /DATA | ,
[, ZMAX=scalar] [, ZMIN=scalar] [, ZOOM=scalar or
/DEVICE | , /NORMAL] [, /DOUBLE] [, /T3D]
3-element vector]
[, /TO_DATA | , /TO_DEVICE | , /TO_NORMAL] )
CROSSP - Computes vector cross product.
Result = CROSSP(V1, V2)
CRVLENGTH - Computes the length of a curve.
Result = CRVLENGTH( X, Y [, /DOUBLE] )

IDL Quick Reference


36 Alphabetical List of IDL Routines

CT_LUMINANCE - Calculates the luminance of colors. CW_ARCBALL - Creates compound widget for intuitively specifying
Result = CT_LUMINANCE( [R, G, B] 3D orientations.
[, BRIGHT=variable] [, DARK=variable] Result = CW_ARCBALL( Parent [, COLORS=array]
[, /READ_TABLES] ) [, /FRAME] [, LABEL=string] [, RETAIN={0 | 1 | 2}]
[, SIZE=pixels] [, TAB_MODE=value] [, /UPDATE]
CTI_TEST - Performs chi-square goodness-of-fit test. [, UNAME=string] [, UVALUE=value]
Result = CTI_TEST( Obfreq [, COEFF=variable] [, VALUE=array] )
[, /CORRECTED] [, CRAMV=variable] [, DF=variable]
[, EXFREQ=variable] [, RESIDUAL=variable] ) CW_BGROUP - Creates button group for use as a menu.
Result = CW_BGROUP( Parent, Names
CURSOR - Reads position of the interactive graphics cursor. [, BUTTON_UVALUE=array] [, COLUMN=value]
CURSOR, X, Y [, Wait | [, /CHANGE | , /DOWN | [, EVENT_FUNC=string] [{, /EXCLUSIVE | ,
, /NOWAIT | , /UP | , /WAIT]] [, /DATA | , /DEVICE, | , /NONEXCLUSIVE} | [, SPACE=pixels] [, XPAD=pixels]
/NORMAL] [, YPAD=pixels]] [, FONT=font] [, FRAME=width]
CURVEFIT - Fits multivariate data with a user-supplied function. [, IDS=variable] [, LABEL_LEFT=string |
Result = CURVEFIT( X, Y, Weights, A [, Sigma] , LABEL_TOP=string] [, /MAP] [, /NO_RELEASE]
[, CHISQ=variable] [, /DOUBLE] [, FITA=vector] [, /RETURN_ID | , /RETURN_INDEX | ,
[, FUNCTION_NAME=string] [, ITER=variable] /RETURN_NAME] [, ROW=value] [, /SCROLL]
[, ITMAX=value] [, /NODERIVATIVE] [, SET_VALUE=value] [, SPACE=value]
[, STATUS={0 | 1 | 2}] [, TOL=value] [, TAB_MODE=value] [, X_SCROLL_SIZE=width]
[, YERROR=variable] ) [, Y_SCROLL_SIZE=height] [, SET_VALUE=value]
[, UNAME=string] [, UVALUE=value]
CV_COORD - Converts 2D and 3D coordinates between coordinate
systems. [, XOFFSET=value] [, XSIZE=width]
Result = CV_COORD( [, /DEGREES] [, /DOUBLE] [, YOFFSET=value] [, YSIZE=value] )
[, FROM_CYLIN=cyl_coords | , CW_CLR_INDEX - Creates compound widget to select color index.
FROM_POLAR=pol_coords | , Result = CW_CLR_INDEX( Parent
FROM_RECT=rect_coords | , [, COLOR_VALUES=vector | [, NCOLORS=value]
FROM_SPHERE=sph_coords] [, /TO_CYLIN | , [, START_COLOR=value]]
/TO_POLAR | , /TO_RECT | , /TO_SPHERE] ) [, EVENT_FUNC=‘function_name’] [, /FRAME]
CVTTOBM - Creates a bitmap byte array for a button label. [, LABEL=string] [, NCOLORS=value]
[, START_COLOR=value] [, TAB_MODE=value]
Result = CVTTOBM( Array [, THRESHOLD=value{0 to
255}] ) [, UNAME=string] [, UVALUE=value] [, VALUE=value]
[, XSIZE=pixels] [, YSIZE=pixels] )
CW_ANIMATE - Creates a compound widget for animation.
CW_COLORSEL - Creates compound widget that displays all colors
Result = CW_ANIMATE( Parent, Sizex, Sizey, Nframes in current colormap.
[, MPEG_BITRATE=value] [, MPEG_FORMAT=value] Result = CW_COLORSEL( Parent [, /FRAME]
[, MPEG_QUALITY=value] [, /NO_KILL] [, TAB_MODE=value] [, UNAME=string]
[, OPEN_FUNC=string] [, PIXMAPS=vector] [, UVALUE=value] [, XOFFSET=value]
[, TAB_MODE=value] [, /TRACK] [, UNAME=string] [, YOFFSET=value] )
[, UVALUE=value] )
CW_DEFROI - Creates compound widget used to define region of
CW_ANIMATE_GETP - Gets pixmap window IDs used by interest.
CW_ANIMATE.
Result = CW_DEFROI( Draw [, IMAGE_SIZE=vector]
CW_ANIMATE_GETP, Widget, Pixmaps [, OFFSET=vector] [, /ORDER] [, /RESTORE]
[, /KILL_ANYWAY] [, TAB_MODE=value] [, ZOOM=vector] )
CW_ANIMATE_LOAD - Loads images into CW_ANIMATE. CW_FIELD - Creates a widget data entry field.
CW_ANIMATE_LOAD, Widget [, /CYCLE] Result = CW_FIELD( Parent [, /ALL_EVENTS]
[, FRAME=value{0 to NFRAMES}] [, IMAGE=value] [, /COLUMN] [, FIELDFONT=font] [, /FLOATING | ,
[, /ORDER] [, WINDOW=[window_num [, X0, Y0, Sx, /INTEGER | , /LONG | , /STRING] [, FONT=string]
Sy]]] [, XOFFSET=pixels] [, YOFFSET=pixels] [, FRAME=pixels] [, /NOEDIT] [, /RETURN_EVENTS]
CW_ANIMATE_RUN - Displays images loaded into [, /ROW] [, TAB_MODE=value] [, /TEXT_FRAME]
CW_ANIMATE. [, TITLE=string] [, UNAME=string] [, UVALUE=value]
CW_ANIMATE_RUN, Widget [, Rate{0 to 100}] [, VALUE=value] [, XSIZE=characters] [, YSIZE=lines])
[, NFRAMES=value] [, /STOP]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 37

CW_FILESEL - Creates compound widget for file selection. CW_ORIENT - Creates compound widget used to interactively adjust
Result = CW_FILESEL ( Parent [, /FILENAME] the 3D drawing transformation.
[, FILTER=string array] [, /FIX_FILTER] [, /FRAME] Result = CW_ORIENT( Parent [, AX=degrees]
[, /IMAGE_FILTER] [, /MULTIPLE | , /SAVE] [, AZ=degrees] [, /FRAME] [, TAB_MODE=value]
[, PATH=string] [, TAB_MODE=value] [, TITLE=string] [, UNAME=string] [, UVALUE=value]
[, UNAME=string] [, UVALUE=value] [, XSIZE=width] [, YSIZE=height] )
[, /WARN_EXIST] ) CW_PALETTE_EDITOR - Creates compound widget to display
and edit color palettes.
CW_FORM - Creates compound widget for creating forms.
Result = CW_PALETTE_EDITOR (Parent
Result = CW_FORM( [Parent,] Desc [, /COLUMN]
[, DATA=array] [, FRAME=width]
[, IDS=variable] [, TAB_MODE=value]
[, HISTOGRAM=vector] [, /HORIZONTAL]
[, TITLE=string] [, UNAME=string]
[, SELECTION=[start, end]] [, TAB_MODE=value]
[, UVALUE=value])
[, UNAME=string] [, UVALUE=value] [, XSIZE=width]
Note: Desc is a string array. Each element of string array
[, YSIZE=height] )
contains 2 or more comma-delimited fields. Each string
has the format: ['Depth, Item, Initial_Value, Keywords'] CW_PALETTE_EDITOR_GET - Gets the
CW_PALETTE_EDITOR properties.
CW_FSLIDER - Creates slider that selects floating-point values. CW_PALETTE_EDITOR_GET, WidgetID
Result = CW_FSLIDER( Parent [, /DOUBLE] [, /DRAG] [, ALPHA=variable] [, HISTOGRAM=variable]
[, /EDIT] [, FORMAT=string] [, /FRAME]
CW_PALETTE_EDITOR_SET - Sets the
[, MAXIMUM=value] [, MINIMUM=value] CW_PALETTE_EDITOR properties.
[, SCROLL=units] [, /SUPRESS_VALUE] CW_PALETTE_EDITOR_SET, WidgetID
[, TAB_MODE=value] [, TITLE=string]
[, ALPHA=byte_vector] [, HISTOGRAM=byte_vector]
[, UNAME=string] [, UVALUE=value]
[, VALUE=initial_value] [, XSIZE=length | CW_PDMENU - Creates widget pulldown menus.
{, /VERTICAL [, YSIZE=height]}] ) Result = CW_PDMENU( Parent, Desc [, /COLUMN]
[, /CONTEXT_MENU] [, DELIMITER=string]
CW_LIGHT_EDITOR - Creates compound widget to edit properties
of existing IDLgrLight objects in a view. [, FONT=value] [, /MBAR [, /HELP]] [, IDS=variable]
Result = CW_LIGHT_EDITOR (Parent [, /RETURN_ID | , /RETURN_INDEX | ,
[, /DIRECTION_DISABLED] [, /DRAG_EVENTS] /RETURN_NAME | , /RETURN_FULL_NAME]
[, FRAME=width] [, /HIDE_DISABLED] [, TAB_MODE=value] [, UNAME=string]
[, LIGHT=objref(s)] [, /LOCATION_DISABLED] [, UVALUE=value] [, XOFFSET=value]
[, TAB_MODE=value] [, /TYPE_DISABLED] [, YOFFSET=value] )
[, UVALUE=value] [, XSIZE=pixels] [, YSIZE=pixels] CW_RGBSLIDER - Creates compound widget with sliders for
[, XRANGE=vector] [, YRANGE=vector] adjusting RGB color values.
[, ZRANGE=vector] ) Result = CW_RGBSLIDER( Parent
[, /CMY | , /HSV | , /HLS | , /RGB]
CW_LIGHT_EDITOR_GET - Gets the CW_LIGHT_EDITOR
properties. [, /COLOR_INDEX | , GRAPHICS_LEVEL={1 | 2}]
CW_ LIGHT_EDITOR_GET, WidgetID [, /DRAG] [, /FRAME] [, LENGTH=value] [, /RGB]
[, DIRECTION_DISABLED=variable] [, TAB_MODE=value] [, UNAME=string]
[, DRAG_EVENTS=variable] [, UVALUE=value] [, VALUE=[r, g, b]] [, /VERTICAL])
[, HIDE_DISABLED=variable] [, LIGHT=variable] CW_TMPL - Template for compound widgets that use XMANAGER.
[, LOCATION_DISABLED=variable] Result = CW_TMPL( Parent [, TAB_MODE=value]
[, TYPE_DISABLED=variable] [, XSIZE=variable] [, UNAME=string] [, UVALUE=value] )
[, YSIZE=variable] [, XRANGE=variable]
CW_ZOOM - Creates widget for displaying zoomed images.
[, YRANGE=variable] [, ZRANGE=variable]
Result = CW_ZOOM( Parent [, /FRAME] [, MAX=scale]
CW_LIGHT_EDITOR_SET - Sets the CW_LIGHT_EDITOR [, MIN=scale] [, RETAIN={0 | 1 | 2}] [, SAMPLE=value]
properties.
[, SCALE=value] [, TAB_MODE=value] [, /TRACK]
CW_ LIGHT_EDITOR_SET, WidgetID
[, UNAME=string] [, UVALUE=value] [, XSIZE=width]
[, /DIRECTION_DISABLED] [, /DRAG_EVENTS]
[, X_SCROLL_SIZE=width] [, X_ZSIZE=zoom_width]
[, /HIDE_DISABLED] [, LIGHT=objref(s)]
[, YSIZE=height] [, Y_SCROLL_SIZE=height]
[, /LOCATION_DISABLED] [, /TYPE_DISABLED]
[, Y_ZSIZE=zoom_height] )
[, XSIZE=pixels] [, YSIZE=pixels] [, XRANGE=vector]
[, YRANGE=vector] [, ZRANGE=vector]

IDL Quick Reference


38 Alphabetical List of IDL Routines

D DENDRO_PLOT - Draws a two-dimensional dendrite plot on the cur-


rent direct graphics device if given a hierarchical tree cluster, as cre-
ated by CLUSTER_TREE.
DENDRO_PLOT, Clusters, Linkdistance
DBLARR - Creates a double-precision array.
[, LABEL_CHARSIZE=value]
Result = DBLARR( D1 [, ...,D8] [, /NOZERO] )
[, LABEL_CHARTHICK=value]
DCINDGEN - Returns a double-precision, complex array with each [, LABEL_COLOR=value] [, LABEL_NAMES=vector]
element set to its subscript.
[, LABEL_ORIENTATION=value]
Result = DCINDGEN( D1 [, ...,D8] [, Thread pool [, LINECOLOR=value] [, LINESTYLE=value]
keywords]) [, ORIENTATION={1|2|3|4}] [, /OVERPLOT]
DCOMPLEX - Converts argument to double-precision complex type. DENDROGRAM - Constructs a dendrogram and returns a set of verti-
Result = DCOMPLEX( Real [, Imaginary] [, Thread pool ces and connectivity that can be used to visualize the dendrite plot if
given a hierarchical tree cluster, as created by CLUSTER_TREE.
keywords])
or DENDROGRAM, Clusters, Linkdistance, Outverts,
Result = DCOMPLEX( Expression, Offset, D1 [, ...,D8] Outconn [, LEAFNODES=variable]
[, Thread pool keywords] ) DERIV - Performs differentiation using 3-point, Lagrangian interpola-
tion and returns the derivative.
DCOMPLEXARR - Creates a complex, double-precision vector or
array. Result = DERIV([X,] Y)
Result = DCOMPLEXARR( D1 [, ...,D8] [, /NOZERO] ) DERIVSIG - Computes standard deviation of derivative found by
DERIV.
DEFINE_KEY - Programs keyboard function keys.
Result = DERIVSIG( [X, Y, Sigx,] Sigy )
DEFINE_KEY, Key [, Value] [, /MATCH_PREVIOUS]
[, /NOECHO] [, /TERMINATE] DETERM - Computes the determinant of a square matrix.
UNIX Keywords: [, /BACK_CHARACTER] Result = DETERM( A [, /CHECK] [, /DOUBLE]
[, /BACK_WORD] [, /CONTROL | , /ESCAPE] [, ZERO=value] )
[, /DELETE_CHARACTER] [, /DELETE_CURRENT] DEVICE - Sets to plot in device coordinates.
[, /DELETE_EOL] [, /DELETE_LINE] Note: Each keyword to DEVICE is followed by the
[, /DELETE_WORD] [, /END_OF_LINE] device(s) to which it applies.
[, /END_OF_FILE] [, /ENTER_LINE] DEVICE [, /AVANTGARDE | , /BKMAN | , /COURIER | ,
[, /FORWARD_CHARACTER] [, /FORWARD_WORD] /HELVETICA | , /ISOLATIN1 | , /PALATINO | ,
[, /INSERT_OVERSTRIKE_TOGGLE] [, /NEXT_LINE] /SCHOOLBOOK | , /SYMBOL | , TIMES | ,
[, /PREVIOUS_LINE] [, /RECALL] [, /REDRAW] ZAPFCHANCERY | , ZAPFDINGBATS {PS}]
[, /START_OF_LINE] [, /AVERAGE_LINES{REGIS}] [, /BINARY | , /NCAR |
DEFINE_MSGBLK - Defines and loads a new message block into , /TEXT {CGM}] [, BITS_PER_PIXEL={1 | 2 | 4 |
the current IDL session. 8}{PS}] [, /BOLD{PS}] [, /BOOK{PS}]
DEFINE_MSGBLK, BlockName, ErrorNames, [, /BYPASS_TRANSLATION{WIN, X}] [, /CLOSE{Z}]
ErrorFormats [, /IGNORE_DUPLICATE] [, /CLOSE_DOCUMENT{PRINTER}]
[, PREFIX = PrefixStr] [, /CLOSE_FILE{CGM, HP, METAFILE, PCL, PS,
DEFINE_MSGBLK_FROM_FILE - Reads the definition of a REGIS, TEK}] [, /CMYK{PS}] [, /COLOR{PCL, PS}]
message block from a file, and loads it into the current IDL session. [, COLORS=value{CGM, TEK}] [, COPY=[Xsource,
DEFINE_MSGBLK_FROM_FILE, Filename Ysource, cols, rows, Xdest, Ydest
[, BLOCK = BlockName] [, /IGNORE_DUPLICATE] [, Window_index]]{WIN, X}]
[, PREFIX = PrefixStr] [, /VERBOSE] [, /CURSOR_CROSSHAIR{WIN, X}]
[, CURSOR_IMAGE=value{16-element short int
DEFROI - Defines an irregular region of interest of an image.
vector}{WIN, X}] [, CURSOR_MASK=value{WIN, X}]
Result = DEFROI(Sx, Sy [, Xverts, Yverts] [, /NOREGION]
[, /CURSOR_ORIGINAL{WIN, X}]
[, /NOFILL] [, /RESTORE] [, X0=device_coord,
[, CURSOR_STANDARD=value{WIN: arrow=32512, I-
Y0=device_coord] [, ZOOM=factor])
beam=32513, hourglass=32514, black cross=32515, up
DEFSYSV - Creates a new system variable. arrow=32516, size(NT)=32640, icon(NT)=32641, size
DEFSYSV,Name,Value [, Read_Only] NW-SE=32642, size NE-SW=32643, size E-W=32644,
[, EXISTS=variable] size N-S=32645}{X: one of the values in file
DELVAR - Deletes variables from the main IDL program level. cursorfonts.h}] [, CURSOR_XY=[x,y]{WIN, X}]
[, /DECOMPOSED{WIN, X}]
DELVAR, V1, ..., Vn
[, /DIRECT_COLOR{X}] [, EJECT={0 | 1 | 2}{HP}]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 39

DEVICE - continued DEVICE - continued


[, ENCAPSULATED={0 | 1}{PS}] [, ENCODING={1 [, STATIC_COLOR=value{bits per pixel}{X}]
(binary) | 2 (text) | 3 (NCAR binary)}{CGM}] [, STATIC_GRAY=value{bits per pixel}{X}]
[, FILENAME=filename{CGM, HP, METAFILE, PCL, [, /TEK4014{TEK}] [, TEK4100{TEK}]
PS, REGIS, TEK}] [, /FLOYD{PCL, X}] [, THRESHOLD=value{PCL, X}]
[, FONT_INDEX=integer{PS}] [, TRANSLATION=variable{WIN, X}]
[, FONT_SIZE=points{PS}] [, TRUE_COLOR=value{bits per pixel}{METAFILE,
[, GET_CURRENT_FONT=variable{METAFILE, PRINTER, X}] [, /TT_FONT{METAFILE, PRINTER,
PRINTER, WIN, X}] WIN, X, Z}] [, /TTY{REGIS, TEK}] [, /VT240 | ,
[, GET_DECOMPOSED=variable{WIN, X}] /VT241 | , /VT340 | , /VT341 {REGIS}]
[, GET_FONTNAMES=variable{METAFILE, [, WINDOW_STATE=variable{WIN, X}]
PRINTER, WIN, X}] [, XOFFSET=value{HP, PCL, PRINTER, PS}]
[, GET_FONTNUM=variable{METAFILE, PRINTER, [, XON_XOFF={0 | 1 (default)}{HP}]
WIN, X}] [, XSIZE=width{HP, PCL, METAFILE, PRINTER, PS}]
[, GET_GRAPHICS_FUNCTION=variable{WIN, X, [, YOFFSET=value{HP, PCL, PRINTER, PS}]
Z}] [, GET_PAGE_SIZE=variable{PRINTER}] [, YSIZE=height{HP, PCL, METAFILE, PRINTER, PS}]
[, GET_PIXEL_DEPTH=variable] [, Z_BUFFERING={0 | 1 (default)}{Z}]
[, GET_SCREEN_SIZE=variable{WIN, X}] DFPMIN - Minimizes a function using Davidon-Fletcher-Powell
[, GET_VISUAL_DEPTH=variable{WIN, X}] method.
[, GET_VISUAL_NAME=variable{WIN, X}] DFPMIN, X, Gtol, Fmin, Func, Dfunc [, /DOUBLE]
[, GET_WINDOW_POSITION=variable{WIN, X}] [, EPS=value] [, ITER=variable] [, ITMAX=value]
[, GET_WRITE_MASK=variable{X, Z}] [, STEPMAX=value] [, TOLX=value]
[, GIN_CHARS=number_of_characters{TEK}]
DIAG_MATRIX - Constructs a diagonal matrix from an input vector,
[, GLYPH_CACHE=number_of_glyphs{METAFILE, or if given a matrix, extracts a diagonal vector.
PRINTER, PS, WIN, Z}] [, /INCHES{HP, METAFILE,
Result = DIAG_MATRIX(A [, Diag] )
PCL, PRINTER, PS}] [, /INDEX_COLOR{METAFILE,
PRINTER}] [, /ITALIC{PS}] [, /LANDSCAPE | , DIALOG_MESSAGE - Creates modal message dialog.
/PORTRAIT{HP, PCL, PRINTER, PS}] Result = DIALOG_MESSAGE( Message_Text
[, LANGUAGE_LEVEL={1 | 2}{PS}] [, /DEMI | , [, /CANCEL] [, /CENTER] [, /DEFAULT_CANCEL | ,
/LIGHT | , /MEDIUM | , /NARROW | , /OBLIQUE{PS}] /DEFAULT_NO] [, DIALOG_PARENT=widget_id]
[, OPTIMIZE={0 | 1 | 2}{PCL}] [, /ORDERED{PCL, [, DISPLAY_NAME=string] [, /ERROR | ,
X}] [, OUTPUT=scalar string{HP, PS}] /INFORMATION | , /QUESTION]
[, /PIXELS{PCL}] [, PLOT_TO=logical unit [, RESOURCE_NAME=string] [, TITLE=string] )
num{REGIS, TEK}] [, /PLOTTER_ON_OFF{HP}] DIALOG_PICKFILE - Creates native file-selection dialog.
[, /POLYFILL{HP}] [, PRE_DEPTH=value{PS}] Result = DIALOG_PICKFILE(
[, PRE_XSIZE=width{PS}] [, PRE_YSIZE=height{PS}] [, DEFAULT_EXTENSION=string] [, /DIRECTORY]
[, /PREVIEW{PS}] [, PRINT_FILE=filename{WIN}] [, DIALOG_PARENT=widget_id]
[, /PSEUDO_COLOR{X}] [, DISPLAY_NAME=string] [, FILE=string]
[, RESET_STRING=string{TEK}] [, FILTER=string/string array] [, /FIX_FILTER]
[, RESOLUTION=value{PCL}] [, RETAIN={0 | 1 | [, GET_PATH=variable] [, GROUP=widget_id]
2}{WIN, X}] [, SCALE_FACTOR=value{PRINTER, [, /MULTIPLE_FILES] [, /MUST_EXIST]
PS}] [, SET_CHARACTER_SIZE=[font size, line [, /OVERWRITE_PROMPT] [, PATH=string] [, /READ |
spacing]{CGM, HP, METAFILE, PCL, PS, REGIS, TEK, , /WRITE] [, RESOURCE_NAME=string]
WIN, X, Z}] [, SET_COLORMAP=value{14739- [, TITLE=string] )
element byte vector}{PCL}] [, SET_COLORS=value{2
to 256}{Z}] [, SET_FONT=scalar string{METAFILE, DIALOG_PRINTERSETUP - Opens native dialog used to set
properties for a printer.
PRINTER, PS, WIN, Z}]
Result = DIALOG_PRINTERSETUP( [PrintDestination]
[, SET_GRAPHICS_FUNCTION=code{0 to 15}{WIN,
[, DIALOG_PARENT=widget_id]
X, Z}] [, SET_PIXEL_DEPTH={8 | 24}]
[, DISPLAY_NAME=string]
[, SET_RESOLUTION=[width, height]{Z}]
[, RESOURCE_NAME=string] [, TITLE=string] )
[, SET_STRING=string{TEK}]
[, SET_TRANSLATION=variable{X}][, SET_WRITE_
MASK=value{0 to 2n-1 for n-bit system}{X, Z}]

IDL Quick Reference


40 Alphabetical List of IDL Routines

DIALOG_PRINTJOB - Opens native dialog used to set parameters DLM_LOAD - Explicitly causes a DLM to be loaded.
for a print job. DLM_LOAD, DLMNameStr1
Result = DIALOG_PRINTJOB( [PrintDestination] [, DLMNameStr2,..., DLMNameStrn]
[, DIALOG_PARENT=widget_id]
[, DISPLAY_NAME=string] DOC_LIBRARY - Extracts documentation headers from IDL pro-
grams.
[, RESOURCE_NAME=string] [, TITLE=string] )
DOC_LIBRARY [, Name] [, /PRINT]
DIALOG_READ_IMAGE - Presents GUI for reading image files. UNIX keywords: [, DIRECTORY=string] [, /MULTI]
Result = DIALOG_READ_IMAGE ([Filename] DOUBLE - Converts argument to double-precision type.
[, DIALOG_PARENT=widget_id] [, FILE=variable]
Result = DOUBLE(Expression [, Offset [, D1 [, ...,D8]]]
[, FILTER_TYPE=string] [, /FIX_FILTER]
[, Thread pool keywords] )
[, GET_PATH=variable] [, IMAGE=variable]
[, PATH=string] [, QUERY=variable] [, RED=variable] DRAW_ROI - Draws region or group of regions to current Direct
Graphics device.
[, GREEN=variable] [, BLUE=variable]
[ ,TITLE=string] ) DRAW_ROI, oROI [, /LINE_FILL] [, SPACING=value]
Graphics Keywords: [, CLIP=[X0, Y0, X1, Y1]]
DIALOG_WRITE_IMAGE - Presents GUI for writing image files. [, COLOR=value] [, /DATA | , /DEVICE | , /NORMAL]
Result = DIALOG_WRITE_IMAGE ( Image [, R, G, B] [, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /NOCLIP]
[, DIALOG_PARENT=widget_id] [, FILE=string] [, ORIENTATION=ccw_degrees_from_horiz]
[, /FIX_TYPE] [, /NOWRITE] [, OPTIONS=variable] [, PSYM=integer{0 to 10}] [, SYMSIZE=value] [, /T3D]
[, PATH=string] [ ,TITLE=string] [, TYPE=variable] [, THICK=value]
[, /WARN_EXIST] )
DICOMEX_GETCONFIGFILEPATH - See Appendix B, “IDL
DICOM Quick Reference” in the Medical Imaging in IDL manual.
E
DICOMEX_GETSTORSCPDIR - See Appendix B, “IDL DICOM
Quick Reference” in the Medical Imaging in IDL manual. EDGE_DOG - Applies the Difference of Gaussians filter to a 2D
DICOMEX_NET - See Appendix B, “IDL DICOM Quick Reference” image array.
in the Medical Imaging in IDL manual. Result = EDGE_DOG(Array [, RADIUS1=value]
DIGITAL_FILTER - Calculates coefficients of a non-recursive, digital [, RADIUS2=value] [, THRESHOLD=value]
filter. [, ZERO_CROSSINGS=value])
Result = DIGITAL_FILTER( Flow, Fhigh, A, Nterms
EFONT - Interactive vector font editor and display tool.
[, /DOUBLE] )
EFONT, Init_Font [, /BLOCK] [, GROUP=widget_id]
DILATE - Implements morphologic dilation operator on binary and
grayscale images. EIGENQL - Computes eigenvalues and eigenvectors of a real, symmet-
ric array.
Result = DILATE( Image, Structure [, X0 [, Y0 [, Z0]]]
Result = EIGENQL( A [, /ABSOLUTE] [, /ASCENDING]
[, /CONSTRAINED [, BACKGROUND=value]]
[, /DOUBLE] [, EIGENVECTORS=variable]
[, /GRAY [, /PRESERVE_TYPE | , /UINT | , /ULONG]]
[, /OVERWRITE | , RESIDUAL=variable] )
[, VALUES=array] )
EIGENVEC - Computes eigenvectors of a real, non-symmetric array.
DINDGEN - Returns a double-precision array with each element set to
its subscript. Result = EIGENVEC( A, Eval [, /DOUBLE]
Result = DINDGEN(D1 [, ...,D8] [, Thread pool keywords]) [, ITMAX=value] [, RESIDUAL=variable] )
DISSOLVE - Provides a digital “dissolve” effect for images. ELMHES - Reduces nonsymmetric array to upper Hessenberg form.
DISSOLVE, Image [, DELAY=seconds] [, /ORDER] Result = ELMHES( A [, /COLUMN] [, /DOUBLE]
[, SIZ=pixels] [, X0=pixels, Y0=pixels] [, /NO_BALANCE] )
DIST - Creates array with each element proportional to its frequency. EMBOSS - Applies a convolution operator to a 2D image array to gen-
erate an array.
Result = DIST(N [, M])
Result = EMBOSS (Array [, /ADD_BACK]
DISTANCE_MEASURE - Computes the pairwise distance between [, AZIMUTH=value] [, BIAS=value] [, /CENTER]
a set of items or observations.
[, /EDGE_TRUNCATE] [, /EDGE_WRAP]
Result = DISTANCE_MEASURE( Array [, /DOUBLE] [, /EDGE_ZERO] [, INVALID=value]
[, /MATRIX] [, MEASURE=value] [, MISSING=value] [, /NAN] [, /NORMALIZE] )
[, POWER_MEASURE=value] )
EMPTY - Empties the graphics output buffer.
EMPTY

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 41

ENABLE_SYSRTN - Enables/disables IDL system routines. EXTRAC - Returns sub-matrix of input array. Array operators (e.g., *
ENABLE_SYSRTN [, Routines ] [, /DISABLE] and :) should usually be used instead.
[, /EXCLUSIVE] [, /FUNCTIONS] Result = EXTRAC( Array, C1, C2, ..., Cn, S1, S2, ..., Sn )

EOF - Tests the specified file for the end-of-file condition. EXTRACT_SLICE - Returns 2D planar slice extracted from volume.
Result = EOF(Unit) Result = EXTRACT_SLICE( Vol, Xsize, Ysize, Xcenter,
Ycenter, Zcenter, Xrot, Yrot, Zrot
EOS_* Routines - See “EOS Routines” on page 140. [, ANISOTROPY=[xspacing, yspacing, zspacing]]
.ERASE - Erases the screen of the current graphics device, or starts a [, /CUBIC] [, OUT_VAL=value] [, /RADIANS]
new page if the device is a printer.
[, /SAMPLE] [, VERTICES=variable] )
ERASE [, Background_Color] [, CHANNEL=value] or
[, COLOR=value] Result = EXTRACT_SLICE( Vol, Xsize, Ysize, Xcenter,
ERODE - Implements the erosion operator on binary and grayscale Ycenter, Zcenter, PlaneNormal, Xvec
images and vectors. [, ANISOTROPY=[xspacing, yspacing, zspacing]]
Result = ERODE( Image, Structure [, X0 [, Y0 [, Z0]]] [, /CUBIC] [, OUT_VAL=value] [, /RADIANS]
[, /GRAY [, /PRESERVE_TYPE | , /UINT | , /ULONG]] [, /SAMPLE] [, VERTICES=variable] )
[, VALUES=array] )
ERF - Returns the value of an error function. F
Result = ERF(Z [, Thread pool keywords] )
ERFC - Returns the value of a complementary error function. F_CVF - Computes the cutoff value in an F distribution.
Result = ERFC(Z [, Thread pool keywords] ) Result = F_CVF(P, Dfn, Dfd)
ERFCX - Returns the value of a scaled complementary error function. F_PDF - Computes the F distribution function.
Result = ERFCX(Z [, Thread pool keywords] ) Result = F_PDF(V, Dfn, Dfd)
ERRPLOT - Plots error bars over a previously drawn plot. FACTORIAL - Computes the factorial N!.
ERRPLOT, [ X, ] Low, High [, WIDTH=value] Result = FACTORIAL( N [, /STIRLING] [, /UL64] )
ESTIMATOR_FILTER - Applies an order statistic noise-reduction FFT - Returns the Fast Fourier Transform of Array.
filter to a one-channel image.
Result = FFT( Array [, Direction] [, /CENTER]
Result = ESTIMATOR_FILTER( ImageData, Width
[, DIMENSION=vector] [, /DOUBLE] [, /INVERSE]
[, Height] [, INVALID=value] [, /MEDIAN]
[, /OVERWRITE] [, Thread pool keywords] )
[, /MIDPOINT] [, MISSING=value] [, /NAN]
[, TRUNCATE=value] ) FILE_BASENAME - Returns the basename of a file path.
Result = FILE_BASENAME(Path [, RemoveSuffix]
EXECUTE - Compiles and executes IDL statements contained in a
string. [, /FOLD_CASE])
Result = EXECdUTE(String [, QuietCompile] FILE_CHMOD - Changes the current access permissions (or modes)
[, QuietExecution]) associated with a file or directory.
FILE_CHMOD, File [, Mode]
EXIT - Quits IDL and exits back to the operating system.
[, /A_EXECUTE | /A_READ | , /A_WRITE ]
EXIT [, /NO_CONFIRM] [, STATUS=code]
[, /G_EXECUTE | /G_READ | , /G_WRITE ]
EXP - Returns the natural exponential function of Expression. [, /O_EXECUTE | /O_READ | , /O_WRITE ]
Result = EXP(Expression [, Thread pool keywords] ) [, /NOEXPAND_PATH]
EXPAND - Shrinks/expands image using bilinear interpolation. [, /U_EXECUTE | /U_READ | , /U_WRITE ]
UNIX-Only Keywords: [, /SETGID] [, /SETUID]
EXPAND, A, Nx, Ny, Result [, FILLVAL=value]
[, /STICKY_BIT]
[, MAXVAL=value]
FILE_COPY - Copies files or directories to a new location.
EXPAND_PATH - Expands path-definition string into full path name
for use with the !PATH system variable. FILE_COPY, SourcePath, DestPath [, /ALLOW_SAME]
Result = EXPAND_PATH( String [, /ALL_DIRS] [, /NOEXPAND_PATH] [, /OVERWRITE]
[, /ARRAY] [, COUNT=variable] [, /DLM] [, /HELP] ) [, /RECURSIVE] [, /REQUIRE_DIRECTORY]
[, /VERBOSE]
EXPINT - Returns the value of the exponential integral.
Unix-Only Keywords: [, /COPY_NAMED_PIPE]
Result = EXPINT( N, X [, /DOUBLE] [, EPS=value] [, /COPY_SYMLINK] [, /FORCE]
[ ,ITER=variable] [, ITMAX=value] [, Thread pool
keywords] )

IDL Quick Reference


42 Alphabetical List of IDL Routines

FILE_DELETE - Deletes a file or empty directory, if the process has FILE_SEARCH - continued
the necessary permissions to remove the file as defined by the cur- [, /MATCH_ALL_INITIAL_DOT | /MATCH_INITIAL_
rent operating system.
DOT ] [, /NOSORT ] [, /QUOTE ]
FILE_DELETE, File1 [,... FileN]
[, /TEST_DIRECTORY ] [, /TEST_EXECUTABLE ]
[, /ALLOW_NONEXISTENT] [, /NOEXPAND_PATH]
[, /TEST_READ ] [, /TEST_REGULAR ]
[, /QUIET] [, /RECURSIVE] [, VERBOSE]
[, /TEST_WRITE ] [, /TEST_ZERO_LENGTH ]
FILE_DIRNAME - Returns the dirname of a file path. [, /WINDOWS_SHORT_NAMES ]
Result = FILE_DIRNAME(Path UNIX-Only Keywords: [, /TEST_BLOCK_SPECIAL ]
[, /MARK_DIRECTORY]) [, /TEST_CHARACTER_SPECIAL ]
FILE_EXPAND_PATH - Expands a given file or partial directory [, /TEST_DANGLING_SYMLINK ] [, /TEST_GROUP ]
name to its fully qualified name regardless of the current working [, /TEST_NAMED_PIPE ] [, /TEST_SETGID ]
directory. [, /TEST_SETUID ] [, /TEST_SOCKET ]
Return = FILE_EXPAND_PATH (Path) [, /TEST_STICKY_BIT ] [, /TEST_SYMLINK ]
FILE_INFO - Returns status information about a file. [, /TEST_USER ]
Result = FILE_INFO(Path [, /NOEXPAND_PATH] ) FILE_TEST - Checks files for existence and other file attributes with-
out first having to open the file.
FILE_LINES - Returns the number of lines of text in a file.
Result = FILE_TEST( File [, /DIRECTORY | ,
FILE_LINES(Path [ ,/COMPRESS]
/EXECUTABLE | , /READ | , /REGULAR | , /WRITE |
[, /NOEXPAND_PATH] )
, /ZERO_LENGTH] [, GET_MODE=variable]
FILE_LINK - Creates UNIX file links. [, /NOEXPAND_PATH] )
FILE_LINK, SourcePath, DestPath [, /ALLOW_SAME] UNIX-Only Keywords: [, /BLOCK_SPECIAL |
[, /HARDLINK] [, /NOEXPAND_PATH] [, /VERBOSE] , /CHARACTER_SPECIAL | , /DANGLING_SYMLINK
| , /GROUP | , /NAMED_PIPE | , /SETGID | , /SETUID |
FILE_MKDIR - Creates a new directory, or directories, with default
access permissions for the current process. , /SOCKET | , /STICKY_BIT | , /SYMLINK | , /USER]
FILE_MKDIR, File1 [,... FileN] [, /NOEXPAND_PATH] FILE_WHICH - Separates a specified file path into its component
directories, and searches each directory in turn for a specific file.
FILE_MOVE - Renames files and directories.
Result = FILE_WHICH( [Path, ] File
FILE_MOVE, SourcePath, DestPath [, /ALLOW_SAME]
[, /INCLUDE_CURRENT_DIR] )
[, /NOEXPAND_PATH] [, /OVERWRITE]
[, /REQUIRE_DIRECTORY] [, /VERBOSE] FILEPATH - Returns full path to a file in the IDL distribution.
Result = FILEPATH( Filename [, ROOT_DIR=string]
FILE_POLL_INPUT - Blocks processing until it detects that a
[, SUBDIRECTORY=string/string_array]
read operation on a specified file will succeed.
[, /TERMINAL] [, /TMP] )
Result = FILE_POLL_INPUT(Units [, COUNT=variable]
[, TIMEOUT=value] ) FINDGEN - Returns a floating-point array with each element set to its
subscript.
FILE_READLINK - Returns the path pointed to by a UNIX symbolic Result = FINDGEN(D1 [, ...,D8] [, Thread pool
link.
keywords] )
FILE_READLINK(Path [, /ALLOW_NONEXISTENT]
[, /ALLOW_NONSYMLINK] [, /NOEXPAND_PATH] ) FINITE - Returns True if its argument is finite.
FILE_SAME - Determines whether two different file names refer to Result = FINITE( X [, /INFINITY] [, /NAN]
the same underlying file. [, SIGN=value] [, Thread pool keywords] )
Result = FILE_SAME(Path1, Path2 FIX - Converts argument to integer type, or type specified by TYPE key-
[, /NOEXPAND_PATH] ) word.

FILE_SEARCH - Returns a string array containing the names of all Result = FIX( Expression [, Offset [, D1 [, ...,D8]]]
files matching the input path specification. [, /PRINT] [, TYPE=type code{0 to 15}] [, Thread pool
Result = FILE_SEARCH(Path_Specification) keywords] )
or FLICK - Causes the display to flicker between two images.
Result = FILE_SEARCH(Dir_Specification, FLICK, A, B [, Rate]
Recur_Pattern)
Keywords: [, COUNT=variable ] FLOAT - Converts argument to single-precision floating-point.
[, /EXPAND_ENVIRONMENT ] [, /EXPAND_TILDE ] Result = FLOAT( Expression [, Offset [, D1 [, ...,D8]]]
[, /FOLD_CASE ] [, /FULLY_QUALIFY_PATH ] [, Thread pool keywords] )
[, /ISSUE_ACCESS_ERROR ] FLOOR - Returns closest integer less than or equal to argument.
[, /MARK_DIRECTORY ] Result = FLOOR(X [, /L64 ] [, Thread pool keywords] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 43

FLOW3 - Draws lines representing a 3D flow/velocity field.


FLOW3, Vx, Vy, Vz [, ARROWSIZE=value] [, /BLOB]
G
[, LEN=value] [, NSTEPS=value] [, NVECS=value]
[, SX=vector, SY=vector, SZ=vector] GAMMA - Returns the gamma function of Z.
Result = GAMMA(Z [, Thread pool keywords] )
FLTARR - Returns a single-precision, floating-point vector or array.
Result = FLTARR( D1 [, ...,D8] [, /NOZERO] ) GAMMA_CT - Applies gamma correction to a color table.
GAMMA_CT, Gamma [, /CURRENT] [, /INTENSITY]
FLUSH - Flushes file unit buffers.
FLUSH, Unit1, ..., Unitn GAUSS_CVF - Computes cutoff value in Gaussian distribution.
Result = GAUSS_CVF(P)
FOR - Executes statements repeatedly, incrementing or decrementing a
variable with each repetition, until a condition is met. GAUSS_PDF - Computes Gaussian distribution function.
FOR variable = init, limit [, Increment] DO statement Result = GAUSS_PDF(V)
or
GAUSS2DFIT - Fits a 2D elliptical Gaussian equation to rectilinearly
FOR variable = init, limit [, Increment] DO BEGIN gridded data.
statements Result = GAUSS2DFIT( Z, A [, X, Y] [, /NEGATIVE]
ENDFOR [, /TILT] )
FORMAT_AXIS_VALUES - Formats numbers as strings for use as GAUSSFIT - Fits the sum of a Gaussian and a quadratic.
axis values.
Result = GAUSSFIT( X, Y [, A] [, CHISQ=variable]
Result = FORMAT_AXIS_VALUES( Values )
[, ESTIMATES=array] [, MEASURE_ERRORS=vector]
FORWARD_FUNCTION - Causes argument(s) to be interpreted as [, NTERMS=integer{3 to 6}] [, SIGMA=variable]
functions rather than variables (versions of IDL prior to 5.0 used
parentheses to declare arrays). [, YERROR=variable] )
FORWARD_FUNCTION Name1, Name2, ..., Namen GAUSSINT - Returns integral of Gaussian probability function.
FREE_LUN - Frees previously-reserved file units. Result = GAUSSINT(X [, Thread pool keywords] )
FREE_LUN [, Unit1, ..., Unitn] GET_DRIVE_LIST - Returns string array of the names of valid
[, EXIT_STATUS=variable] [, /FORCE ] drives/volumes for the file system.
Result = GET_DRIVE_LIST( [, COUNT=variable])
FSTAT - Returns information about a specified file unit.
Windows keywords: [, /CDROM] [, /FIXED]
Result = FSTAT(Unit)
[, /REMOTE] [, /REMOVABLE]
FULSTR - Restores a sparse matrix to full storage mode.
GET_DXF_OBJECTS - Returns an IDLgrModel containing graph-
Result = FULSTR(A) ics from a given DXF file.
FUNCT - Evaluates sum of a Gaussian and a 2nd-order polynomial and Result = GET_DXF_OBJECTS( Filename [, Blocktable]
returns value of its partial derivatives. [, Layertable] [, /NORMALIZE] [, /BYLAYER]
FUNCT, X, A, F [, Pder] [, IGNORED=array])
FUNCTION - Defines a function. GET_KBRD - Gets one input character.
FUNCTION Function_Name, parameter1, ..., parametern Result = GET_KBRD([Wait]
[ ,/ESCAPE | ,/KEY_NAME])
FV_TEST - Performs the F-variance test.
Result = FV_TEST(X, Y) GET_LOGIN_INFO - Returns the name of the computer running the
IDL process, as well as the user’s login name.
FX_ROOT - Computes real and complex roots of a univariate nonlinear Result = GET_LOGIN_INFO()
function using an optimal Müller’s method.
Result = FX_ROOT(X, Func [, /DOUBLE] GET_LUN - Reserves a logical unit number (file unit).
[, ITMAX=value] [, /STOP] [, TOL=value] ) GET_LUN, Unit
FZ_ROOTS - Finds the roots of a complex polynomial using GET_SCREEN_SIZE - Returns dimensions of the screen.
Laguerre’s method. Result = GET_SCREEN_SIZE( [Display_name]
Result = FZ_ROOTS(C [, /DOUBLE] [, EPS=value] [, RESOLUTION=variable] )
[, /NO_POLISH] ) X Windows Keywords: [, DISPLAY_NAME=string]
GETENV - Returns the value of an environment variable.
Result = GETENV(Name [, /ENVIRONMENT] )
GOTO - Transfers program control to point specified by label.
GOTO, label

IDL Quick Reference


44 Alphabetical List of IDL Routines

GRID_INPUT - Preprocesses and sorts two-dimensional scattered data HDF_* Routines - See “HDF Routines” on page 144
points, and removes duplicate values.
HDF5_* Routines - See “HDF5 Routines” on page 149
GRID_INPUT, X, Y, F, X1, Y1, F1
HDF_BROWSER - Opens GUI to view contents of HDF, HDF-EOS,
[, DUPLICATES=string ] [, EPSILON=value ] or NetCDF file.
[, EXCLUDE=vector ] Template = HDF_BROWSER([Filename]
or [, CANCEL=variable] [, GROUP=widget_id]
GRID_INPUT, Lon, Lat, F, Xyz, F1, /SPHERE [, PREFIX=string])
[, /DEGREES] [, DUPLICATES=string ]
[, EPSILON=value ] [, EXCLUDE=vector ] HDF_READ - Extracts HDF, HDF-EOS, and NetCDF data and meta-
data into an output structure.
or
Result = HDF_READ( [Filename] [, DFR8=variable]
GRID_INPUT, R, Theta, F, X1, Y1, F1, /POLAR
[, DF24=variable] [, PREFIX=string]
[, /DEGREES] [, DUPLICATES=string ]
[, TEMPLATE=value] )
[, EPSILON=value ] [, EXCLUDE=vector ]
HEAP_FREE - Recursively frees all heap variables referenced by its
GRID_TPS - Uses thin plate splines to interpolate a set of values over a input argument.
regular 2D grid, from irregularly sampled data values.
HEAP_FREE, Var [, /OBJ] [, /PTR] [, /VERBOSE]
Interp = GRID_TPS (Xp, Yp, Values
[, COEFFICIENTS=variable] [, NGRID=[nx, ny]] HEAP_GC - Performs garbage collection on heap variables.
[, START=[x0, y0]] [, DELTA=[dx, dy]] ) HEAP_GC [, /OBJ | , /PTR] [, /VERBOSE]
GRID3 - Creates a regularly-gridded 3D dataset from a set of scattered HEAP_NOSAVE - Used to clear the save attribute of pointer or
3D nodes. object heap variables.
Result = GRID3( X, Y, Z, F, Gx, Gy, Gz HEAP_NOSAVE, HeapVar
[, DELTA=scalar/vector] [, DTOL=value] HEAP_SAVE - Used to query whether a pointer or object heap vari-
[, GRID=value] [, NGRID=value] [, START=[x, y, z]] ) able is savable. It can also be used to change the heap variable save
attribute.
GRIDDATA - Interpolates scattered data values and locations sampled
on a plane or a sphere to a regular grid. Result = HEAP_SAVE(HeapVar [, Set])
Result = GRIDDATA( X, F ) HELP - Provides information about the current IDL session.
or HELP, Expression1, ..., Expressionn [, /BREAKPOINTS]
Result = GRIDDATA( X, Y, F ) [, /BRIEF] [, /DEVICE] [, /DLM] [, /FILES] [, /FULL]
or [, /FUNCTIONS] [, /HEAP_VARIABLES] [, /KEYS]
Result = GRIDDATA( X, Y, Z, F, /SPHERE ) [, /LAST_MESSAGE] [, LEVEL=value] [, /MEMORY]
or [, /MESSAGES] [, NAMES=string_of_variable_names]
Result = GRIDDATA( Lon, Lat, F, /SPHERE ) [, /OBJECTS] [, OUTPUT=variable] [, /PATH_CACHE]
GS_ITER - Solves linear system using Gauss-Seidel iteration. [, /PREFERENCES] [, /PROCEDURES]
Result = GS_ITER( A, B [, /CHECK] [, /DOUBLE] [, /RECALL_COMMANDS] [, /ROUTINES]
[, LAMBDA=value{0.0 to 2.0}] [, MAX_ITER=value] [, /SHARED_MEMORY] [, /SOURCE_FILES]
[, TOL=value] [, X_0=vector] ) [, /STRUCTURES] [, /SYSTEM_VARIABLES]
[, /TRACEBACK]

H HILBERT - Constructs a Hilbert transform.


Result = HILBERT(X [, D])

H_EQ_CT - Histogram-equalizes the color tables for an image or a HIST_2D - Returns histogram of two variables.
region of the display. Result = HIST_2D( V1, V2 [, BIN1=width] [, BIN2=height]
H_EQ_CT [, Image] [, MAX1=value] [, MAX2=value] [, MIN1=value]
[, MIN2=value] )
H_EQ_INT - Interactively histogram-equalizes the color tables of an
image or a region of the display. HIST_EQUAL - Histogram-equalizes an image.
H_EQ_INT [, Image] Result = HIST_EQUAL( A [, BINSIZE=value]
HANNING - Creates Hanning and Hamming windows. [, FCN=vector] [, /HISTOGRAM_ONLY]
Result = HANNING( N1 [, N2] [, ALPHA=value{0.5 to [, MAXV=value] [, MINV=value] [, OMAX=variable]
1.0}] [, /DOUBLE] ) [, OMIN=variable] [, PERCENT=value] [, TOP=value] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 45

HISTOGRAM - Computes the density function of an array. ICONTOUR - continued


Result = HISTOGRAM( Array [, BINSIZE=value] iTool Contour Keywords: [, RGB_INDICES=vector of
[, INPUT=variable] [, LOCATIONS=variable] indices] [, RGB_TABLE=byte array of 256 by 3 or 3 by
[, MAX=value] [, MIN=value] [, /NAN] 256 elements] [, /{X | Y | Z}LOG] [, ZVALUE=value]
[, NBINS=value] [, OMAX=variable] Contour Object Keywords: [, AM_PM=vector of two
[, OMIN=variable] strings] [, ANISOTROPY=[x, y, z]] [, C_COLOR=color
[, /L64 | REVERSE_INDICES=variable] ) array] [, C_FILL_PATTERN=array of IDLgrPattern
objects] [, C_LABEL_INTERVAL=vector]
HLS - Creates color table in Hue, Lightness, Saturation color system.
[, C_LABEL_NOGAPS=vector]
HLS, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr]
[, C_LABEL_OBJECTS=array of object references]
HOUGH - Returns the Hough transform of a two-dimensional image. [, C_LABEL_SHOW=vector of integers]
Hough Transform: Result = HOUGH( Array [, C_LINESTYLE=array of linestyles]
[, /DOUBLE] [, DRHO=scalar] [, DX=scalar] [, C_THICK=float array{each element 1.0 to 10.0}]
[, DY=scalar] [, /GRAY] [, NRHO=scalar] [, C_USE_LABEL_COLOR=vector of values]
[, NTHETA=scalar] [, RHO=variable] [, RMIN=scalar] [, C_USE_LABEL_ORIENTATION=vector of values]
[, THETA=variable] [, XMIN=scalar] [, YMIN=scalar] ) [, C_VALUE=scalar or vector] [, CLIP_PLANES=array]
Hough Backprojection: Result = HOUGH( Array, [, COLOR=RGB vector] [, DAYS_OF_WEEK=vector of
/BACKPROJECT, RHO=variable, THETA=variable seven strings] [, DEPTH_OFFSET=value]
[, /DOUBLE] [, DX=scalar] [, DY=scalar] [, NX=scalar] [, /DOWNHILL] [, /FILL] [, GRID_UNITS=value]
[, NY=scalar] [, XMIN=scalar] [, YMIN=scalar] ) [, /HIDE] [, INSERT_COLORBAR=value]
[, INSERT_LEGEND=value] [, LABEL_FONT=objref]
HQR - Returns all eigenvalues of an upper Hessenberg array.
[, LABEL_FORMAT=string]
Result = HQR( A [, /COLUMN] [, /DOUBLE] )
[, LABEL_FRMTDATA=value]
HSV - Creates color table based on Hue/Saturation Value color system. [, LABEL_UNITS=string] [, MAX_VALUE=value]
HSV, Vlo, Vhi, Satlo, Sathi, Hue, Loops [, Colr] [, MIN_VALUE=value] [, MONTHS=vector of 12 values]
[, N_LEVELS=value] [, /PLANAR]
I [, SHADE_RANGE=[min, max] ] [, SHADING={0 |1}]
[, TICKINTERVAL=value] [, TICKLEN=value]
[, TRANSPARENCY=value]
IBETA - Computes the incomplete beta function. [, USE_TEXT_ALIGNMENTS=value]
Result = IBETA( A, B, Z[, /DOUBLE] [, EPS=value] Axis Object Keywords: [, {X | Y | Z}GRIDSTYLE={0 | 1
[, ITER=variable] [, ITMAX=value] ) | 2 | 3 | 4 | 5 | 6}]
ICONTOUR - Creates an iTool and associated user interface (UI) con- [, {X | Y | Z}MAJOR=integer]
figured to display and manipulate contour data. [, {X | Y | Z}MINOR=integer]
ICONTOUR[, Z[, X, Y]] [, {X | Y | Z}RANGE=[min, max]] [, {X | Y | Z}
iTool Common Keywords: SUBTICKLEN=ratio]
[, ANISTROPIC_SCALE_2D=value] [, {X | Y | Z}TEXT_COLOR=RGB vector]
[, ANISTROPIC_SCALE_3D=value] [, {X | Y | Z}TICKFONT_INDEX= {0 | 1 | 2 | 3 | 4}]
[, BACKGROUND_COLOR=value] [, {X | Y | Z}TICKFONT_SIZE=integer] [, {X | Y | Z}
[, CURRENT_ZOOM=value] [, TICKFONT_STYLE={0 | 1 | 2 | 3}] [, {X | Y | Z}
[, DEPTHCUE_BRIGHT=value] TICKFORMAT=string or string array] [, {X | Y | Z}
[, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]] TICKINTERVAL=value] [, {X | Y | Z}TICKLAYOUT=
[, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW] {0 | 1 | 2}] [, {X | Y | Z}TICKLEN=value] [, {X | Y | Z}
[, IDENTIFIER=variable] [, LOCATION=[x, y]] TICKNAME=string array] [, {X | Y | Z}TICKUNITS=
[, MACRO_NAMES=string or string array] string] [, {X | Y | Z}TICKVALUES=vector] [, {X | Y | Z}
[, NAME=string] [. /NO_SAVEPROMPT] TITLE=string]
[, OVERPLOT=iToolID] [, RENDERER={0 | 1}] ICONVERTCOORD - Converts between iTool coordinate systems.
[, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT] Result = ICONVERTCOORD( X, [Y [, Z]]
[, STYLE_NAME=string] [, TITLE=string] [, /DATA | , /DEVICE | , /NORMAL]
[, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT] [, TARGET_IDENTIFIER=iToolID]
[, VIEW_NUMBER=integer] [, VIEW_TITLE=string] [, /TO_DATA | , /TO_DEVICE | , /TO_NORMAL]
[, VIEW_ZOOM=value] [, XMARGIN=value] [, TOOL=iToolID])
[, YMARGIN=value] [, /ZOOM_ON_RESIZE]

IDL Quick Reference


46 Alphabetical List of IDL Routines

IDELETE - Deletes a tool in the iTools system. IDLITSYS_CREATETOOL - continued


IDELETE[, iToolID] [, MACRO_NAMES=string or string array]
[, /NO_SAVEPROMPT] [OVERPLOT=iToolID]
IDENTITY - Returns an identity array.
[, RENDERER={0 | 1}] [, SCALE_ISOTROPIC=value]
Result = IDENTITY( N [, /DOUBLE] )
[, STYLE_NAME=string]
IDL_BASE64 - Uses MIME Base64 encoding to convert a byte array [, USER_INTERFACE=string] [, VIEW_GRID=vector]
into an Base64 encoded scalar string, or to convert a Base64- [, /VIEW_NEXT] [, VIEW_NUMBER=number]
encoded scalar string into a byte array.
[, VISUALIZATION_TYPE=vistype])
Result = IDL_BASE64(Input)
IELLIPSE - Creates an ellipse annotation in an existing iTool.
IDL_Container Object - See “IDL_Container” on page 79.
IELLIPSE, A, X, Y [, Z]
IDL_VALIDNAME - Determines whether a string may be used as a
valid IDL variable name or structure tag name. [, /DATA | , /DEVICE | , /NORMAL]
Result = IDL_VALIDNAME(String[, /CONVERT_ALL] [, ECCENTRICITY=Value] [, IDENTIFIER=Variable]
[, CONVERT_SPACES]) [, PROPERTY=Value]
[, TARGET_IDENTIFIER=iToolID] [, THETA=Value]
IDLanROI Object - See “IDLanROI” on page 80. [, TOOL=iToolID] [, /VISUALIZATION]
IDLanROIGroup Object - See “IDLanROIGroup” on page 81.
IF...THEN...ELSE - Conditionally executes a statement or block of
IDLEXBR_ASSISTANT - Launches the Export Bridge Assistant. statements.
IDLEXBR_ASSISTANT [, COLUMNHEIGHT=value] IF expression THEN statement [ ELSE statement ]
[, COLUMNWIDTH=value] [, /COM] or
[, OBJECT_FILE=filename] IF expression THEN BEGIN
[, PROJECT_FILE=pathname] statements
[, /DRAWABLE_EVENTHANDLERS] ENDIF [ ELSE BEGIN
IDLffDICOM Object - See “IDLffDICOM” on page 81. statements
ENDELSE ]
IDLffDicomEx Object - See Appendix B, “IDL DICOM Quick
Reference” in the Medical Imaging in IDL manual. IGAMMA - Computes the incomplete gamma function.
IDLffDicomExCfg Object - See Appendix B, “IDL DICOM Quick Result = IGAMMA( A, Z [, /DOUBLE] [, EPS=value]
Reference” in the Medical Imaging in IDL manual. [, ITER=variable] [, ITMAX=value]
IDLffDicomExQuery Object - See Appendix B, “IDL DICOM [, METHOD=variable] )
Quick Reference” in the Medical Imaging in IDL manual.
IDLffDicomExStorScu Object - See Appendix B, “IDL DICOM IGETCURRENT - Gets the identifier of (and optionally, an object
Quick Reference” in the Medical Imaging in IDL manual. reference to) the current tool in the IDL Intelligent Tools system.
Result = IGETCURRENT(
IDLffDXF Object - See “IDLffDXF” on page 82.
[, THUMBBACKGROUND=Value]
IDLffJPEG2000 Object - See “IDLffJPEG2000” on page 82.
[, THUMBNAIL=Value] [, THUMBORDER=Value]
IDLffLangCat Object - See “IDLffLangCat” on page 83. [, THUMBSIZE=Value] [, TOOL=Value] )
IDLffMJPEG2000 Object - See “IDLffMJPEG2000” on page 83.
IGETDATA - Retrieves data from a specified iTools visualization.
IDLffMrSID Object - See “IDLffMrSID” on page 84. IGETDATA, ID, Arg1, Arg2, ... [, OBJECT=Value]
IDLffShape Object - See “IDLffShape” on page 84. [, TOOL=iToolID]
IDLffXMLDOM* - See “IDLffXMLDOM Classes” on page 85.
IGETID - Retrieves the full iTool object identifier string for an iTool
IDLffXMLSAX Object - See “IDLffXMLSAX” on page 90. visualization item based on a portion of the identifier.
IDLgr* Objects - IDLgr* objects and their methods are described Result = IGETID ([Id] [, TOOL=value])
starting with “IDLgrAxis” on page 91.
IGETPROPERTY - Retrieves a property value from an iTools visual-
IDLit* Objects - IDLit* objects and their methods are described start- ization.
ing with “IDLitCommand” on page 107.
IGETPROPERTY, ID [, PROPERTY=value]
IDLITSYS_CREATETOOL - Creates an instance of the specified [, _REGISTERED=array] [, TOOL=iToolID]
tool registered within the iTools system.
Result = IDLITSYS_CREATETOOL(StrTool IIMAGE - Creates an iTool and associated user interface (UI) configured
to display and manipulate image data.
[, ANISTROPIC_SCALE_2D=value]
[, ANISTROPIC_SCALE_3D=value] IIMAGE[, Image[, X, Y]]
[, DIMENSIONS=[width,height]] or
[, /DISABLE_SPLASH_SCREEN] IIMAGE[, Filename]
[, IDENTIFIER=variable] [, INITIAL_DATA=data]
[, LOCATION=[x, y]]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 47

IIMAGE - continued IMAP - Creates an iTool and associated user interface (UI) configured to
iTool Common Keywords: display and manipulate map data.
[, ANISTROPIC_SCALE_2D=value] IMAP[, MAP_PROJECTION=string]
[, ANISTROPIC_SCALE_3D=value] or
[, BACKGROUND_COLOR=value] IMAP[, Image[, X, Y]] [, GEOTIFF=variable]
[, CURRENT_ZOOM=value] [, GRID_UNITS=value] [, MAP_PROJECTION=string]
[, DEPTHCUE_BRIGHT=value] or
[, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]] IMAP[, Z[, X, Y]] , /CONTOUR [, GRID_UNITS=value]
[, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW] [, MAP_PROJECTION=string]
[, IDENTIFIER=variable] [, LOCATION=[x, y]] or
[, MACRO_NAMES=string or string array] IMAP[, Filename]
[, NAME=string] [. /NO_SAVEPROMPT] iTool Common Keywords:
[, OVERPLOT=iToolID] [, RENDERER={0 | 1}] [, ANISTROPIC_SCALE_2D=value]
[, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT] [, ANISTROPIC_SCALE_3D=value]
[, STYLE_NAME=string] [, TITLE=string] [, BACKGROUND_COLOR=value]
[, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT] [, CURRENT_ZOOM=value]
[, VIEW_NUMBER=integer] [, VIEW_TITLE=string] [, DEPTHCUE_BRIGHT=value]
[, VIEW_ZOOM=value] [, XMARGIN=value] [, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]]
[, YMARGIN=value] [, /ZOOM_ON_RESIZE] [, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW]
Image Keywords: [, ALPHA_CHANNEL=2-D array] [, IDENTIFIER=variable] [, LOCATION=[x, y]]
[, BLUE_CHANNEL=2-D array] [, MACRO_NAMES=string or string array]
[, GREEN_CHANNEL=2-D array] [, NAME=string] [, /NO_SAVEPROMPT]
[, IMAGE_DIMENSIONS=[width, height]] [, OVERPLOT=iToolID] [, RENDERER={0 | 1}]
[, IMAGE_LOCATION=[x, y]] [, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT]
[, INSERT_COLORBAR=value] [, RED_CHANNEL=2- [, STYLE_NAME=string] [, TITLE=string]
D array] [, RGB_TABLE=byte array of 256 by 3 or 3 by [, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT]
256 elements] [, TRANSPARENCY=value] [, VIEW_NUMBER=integer] [, VIEW_TITLE=string]
[, ZVALUE=value] [, VIEW_ZOOM=value] [, XMARGIN=value]
Image Object Keywords: [, YMARGIN=value] [, /ZOOM_ON_RESIZE]
[, BLEND_FUNCTION=vector] Image Keywords: This procedure accepts all IIMAGE
[, CHANNEL=hexadecimal bitmask] keywords.
[, CLIP_PLANES=array] [, /HIDE] [, /INTERPOLATE] Contour Keywords: If the CONTOUR keyword is set,
[, /ORDER] [, SUB_RECT=[x, y, xdim, ydim]] this procedure accepts all ICONTOUR keywords.
Map Projection Keywords:
IMAGE_CONT - Overlays an image with a contour plot.
[, CENTER_LATITUDE=value]
IMAGE_CONT, A [, /ASPECT] [, /INTERP] [, CENTER_LONGITUDE=value]
[, /WINDOW_SCALE] [, ELLIPSOID=string] [, FALSE_EASTING=value]
IMAGE_STATISTICS - Computes sample statistics for a given array [, FALSE_NORTHING=value] [, HEIGHT=value]
of values. [, HOM_AZIM_LONGITUDE=value]
IMAGE_STATISTICS, Data [, /LABELED [, HOM_AZIM_ANGLE=value]
| [, /WEIGHTED] [, WEIGHT_SUM=variable]] [, HOM_LATITUDE1=value]
[, /VECTOR] [, LUT=array] [, MASK=array] [, HOM_LATITUDE2=value]
[, COUNT=variable] [, MEAN=variable] [, HOM_LONGITUDE1=value]
[, STDDEV=variable] [, DATA_SUM=variable] [, HOM_LONGITUDE2=value] [, IS_ZONES=value]
[, SUM_OF_SQUARES=variable] [, IS_JUSTIFY=value]
[, MINIMUM=variable] [, MAXIMUM=variable] [, LIMIT=[latmin, lonmin, latmax, lonmax]]
[, VARIANCE=variable] [, MERCATOR_SCALE=value] [, OEA_ANGLE=value]
IMAGINARY - Returns the imaginary part of a complex value. [, OEA_SHAPEM=value] [, OEA_SHAPEN=value]
Result = IMAGINARY(Complex_Expression [, Thread [, SEMIMAJOR_AXIS=value]
pool keywords] ) [, SEMIMINOR_AXIS=value]
[, SOM_INCLINATION=value]
[, SOM_LONGITUDE=value] [, SOM_PERIOD=value]
[, SOM_RATIO=value] [, SOM_FLAG=value]

IDL Quick Reference


48 Alphabetical List of IDL Routines

IMAP Map Projection Keywords - continued INTERVAL_VOLUME - Generates a tetrahedral mesh from volumet-
[, SOM_LANDSAT_NUMBER=value] ric data.
[, SOM_LANDSAT_PATH=value] INTERVAL_VOLUME, Data, Value0, Value1, Outverts,
[, SPHERE_RADIUS=value] Outconn [, AUXDATA_IN=array,
[, STANDARD_PARALLEL=value] AUXDATA_OUT=variable]
[, STANDARD_PAR1=value] [, GEOM_XYZ=array, TETRAHEDRA=array]
[, STANDARD_PAR2=value] [, PROGRESS_CALLBACK=string]
[, TRUE_SCALE_LATITUDE=value] [, ZONE=value] [, PROGESS_METHOD=string]
Axis Keywords: [, PROGRESS_OBJECT=objref]
[, [XY]GRIDSTYLE={0 | 1 | 2 | 3 | 4 | 5 | 6}] [, PROGRESS_PERCENT=percent{0 to 100}]
[, [XY]MAJOR=integer] [, [XY]MINOR=integer] [, PROGRESS_USERDATA=value]
[, [XY]RANGE=[min, max]] INVERT - Computes the inverse of a square array.
[, [XY]SUBTICKLEN=ratio] Result = INVERT( Array [, Status] [, /DOUBLE] )
[, [XY]TEXT_COLOR=RGB vector]
[, [XY]TICKFONT_INDEX={0 | 1 | 2 | 3 | 4}] IOCTL - Performs special functions on UNIX files.
[, [XY]TICKFONT_SIZE=integer] Result = IOCTL( File_Unit [, Request, Arg]
[, [XY]TICKFONT_STYLE={0 | 1 | 2 | 3}] [, /BY_VALUE] [, /MT_OFFLINE] [, /MT_REWIND]
[, [XY]TICKFORMAT=string or string array] [, MT_SKIP_FILE=[-]number_of_files]
[, [XY]TICKINTERVAL=value] [, MT_SKIP_RECORD=[-]number_of_records]
[, [XY]TICKLAYOUT={0 | 1 | 2}] [, /MT_WEOF] [, /SUPRESS_ERROR] )
[, [XY]TICKLEN=value] IOPEN - Opens a file, reads data from the file, and adds one or more
[, [XY]TICKNAME=string array] variables containing the data to IDL’s current scope.
[, [XY]TICKUNITS=string] IOPEN, Filename [, Data [, Palette]] [, /BINARY]
[, [XY]TICKVALUES=vector] [, [XY]TITLE=string] [, /VISUALIZE]
INDGEN - Return an integer array with each element set to its sub- IPLOT - Creates an iTool and associated user interface (UI) configured
script. to display and manipulate plot data.
Result = INDGEN(D1 [, ...,D8] [, /BYTE | , /COMPLEX | , IPLOT, [X,] Y
/DCOMPLEX | , /DOUBLE | , /FLOAT | , /L64 | , /LONG or
| , /STRING | , /UINT | , /UL64 | , /ULONG] IPLOT, X, Y, Z
[, TYPE=value] [, Thread pool keywords] ) ot
IPLOT[, R], Theta, /POLAR
INT_2D - Computes the double integral of a bivariate function.
iTool Common Keywords:
Result = INT_2D( Fxy, AB_Limits, PQ_Limits, Pts
[, ANISTROPIC_SCALE_2D=value]
[, /DOUBLE] [, /ORDER] )
[, ANISTROPIC_SCALE_3D=value]
INT_3D - Computes the triple integral of a trivariate function. [, BACKGROUND_COLOR=value]
Result = INT_3D( Fxyz, AB_Limits, PQ_Limits, [, CURRENT_ZOOM=value]
UV_Limits, Pts [, /DOUBLE] ) [, DEPTHCUE_BRIGHT=value]
INT_TABULATED - Integrates a tabulated set of data. [, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]]
[, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW]
Result = INT_TABULATED(X, F [, /DOUBLE]
[, IDENTIFIER=variable] [, LOCATION=[x, y]]
[, /SORT])
[, MACRO_NAMES=string or string array]
INTARR - Creates an integer vector or array. [, NAME=string] [. /NO_SAVEPROMPT]
Result = INTARR( D1 [, ...,D8] [, /NOZERO] ) [, OVERPLOT=iToolID] [, RENDERER={0 | 1}]
INTERPOL - Performs linear interpolation on vectors. [, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT]
[, STYLE_NAME=string] [, TITLE=string]
For regular grids: Result = INTERPOL( V, N
[, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT]
[, /LSQUADRATIC] [, /QUADRATIC] [, /SPLINE] )
[, VIEW_NUMBER=integer] [, VIEW_TITLE=string]
For irregular grids: Result = INTERPOL( V, X, XOUT
[, VIEW_ZOOM=value] [, XMARGIN=value]
[, /LSQUADRATIC] [, /QUADRATIC] [, /SPLINE] )
[, YMARGIN=value] [, /ZOOM_ON_RESIZE]
INTERPOLATE - Returns an array of interpolates. Plot Keywords: [, ERRORBAR_COLOR=RGB vector]
Result = INTERPOLATE( P, X [, Y [, Z]] [, ERROR_CAPSIZE=points{0.0 to 1.0}]
[, CUBIC=value{-1 to 0}] [, /GRID] [, MISSING=value] [, /FILL_BACKGROUND] [, FILL_COLOR=RGB
[, Thread pool keywords] ) vector] [, FILL_LEVEL=value]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 49

IPLOT iTool Plot Keywords - continued IREGISTER - Registers iTool object classes with the iTools system.
[, INSERT_COLORBAR=value] IREGISTER, Name, ItemName [, /ANNOTATION]
[, RGB_TABLE=byte array of 256 by 3 or 3 by 256 [, /DEFAULT] [, /FILE_READER] [, /FILE_WRITER]
elements] [, FILL_TRANSPARENCY=value] [, TYPES=string] [, /UI_PANEL] [, /UI_SERVICE]
[, /SCATTER] [, SYM_COLOR=RGB color] [, /USER_INTERFACE] [, /VISUALIZATION]
[, SYM_INCREMENT=integer]
IRESET - Resets the iTools session.
[, SYM_INDEX=integer]
IRESET [, /NO_PROMPT]
[, SYM_OBJECT=object reference]
[, SYM_SIZE=point{0.0 to 1.0}] IRESOLVE - Resolves all IDL code within the iTools directory, as well
[, SYM_THICK=points{1.0 to 10.0}] as all other IDL code required for the iTools framework.
[, TRANSPARENCY=value] IRESOLVE [, PATH=string]
[, /USE_DEFAULT_COLOR] [, /XY_SHADOW] IR_FILTER - FIlters data with an infinite impulse response (IIR) or
[, /{X | Y | Z}_ERRORBARS] [, /{X | Y | Z}LOG] finite impulse response (FIR) filter.
[, {X | Y | Z}ERROR=vector or array] Result = IR_FILTER( C [, D], Data [, /DOUBLE] )
[, /XZ_SHADOW] [, /YZ_SHADOW] IROTATE - Rotates an iTools visualization.
Plot Object Keywords: [, CLIP_PLANES=array]
IROTATE, Id, Degrees, [, /RESET] [, TOOL=iToolID]
[, COLOR = RGB vector] [, /HIDE] [, /HISTOGRAM] [, /XAXIS] [, /YAXIS] [, /ZAXIS]
[, INSERT_LEGEND=value] [, LINESTYLE=integer]
[, MAX_VALUE=value] [, MIN_VALUE=value] ISAVE - Saves the contents of the current iTool as an image file.
[, NSUM=value] [, /POLAR] [, THICK=points{1.0 to ISAVE, [Filename] [, RESOLUTION=value]
10.0}] [, VERT_COLORS=vector] [, /SAVE_AS]
Axis Object Keywords: [, {X | Y | Z}GRIDSTYLE={0 | 1 [, TARGET_IDENTIFIER=windowID | iToolID]
| 2 | 3 | 4 | 5 | 6}] [, {X | Y | Z}MAJOR=integer] [, TOOL=iToolID]
[, {X | Y | Z}MINOR=integer] ISCALE - Scales an iTools visualization.
[, {X | Y | Z}RANGE=[min, max]] ISCALE, Id [, X[, Y[, Z]]] [, /RESET] [, TOOL=iToolID]
[, {X | Y | Z} SUBTICKLEN=ratio] [, X=Value] [, Y=Value] [, Z=Value]
[, {X | Y | Z}TEXT_COLOR=RGB vector]
[, {X | Y | Z}TICKFONT_INDEX= {0 | 1 | 2 | 3 | 4}] ISETCURRENT - Set the current tool in the iTools system.
[, {X | Y | Z}TICKFONT_SIZE=integer] [, {X | Y | Z} ISETCURRENT, iToolID [, /SHOW]
TICKFONT_STYLE={0 | 1 | 2 | 3}] [, {X | Y | Z} ISETPROPERTY - Sets a property on one or more iTools visualiza-
TICKFORMAT=string or string array] [, {X | Y | Z} tions.
TICKINTERVAL=value] ISETPROPERTY, Id [, PROPERTY=value]
[, {X | Y | Z}TICKLAYOUT= {0 | 1 | 2}] [, TOOL=value]
[, {X | Y | Z}TICKLEN=value] [, {X | Y | Z} ISHFT - Performs integer bit shift.
TICKNAME=string array] [, {X | Y | Z}TICKUNITS= Result = ISHFT(P1, P2 [, Thread pool keywords] )
string] [, {X | Y | Z}TICKVALUES=vector] [, {X | Y | Z}
TITLE=string] ISOCONTOUR - Interprets the contouring algorithm found in the
IDLgrContour object.
IPOLYGON - Creates a polygon annotation in an existing iTool. ISOCONTOUR, Values, Outverts, Outconn
IPOLYGON, Points [, /DATA | , /DEVICE | , /NORMAL] [, AUXDATA_IN=array, AUXDATA_OUT=variable]
[, IDENTIFIER=Variable] [, PROPERTY=Value] [, C_LABEL_INTERVAL=vector of values]
[, TARGET_IDENTIFIER=iToolID] [, TOOL=iToolID] [, C_LABEL_SHOW=vector of integers]
[, /VISUALIZATION] [, C_VALUE=scalar or vector] [, /DOUBLE] [, /FILL]
IPOLYLINE - Creates a line annotation in an existing iTool. [, GEOMX=vector] [, GEOMY=vector]
IPOLYLINE, Points [, ARROW_SIZE=Value] [, GEOMZ=vector] [, LEVEL_VALUES=variable]
[, ARROW_STYLE=Value] [, N_LEVELS=levels]
[, /DATA | , /DEVICE | , /NORMAL] [, OUT_LABEL_OFFSETS=variable]
[, IDENTIFIER=Variable] [, PROPERTY=Value] [, OUT_LABEL_POLYLINES=variable]
[, TOOL=iToolID] [, TARGET_IDENTIFIER=iToolID] [, OUT_LABEL_STRINGS=variable]
[, /VISUALIZATION] [, OUTCONN_INDICES=variable]
[, POLYGONS=array of polygon descriptions]
IPUTDATA - Replaces the data in a specified iTools visualization with-
out changing other properties of the visualization.
IPUTDATA, Id, Data1, Data2, ... [, TOOL=iToolID]

IDL Quick Reference


50 Alphabetical List of IDL Routines

ISOSURFACE - Returns topologically consistent triangles by using ISURFACE - continued


oriented tetrahedral decomposition. Axis Object Keywords: [, {X | Y | Z}GRIDSTYLE={0 |
ISOSURFACE, Data, Value, Outverts, Outconn 1 | 2 | 3 | 4 | 5 | 6}] [, {X | Y | Z}MAJOR=integer]
[, AUXDATA_IN=array, AUXDATA_OUT=variable] [, {X | Y | Z}MINOR=integer]
[, GEOM_XYZ=array, TETRAHEDRA=array] [, {X | Y | Z}RANGE=[min, max]]
[, PROGRESS_CALLBACK=string] [, {X | Y | Z} SUBTICKLEN=ratio]
[, PROGESS_METHOD=string] [, {X | Y | Z}TEXT_COLOR=RGB vector]
[, PROGRESS_OBJECT=objref] [, {X | Y | Z}TICKFONT_INDEX= {0 | 1 | 2 | 3 | 4}]
[, PROGRESS_PERCENT=percent{0 to 100}] [, {X | Y | Z}TICKFONT_SIZE=integer] [, {X | Y | Z}
[, PROGRESS_USERDATA=value] TICKFONT_STYLE={0 | 1 | 2 | 3}] [, {X | Y | Z}
ISURFACE - Creates an iTool and associated user interface (UI) con- TICKFORMAT=string or string array] [, {X | Y | Z}
figured to display and manipulate surface data. TICKINTERVAL=value] [, {X | Y | Z}TICKLAYOUT=
ISURFACE[, Z[, X, Y]] {0 | 1 | 2}] [, {X | Y | Z}TICKLEN=value] [, {X | Y | Z}
iTool Common Keywords: TICKNAME=string array] [, {X | Y | Z}TICKUNITS=
[, ANISTROPIC_SCALE_2D=value] string] [, {X | Y | Z}TICKVALUES=vector] [, {X | Y | Z}
[, ANISTROPIC_SCALE_3D=value] TITLE=string]
[, BACKGROUND_COLOR=value]
ITEXT - Creates a text annotation in an existing iTool.
[, CURRENT_ZOOM=value]
ITEXT, Text [, X, Y [, Z]] [, ALIGNMENT=Value]
[, DEPTHCUE_BRIGHT=value]
[, BASELINE=Value]
[, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]]
[, /DATA | , /DEVICE | , /NORMAL]
[, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW]
[, IDENTIFIER=Variable] [, ORIENTATION=Value]
[, IDENTIFIER=variable] [, LOCATION=[x, y]]
[, PROPERTY=Value]
[, MACRO_NAMES=string or string array]
[, TARGET_IDENTIFIER=iToolID] [, TOOL=iToolID]
[, NAME=string] [, /NO_SAVEPROMPT]
[, UPDIR=Value] [, /VISUALIZATION]
[, OVERPLOT=iToolID] [, SCALE_ISOTROPIC=value]
[, /STRETCH_TO_FIT] [, STYLE_NAME=string] ITRANSLATE - Translates an iTools visualization.
[, TITLE=string] [, VIEW_GRID=[columns, rows]] ITRANSLATE, Id [, X[, Y[, Z]]]
[, /VIEW_NEXT] [, VIEW_NUMBER=integer] [, /DATA | /DEVICE | /NORMAL] [, /RESET]
[, VIEW_TITLE=string] [, VIEW_ZOOM=value] [, TOOL=iToolID] [, X=value] [, Y=value] [, Z=value]
[, XMARGIN=value] [, YMARGIN=value] IVECTOR - creates an iTool and associated user interface (UI) config-
[, /ZOOM_ON_RESIZE] ured to display and manipulate vector data.
Surface Keywords: IVECTOR [, U, V [, X, Y]]
[, RGB_TABLE=array of 256 by 3 or 3 by 256 elements] iTool Common Keywords:
[, TEXTURE_ALPHA=2-D array] [, ANISTROPIC_SCALE_2D=value]
[, TEXTURE_BLUE=2-D array] [, ANISTROPIC_SCALE_3D=value]
[, TEXTURE_GREEN=2-D array] [, BACKGROUND_COLOR=value]
[, TEXTURE_IMAGE=array] [, CURRENT_ZOOM=value]
[, TEXTURE_RED=2-D array] [, /{X | Y | Z}LOG] [, DEPTHCUE_BRIGHT=value]
Surface Object Keywords: [, BOTTOM=index or RGB [, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]]
vector] [, CLIP_PLANES=array] [, COLOR=RGB [, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW]
vector] [, DEPTH_OFFSET=value] [, /DOUBLE] [, IDENTIFIER=variable] [, LOCATION=[x, y]]
[, /EXTENDED_LEGO] [, /HIDDEN_LINES] [, /HIDE] [, MACRO_NAMES=string or string array]
[, INSERT_COLORBAR=value] [, NAME=string] [, /NO_SAVEPROMPT]
[, INSERT_LEGEND=value] [, LINESTYLE=value] [, OVERPLOT=iToolID] [, RENDERER={0 | 1}]
[, MAX_VALUE=value] [, MIN_VALUE=value] [, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT]
[, SHADING={0 | 1}] [, /SHOW_SKIRT] [, SKIRT=Z [, STYLE_NAME=string] [, TITLE=string]
value] [, STYLE={0 | 1 | 2 | 3 | 4 | 5 | 6}] [, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT]
[, TEXTURE_HIGHRES={0 | 1 | 2}] [, VIEW_NUMBER=integer] [, VIEW_TITLE=string]
[, /TEXTURE_INTERP] [, THICK=points{1.0 to 10.0}] [, VIEW_ZOOM=value] [, XMARGIN=value]
[, TRANSPARENCY=value] [, /USE_TRIANGLES] [, YMARGIN=value] [, /ZOOM_ON_RESIZE]
[, VERT_COLORS=vector or 2-D array]
[, ZERO_OPACITY_SKIP={0 | 1}]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 51

IVECTOR - continued IVOLUME - continued


Vector Keywords: [, DEPTHCUE_DIM=value] [, DIMENSIONS=[x, y]]
[, ARROW_STYLE={0 | 1}] [, /DISABLE_SPLASH_SCREEN] [,/FIT_TO_VIEW]
[, ARROW_THICK=float {1.0 to 10.0}] [, IDENTIFIER=variable] [, LOCATION=[x, y]]
[, AUTO_COLOR={0 | 1 | 2 }] [, /AUTO_SUBSAMPLE] [, MACRO_NAMES=string or string array]
[, COLOR=RGB vector] [, NAME=string] [, /NO_SAVEPROMPT]
[, DATA_LOCATION={0 | 1 | 2 }] [, OVERPLOT=iToolID] [, RENDERER={0 | 1}]
[, DIRECTION_CONVENTION={0 | 1 | 2 }] [, SCALE_ISOTROPIC=value] [, /STRETCH_TO_FIT]
[, GRID_UNITS={0 | 1 | 2 }] [, HEAD_ANGLE=float] [, STYLE_NAME=string] [, TITLE=string]
[, HEAD_INDENT=float] [, /HEAD_PROPORTIONAL] [, VIEW_GRID=[columns, rows]] [, /VIEW_NEXT]
[, HEAD_SIZE=float] [, /HIDE] [, VIEW_NUMBER=integer] [, VIEW_TITLE=string]
[, INSERT_COLORBAR=value] [, VIEW_ZOOM=value] [, XMARGIN=value]
[, LENGTH_SCALE=float] [, MAX_VALUE=float] [, YMARGIN=value] [, /ZOOM_ON_RESIZE]
[, MIN_VALUE=float] [, RGB_TABLE=array] Volume Keywords: [, /AUTO_RENDER]
[, /STREAMLINES] [, RENDER_EXTENTS={0 | 1 | 2}]
[, STREAMLINE_NSTEPS=integer] [, RENDER_QUALITY={1 | 2}]
[, STREAMLINE_STEPSIZE=float] [, SUBVOLUME=[xmin, ymin, zmin, xmax, ymax, zmax]]
[, SUBSAMPLE_METHOD={0 | 1}] [, VOLUME_DIMENSIONS=[width, height, depth]]
[, SYM_COLOR=value] [, SYM_INDEX=value] [, VOLUME_LOCATION=[x, y, z]]
[, SYM_SIZE=value] [, THICK=float {1.0 to 10.0}] Volume Object Keywords: [, AMBIENT=RGB vector]
[, TRANSPARENCY=value] [, BOUNDS=[xmin, ymin, zmin, xmax, ymax, zmax]]
[, USE_DEFAULT_COLOR=value] [, CLIP_PLANES=array]
[, VECTOR_COLORS=vector or array] [, COMPOSITE_FUNCTION={0 | 1 | 2 | 3}]
[, VECTOR_STYLE={0 | 1}] [, DEPTH_CUE=[zbright, zdim]] [, /HIDE]
[, X_STREAMPARTICLES=integer] [, HINTS={0 | 1 | 2 | 3}] [, INSERT_COLORBAR=value]
[, X_SUBSAMPLE=integer] [, /{X | Y | Z}LOG] [, /INTERPOLATE] [, /LIGHTING_MODEL]
[, Y_STREAMPARTICLES=integer] [, OPACITY_TABLE0=byte array of 256 elements]
[, Y_SUBSAMPLE=integer] [, ZVALUE=float] [, OPACITY_TABLE1=byte array of 256 elements]
Axis Object Keywords: [, RENDER_STEP=[x, y, z]]
[, [XYZ]GRIDSTYLE={0 | 1 | 2 | 3 | 4 | 5 | 6}] [, RGB_TABLE0=byte array of 256 by 3 or 3 by 256
[, [XYZ]MAJOR=integer] [, [XYZ]MINOR=integer] elements] [, RGB_TABLE1=byte array of 256 by 3 or 3
[, [XYZ]RANGE=[min, max]] by 256 elements] [, /TWO_SIDED] [, /ZBUFFER]
[, [XYZ]SUBTICKLEN=ratio] [, ZERO_OPACITY_SKIP={0 | 1}]
[, [XYZ]TEXT_COLOR=RGB vector] Axis Object Keywords: [, {X | Y | Z}GRIDSTYLE={0 | 1
[, [XYZ]TICKFONT_INDEX={0 | 1 | 2 | 3 | 4}] | 2 | 3 | 4 | 5 | 6}] [, {X | Y | Z}MAJOR=integer]
[, [XYZ]TICKFONT_SIZE=integer] [, {X | Y | Z}MINOR=integer]
[, [XYZ]TICKFONT_STYLE={0 | 1 | 2 | 3}] [, {X | Y | Z}RANGE=[min, max]]
[, [XYZ]TICKFORMAT=string or string array] [, {X | Y | Z}SUBTICKLEN=ratio]
[, [XYZ]TICKINTERVAL=value] [, {X | Y | Z}TEXT_COLOR=RGB vector]
[, [XYZ]TICKLAYOUT={0 | 1 | 2}] [, {X | Y | Z}TICKFONT_INDEX= {0 | 1 | 2 | 3 | 4}]
[, [XYZ]TICKLEN=value] [, [, {X | Y | Z}TICKFONT_SIZE=integer] [, {X | Y | Z}
[XYZ]TICKNAME=string array] TICKFONT_STYLE={0 | 1 | 2 | 3}] [, {X | Y | Z}
[, [XYZ]TICKUNITS=string] TICKFORMAT=string or string array] [, {X | Y | Z}
[, [XYZ]TICKVALUES=vector] [, [XYZ]TITLE=string] TICKINTERVAL=value] [, {X | Y | Z}TICKLAYOUT=
{0 | 1 | 2}] [, {X | Y | Z}TICKLEN=value] [, {X | Y | Z}
IVOLUME - Creates an iTool and associated user interface (UI) config-
ured to display and manipulate volume data. TICKNAME=string array] [, {X | Y | Z}TICKUNITS=
IVOLUME[, Vol0[, Vol1][, Vol2, Vol3]] string] [, {X | Y | Z}TICKVALUES=vector] [, {X | Y | Z}
iTool Common Keywords: TITLE=string]
[, ANISTROPIC_SCALE_2D=value] IZOOM - Changes the zoom factor on an iTools visualization.
[, ANISTROPIC_SCALE_3D=value] IZOOM, Zoomfactor, [, CENTER=value]
[, BACKGROUND_COLOR=value] [, CURRENT=variable]
[, CURRENT_ZOOM=value] [, /DATA | /DEVICE | /NORMAL] [, /RESET]
[, DEPTHCUE_BRIGHT=value] [, TARGET_IDENTIFIER=iToolID] [, TOOL=iToolID]

IDL Quick Reference


52 Alphabetical List of IDL Routines

J LAGUERRE - Returns value of the associated Laguerre polynomial.


Result = LAGUERRE( X, N [, K]
[, COEFFICIENTS=variable] [, /DOUBLE] )
JOURNAL - Logs IDL commands to a file.IDL.
LAPLACIAN - Applies a Laplacian operator to a 2D image array.
JOURNAL [, Arg]
Result = LAPLACIAN(Array [, /ADD_BACK]
JULDAY - Returns Julian Day Number for given month, day, and year. [, BIAS=value] [, /CENTER] [, /EDGE_WRAP]
Result = JULDAY(Month,Day,Year,Hour,Minute,Second) [, /EDGE_TRUNCATE] [, /EDGE_ZERO]
[, INVALID=value] [, KERNEL_SIZE={3 | 5}]
K [, MISSING=value] [, /NAN] [, /NORMALIZE] )
LA_CHOLDC - Computes the Cholesky factorization of an n-by-n
symmetric (or Hermitian) positive-definite array.
KEYWORD_SET - Returns True if Expression is defined and non- LA_CHOLDC, Array [, /DOUBLE] [, STATUS=variable]
zero or an array.
[, /UPPER]
Result = KEYWORD_SET(Expression)
LA_CHOLMPROVE - Uses Cholesky factorization to improve the
KRIG2D - Interpolates set of points using kriging. solution to a system of linear equations.
Result = KRIG2D( Z [, X, Y] [, EXPONENTIAL=vector] Result = LA_CHOLMPROVE( Array, Achol, B, X
[, SPHERICAL=vector] [, /REGULAR] [, BACKWARD_ERROR=variable] [, /DOUBLE]
[, XGRID=[xstart, xspacing]] [, XVALUES=array] [, FORWARD_ERROR=variable] [, /UPPER] )
[, YGRID=[ystart, yspacing]] [, YVALUES=array] LA_CHOLSOL - Used in conjunction with the LA_CHOLDC proce-
[, GS=[xspacing, yspacing]] [, BOUNDS=[xmin, ymin, dure to solve a set of linear equations.
xmax, ymax]] [, NX=value] [, NY=value] ) Result = LA_CHOLSOL( A, B [, /DOUBLE] [, /UPPER] )
KURTOSIS - Computes statistical kurtosis of n-element vector. LA_DETERM - Uses LU decomposition to compute the determinant
Result = KURTOSIS(X [, /DOUBLE] [, /NAN] ) of a square array.
Result = LA_DETERM( A [, /CHECK] [, /DOUBLE]
KW_TEST - Performs Kruskal-Wallis H-test. [, ZERO=value] )
Result = KW_TEST( X [, DF=variable]
[, MISSING=nonzero_value] ) LA_EIGENPROBLEM - Uses the QR algorithm to compute all
eigenvalues and eigenvectors of an array.
Result = LA_EIGENPROBLEM( A [, B]
L [, ALPHA=variable] [, BALANCE=value]
[, BETA=variable] [, /DOUBLE]
[, EIGENVECTORS=variable]
L64INDGEN - Returns a 64-bit integer array with each element set to
its subscript. [, LEFT_EIGENVECTORS=variable]
Result = L64INDGEN(D1 [, ...,D8] [, Thread pool [, NORM_BALANCE=variable]
keywords]) [, PERMUTE_RESULT=variable]
[, SCALE_RESULT=variable]
LABEL_DATE - Labels axes with dates. Use with [XYZ]TICKFOR- [, RCOND_VALUE=variable]
MAT keyword.
[, RCOND_VECTOR=variable] [, STATUS=variable] )
Result = LABEL_DATE
( [DATE_FORMAT=string/string array] LA_EIGENQL - Computes eigenvalues and eigenvectors of an array.
[, AM_PM=2-element vector of strings] Result = LA_EIGENQL( A [, B] [, /DOUBLE]
[, DAYS_OF_WEEK=7-element vector of strings] [, EIGENVECTORS=variable] [, FAILED=variable]
[, MONTHS=12-element vector of strings] [, GENERALIZED=value] [, METHOD=value]
[, OFFSET=value] [, /ROUND_UP] ) [, RANGE=vector] [, SEARCH_RANGE=vector]
and then, [, STATUS=variable] [, TOLERANCE=value] )
PLOT, x, y, XTICKFORMAT = 'LABEL_DATE' LA_EIGENVEC - Uses the QR algorithm to compute all or some of
LABEL_REGION - Labels regions (blobs) of a bi-level image. the eigenvectors of an array.
Result = LABEL_REGION( Data [, /ALL_NEIGHBORS] Result = LA_EIGENVEC( T, QZ [, BALANCE=value]
[, /ULONG] ) [, /DOUBLE] [, EIGENINDEX=variable]
[, LEFT_EIGENVECTORS=variable]
LADFIT - Fits paired data using least absolute deviation method. [, PERMUTE_RESULT=[ilo, ihi]]
Result = LADFIT( X, Y [, ABSDEV=variable] [, SCALE_RESULT=vector]
[, /DOUBLE] ) [, RCOND_VALUE=variable]
[, RCOND_VECTOR=variable] [, SELECT=vector] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 53

LA_ELMHES - Reduces a real nonsymmetric or complex non-Hermi- LA_TRIDC - Computes the LU decomposition of a tridiagonal array as
tian array to upper Hessenberg form H. array.
Result = LA_ELMHES( Array [, Q] [, BALANCE=value] LA_TRIDC, AL, A, AU, U2, Index [, /DOUBLE]
[, /DOUBLE] [, NORM_BALANCE=variable] [, STATUS=variable]
[, PERMUTE_RESULT=variable] LA_TRIMPROVE - Improves the solution to a system of linear equa-
[, SCALE_RESULT=variable] ) tions with a tridiagonal array.
LA_GM_LINEAR_MODEL - Used to solve a general Gauss- Result = LA_TRIMPROVE( AL, A, AU, DAL, DA, DAU,
Markov linear model problem. DU2, Index, B, X [, BACKWARD_ERROR=variable]
Result = LA_GM_LINEAR_MODEL( A, B, D, Y [, /DOUBLE] [, FORWARD_ERROR=variable] )
[, /DOUBLE] )
LA_TRIQL - Uses the QL and QR variants of the implicitly-shifted QR
LA_HQR - Uses the multishift QR algorithm to compute all eigenval- algorithm to compute the eigenvalues and eigenvectors of a sym-
ues of an n-by-n upper Hessenberg array. metric tridiagonal array.
Result = LA_HQR(H [, Q] [, /DOUBLE] LA_TRIQL, D, E [, A] [, /DOUBLE]
[, PERMUTE_RESULT=[ilo, ihi]] [, STATUS=variable]
[, STATUS=variable] ) LA_TRIRED - Reduces a real symmetric or complex Hermitian array
to real tridiagonal form T.
LA_INVERT - Uses LU decomposition to compute the inverse of a
square array. LA_TRIRED, Array, D, E [, /DOUBLE] [, /UPPER]
Result = LA_INVERT( A [, /DOUBLE] LA_TRISOL - Used in conjunction with the LA_TRIDC procedure to
[, STATUS=variable] ) solve a set of linear equations.
Result = LA_TRISOL( AL, A, AU, U2, Index, B
LA_LEAST_SQUARE_EQUALITY - Used to solve the linear
least-squares problem. [, /DOUBLE] )
Result = LA_LEAST_SQUARE_EQUALITY( A, B, C, D LEAST_SQUARES_FILTER - Reduces degradation and noise in
[, /DOUBLE] [, RESIDUAL=variable] ) an image based on the mean and variance of the degradation and
noise.
LA_LEAST_SQUARES - Used to solve the linear least-squares Result = LEAST_SQUARES_FILTER( ImageData,
problem.
DegradationFunction, Gamma )
Result = LA_LEAST_SQUARES( A, B [, /DOUBLE]
[, METHOD=value] [, RANK=variable] LEEFILT - Performs the Lee filter algorithm on an image array.
[, RCONDITION=value] [, RESIDUAL=variable] Result = LEEFILT( A [, N [, Sig]] [, /DOUBLE]
[, STATUS=variable] ) [, /EXACT] )
LA_LINEAR_EQUATION - Uses LU decomposition to solve a sys- LEGENDRE - Returns value of the associated Legendre polynomial.
tem of linear equations. Result = LEGENDRE( X, L [, M] [, /DOUBLE] )
Result = LA_LINEAR_EQUATION( Array, B
LINBCG - Solves a set of sparse linear equations using the iterative
[, BACKWARD_ERROR=variable] [, /DOUBLE] biconjugate gradient method.
[, FORWARD_ERROR=variable] [, STATUS=variable]) Result = LINBCG( A, B, X [, /DOUBLE] [, ITOL={4 | 5 | 6
LA_LUDC - Computes the LU decomposition of an n-column by m- | 7}] [, TOL=value] [, ITER=variable]
row array. [, ITMAX=value] )
LA_LUDC, Array, Index [, /DOUBLE]
LINDGEN - Returns a longword integer array with each element set to
[, STATUS=variable] its subscript.
LA_LUMPROVE - Uses LU decomposition to improve the solution Result = LINDGEN(D1 [, ...,D8] [, Thread pool
to a system of linear equations. keywords] )
Result = LA_LUMPROVE( Array, Aludc, Index, B, X
LINFIT - Fits by minimizing the Chi-square error statistic.
[, BACKWARD_ERROR=variable] [, /DOUBLE]
[, FORWARD_ERROR=variable]) Result = LINFIT( X, Y [, CHISQ=variable]
[, COVAR=variable] [, /DOUBLE]
LA_LUSOL - Used in conjunction with the LA_LUDC procedure to [, MEASURE_ERRORS=vector] [, PROB=variable]
solve a set of n linear equations in n unknowns, AX = B.
[, SIGMA=variable] [, YFIT=variable] )
Result = LA_LUSOL( A, Index, B [, /DOUBLE] )
LINKIMAGE - Merges routines written in other languages with IDL at
LA_SVD - procedure computes the singular value decomposition of an run-time.
n-columns by m-row array.
LINKIMAGE, Name, Image [, Type [, Entry]] [, /DEVICE]
LA_SVD, Array, W, U, V [, /DOUBLE]
[, /FUNCT] [, /KEYWORDS] [, MAX_ARGS=value]
[, /DIVIDE_CONQUER] [, STATUS=variable]
[, MIN_ARGS=value]

IDL Quick Reference


54 Alphabetical List of IDL Routines

LL_ARC_DISTANCE - Returns the longitude and latitude of a point LONG64 - Converts argument to 64-bit integer type.
given arc distance and azimuth. Result = LONG64( Expression [, Offset [, D1 [, ...,D8]]]
Result = LL_ARC_DISTANCE( Lon_lat0, Arc_Dist, Az [, Thread pool keywords] )
[, /DEGREES] )
LSODE - Advances a solution to a system of ordinary differential equa-
LMFIT - Does a non-linear least squares fit. tions one time-step H.
Result = LMFIT( X, Y, A [, ALPHA=variable] Result = LSODE( Y, X, H, Derivs[, Status]
[, CHISQ=variable] [, CONVERGENCE=variable] [, ATOL=value] [, /QUIET] [, RTOL=value] )
[, COVAR=variable] [, /DOUBLE] [, FITA=vector] LU_COMPLEX - Solves complex linear system using LU decomposition.
[, FUNCTION_NAME=string] [, ITER=variable]
Result = LU_COMPLEX( A, B [, /DOUBLE]
[, ITMAX=value] [, ITMIN=value]
[, /INVERSE] [, /SPARSE] )
[, MEASURE_ERRORS=vector] [, SIGMA=variable]
[, TOL=value] ) LUDC - Replaces array with the LU decomposition.
LUDC, A, Index [, /COLUMN] [, /DOUBLE]
LMGR - Determines the type of license used by the current IDL session.
[, INTERCHANGES=variable]
Result = LMGR( [, /DEMO | , /EMBEDDED | ,
/RUNTIME | , /STUDENT | , /TRIAL | , /VM] LUMPROVE - Uses LU decomposition to iteratively improve an
approximate solution.
[, EXPIRE_DATE=variable] [, /FORCE_DEMO]
[, INSTALL_NUM=variable] [, LMHOSTID=variable] Result = LUMPROVE( A, Alud, Index, B, X [, /COLUMN]
[, SITE_NOTICE=variable] ) [, /DOUBLE] )

LNGAMMA - Returns logarithm of the gamma function of Z. LUSOL - Solves a set of linear equations. Use with LUDC.
Result = LNGAMMA(Z [, Thread pool keywords] ) Result = LUSOL(A, Index, B [, /COLUMN] [, /DOUBLE])

LNP_TEST - Computes the Lomb Normalized Periodogram.


Result = LNP_TEST( X, Y [, /DOUBLE]
M
[, HIFAC=scale_factor] [, JMAX=variable]
[, OFAC=value] [, WK1=variable] [, WK2=variable] ) M_CORRELATE - Computes multiple correlation coefficient.
LOADCT - Loads one of the predefined IDL color tables. Result = M_CORRELATE(X, Y [, /DOUBLE])
LOADCT [, Table] [, BOTTOM=value] [, FILE=string] MACHAR - Determines and returns machine-specific parameters
[, GET_NAMES=variable] [, NCOLORS=value] affecting floating-point arithmetic.
[, RGB_TABLE=value] [, /SILENT] Result = MACHAR( [, /DOUBLE] )
LOCALE_GET - Returns the current locale of the operating platform. MAKE_ARRAY - Returns an array of the specified type, dimensions,
and initialization.
Result = LOCALE_GET( )
Result = MAKE_ARRAY ( [D1 [, ...,D8]] [, /BYTE | ,
LOGICAL_AND - Performs a logical AND operation on its argu- /COMPLEX | , /DCOMPLEX | , /DOUBLE | , /FLOAT | ,
ments.
/INT | , /L64 | , /LONG | , /OBJ, | , /PTR | , /STRING | ,
Result = LOGICAL_AND(Arg1, Arg2)
/UINT | , /UL64 | , /ULONG] [, DIMENSION=vector]
LOGICAL_OR - Performs a logical OR operation on its arguments. [, /INDEX] [, /NOZERO] [, SIZE=vector]
Result = LOGICAL_OR(Arg1, Arg2) [, TYPE=type_code] [, VALUE=value] [, Thread pool
keywords] )
LOGICAL_TRUE - Determines whether its arguments are non-zero
(or non-NULL). MAKE_DLL - Builds a shareable library suitable for use with IDL’s
Result = LOGICAL_TRUE(Arg) dynamic linking.
MAKE_DLL, InputFiles [, OutputFile],
LON64ARR - Returns a 64-bit integer vector or array.
ExportedRoutineNames [, CC=string]
Result = LON64ARR( D1 [, ...,D8] [, /NOZERO] )
[, COMPILE_DIRECTORY=path]
LONARR - Returns a longword integer vector or array. [, DLL_PATH=variable] [, EXPORTED_DATA=string]
Result = LONARR( D1 [, ...,D8] [, /NOZERO] ) [, EXTRA_CFLAGS=string]
LONG - Converts argument to longword integer type. [, EXTRA_LFLAGS=string]
Result = LONG( Expression [, Offset [, D1 [, ...,D8]]] [, INPUT_DIRECTORY=path] [, LD=string]
[, Thread pool keywords] ) [, /NOCLEANUP] [, OUTPUT_DIRECTORY=path]
[, /PLATFORM_EXTENSION] [, /REUSE_EXISTING]
[, /SHOW_ALL_OUTPUT] [, /VERBOSE]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 55

MAKE_RT - Creates a stand-alone IDL runtime distribution for one or MAP_PATCH - Returns an image warped to fit the current map pro-
more platforms. jection. (Use when map data is smaller than the display).
MAKE_RT, Appname, Outdir, [, IDLDIR=path] Result = MAP_PATCH( Image_Orig [, Lons, Lats]
[, LOGFILE=path] [, MANIFEST=path] [, LAT0=value] [, LAT1=value] [, LON0=value]
[, /OVERWRITE] [, SAVEFILE=path] [, /VM] [, LON1=value] [, MAX_VALUE=value]
[, /DATAMINER] [, /DICOMEX] [, /HIRES_MAPS] [, MISSING=value] [, /TRIANGULATE]
[, /IDL_ASSISTANT] [, /IDL_HELP] [, /XPRINTER] [, XSIZE=variable] [, XSTART=variable]
[, /LIN32] [, /LIN64] [, /MACOS] [, /SUN32] [, /SUN64] [, YSIZE=variable] [, YSTART=variable] )
[, /SUNX86_64] [, /WIN32] [, /WIN64]
MAP_PROJ_FORWARD - Transforms map coordinates from lon-
MAP_2POINTS - Returns distance, azimuth, and path relating to the gitude/latitude to Cartesian (X, Y) coordinates.
great circle or rhumb line connecting two points on a sphere. Result = MAP_PROJ_FORWARD(Longitude [, Latitude]
Result = MAP_2POINTS( lon0, lat0, lon1, lat1 [, CONNECTIVITY=vector] [, /FILL]
[, DPATH=value | , /METERS | , /MILES | [, MAP_STRUCTURE=value] [, POLYGONS=variable]
, NPATH=integer{2 or greater} | , /PARAMETERS | [, POLYLINES=variable] [, /RADIANS]
, RADIUS=value] [, /RADIANS] [, /RHUMB] ) [, Thread pool keywords])
MAP_CONTINENTS - Draws continental boundaries, filled conti- MAP_PROJ_IMAGE - Warps an image from geographic
nents, political boundaries, coastlines, and/or rivers, over an exist- coordinates to a specified map projection.
ing map projection established by MAP_SET.
Result = MAP_PROJ_IMAGE(Image [, Range]
MAP_CONTINENTS [, /COASTS] [, COLOR=index]
[, /BILINEAR] [, DIMENSIONS=vector]
[, /CONTINENTS] [, /COUNTRIES]
[, IMAGE_STRUCTURE=structure]
[ ,FILL_CONTINENTS={1 | 2}]
[, MAP_STRUCTURE=structure] [, MASK=variable]
[, ORIENTATION=value]] [, /HIRES] [, LIMIT=vector]
[, MAX_VALUE=value] [, MIN_VALUE=value]
[, MAP_STRUCTURE=structure] [, MLINESTYLE={0 |
[, MISSING=value] [, UVRANGE=variable]
1 | 2 | 3 | 4 | 5}] [, MLINETHICK=value] [, /RIVERS]
[, XINDEX=variable] [, YINDEX=variable] )
[, SPACING=centimeters] [, /USA]
Graphics Keywords: [, /T3D][, ZVALUE=value{0 to 1}] MAP_PROJ_INFO - Returns information about current map and/or
the available projections.
MAP_GRID - Draws parallels and meridians over a map projection. MAP_PROJ_INFO [, iproj] [, AZIMUTHAL=variable]
MAP_GRID [, /BOX_AXES | [, CLIP_TEXT=0] [, CIRCLE=variable] [, CYLINDRICAL=variable]
[, LATALIGN=value{0.0 to 1.0}] [, /CURRENT] [, LL_LIMITS=variable]
[, LONALIGN=value{0.0 to 1.0}] [, NAME=variable] [, PROJ_NAMES=variable]
[, LATLAB=longitude] [, LONLAB=latitude] [, UV_LIMITS=variable] [, UV_RANGE=variable]
[, ORIENTATION=clockwise_degrees_from_horiz]]
MAP_PROJ_INIT - Initializes a mapping projection.
[, CHARSIZE=value] [, COLOR=index]
Result = MAP_PROJ_INIT(Projection
[, /FILL_HORIZON] [, GLINESTYLE={0 | 1 | 2 | 3 | 4 |
[, ELLIPSOID=value] [, /GCTP] [, LIMIT=vector]
5}] [, GLINETHICK=value] [, /HORIZON]
[, /RADIANS] [, /RELAXED] )
[, INCREMENT=value]
Keywords—Projection Parameters:
[, LABEL=n{label_every_nth_gridline}]
[, CENTER_AZIMUTH=value]
[, LATDEL=degrees] [, LATNAMES=array,
[, CENTER_LATITUDE=value]
LATS=vector] [, LONDEL=degrees]
[, CENTER_LONGITUDE=value]
[, LONNAMES=array, LONS=vector]
[, FALSE_EASTING=value]
[, MAP_STRUCTURE=structure] [, /NO_GRID]
[, FALSE_NORTHING=value] [, HEIGHT=value]
Graphics Keywords: [, /T3D] [, ZVALUE=value{0 to 1}]
[, HOM_AZIM_LONGITUDE=value]
MAP_IMAGE - Returns an image warped to fit the current map projec- [, HOM_AZIM_ANGLE=value]
tion. (Use when map data is larger than the display).
[, HOM_LATITUDE1=value]
Result = MAP_IMAGE( Image [, Startx, Starty [, Xsize,
[, HOM_LATITUDE2=value]
Ysize]] [, LATMIN=degrees{-90 to 90}]
[, HOM_LONGITUDE1=value]
[, LATMAX=degrees{-90 to 90}]
[, HOM_LONGITUDE2=value] [, IS_ZONES=value]
[, LONMIN=degrees{-180 to 180}]
[, IS_JUSTIFY=value] [, MERCATOR_SCALE=value]
[, LONMAX=degrees{-180 to 180}] [, /BILINEAR]
[, OEA_ANGLE=value] [, OEA_SHAPEM=value]
[, COMPRESS=value] [, SCALE=value]
[, OEA_SHAPEN=value] [, ROTATION=value]
[, MAP_STRUCTURE=structure] [, MASK=variable]
[, SEMIMAJOR_AXIS=value]
[, MAX_VALUE=value] [, MIN_VALUE=value]
[, SEMIMINORAXIS=value]
[, MISSING=value] )
[, SOM_INCLINATION=value]

IDL Quick Reference


56 Alphabetical List of IDL Routines

MAP_PROJ_INIT - continued MATRIX_POWER - Computes the product of a matrix with itself.


[, SOM_LONGITUDE=value] [, SOM_PERIOD=value] Result = MATRIX_POWER(Array, N [, /DOUBLE]
[, SOM_RATIO=value] [, SOM_FLAG=value] [, STATUS=value])
[, SOM_LANDSAT_NUMBER=value]
MAX - Returns the value of the largest element of Array.
[, SOM_LANDSAT_PATH=value]
Result = MAX( Array [, Max_Subscript] [, /ABSOLUTE]
[, SPHERE_RADIUS=value]
[, DIMENSION=value] [, MIN=variable] [, /NAN]
[, STANDARD_PARALLEL=value]
[, SUBSCRIPT_MIN=variable] [, Thread pool
[, STANDARD_PAR1=value]
keywords])
[, STANDARD_PAR2=value] [, SAT_TILT=value]
[, TRUE_SCALE_LATITUDE=value] [, ZONE=value] MD_TEST - Performs the Median Delta test.
Result = MD_TEST( X [, ABOVE=variable]
MAP_PROJ_INVERSE - Transforms map coordinates from Carte-
sian (X, Y) coordinates to longitude/latitude. [, BELOW=variable] [, MDC=variable] )
Result = MAP_PROJ_INVERSE (X [, Y] MEAN - Computes the mean of a numeric vector.
[, MAP_STRUCTURE=value] [, /RADIANS] Result = MEAN( X [, /DOUBLE] [, /NAN] )
[, Thread pool keywords])
MEANABSDEV - Computes the mean absolute deviation of a vector.
MAP_SET - Establishes map projection type and limits. Result = MEANABSDEV( X [, /DOUBLE] [, /MEDIAN]
MAP_SET [, P0lat, P0lon, Rot] [, /NAN] )
Keywords—Projection Types: [ [, /AITOFF | , /ALBERS
| , /AZIMUTHAL | , /CONIC | , /CYLINDRICAL | , MEAN_FILTER - Applies mean filter noise reduction on a one- or
multi-channel image.
/GNOMIC | , /GOODESHOMOLOSINE | , /HAMMER |
Result = MEAN_FILTER( ImageData, Width [, Height]
, /LAMBERT | , /MERCATOR | ,
[, /ARITHMETIC] [, /GEOMETRIC]
/MILLER_CYLINDRICAL | , /MOLLWEIDE | ,
[, INVALID=value] [, MISSING=value] [, /NAN]
/ORTHOGRAPHIC | , /ROBINSON | , /SATELLITE | ,
[, /TRUE={1|2|3}])
/SINUSOIDAL | , /STEREOGRAPHIC | ,
/TRANSVERSE_MERCATOR] | NAME=string] ] MEDIAN - Returns the median value of Array or applies a median filter.
Keywords—Map Characteristics: [, /ADVANCE] Result = MEDIAN( Array [, Width] [, /DOUBLE]
[, CHARSIZE=value] [, /CLIP] [, COLOR=index] [, DIMENSION=value] [, /EVEN] )
[, /CONTINENTS [, CON_COLOR=index] [, /HIRES]] MEMORY - Returns a vector containing information on the amount of
[, E_CONTINENTS=structure] [, E_GRID=structure] dynamic memory currently in use by the IDL session.
[, E_HORIZON=structure] [, GLINESTYLE={0 | 1 | 2 | 3 Result = MEMORY( [ , /CURRENT | , /HIGHWATER |
| 4 | 5}] [, GLINETHICK=value] [, /GRID] , /NUM_ALLOC | , /NUM_FREE |
[, /HORIZON] [, LABEL=n{label every nth gridline}] , /STRUCTURE ] [ /L64 ] )
[, LATALIGN=value{0.0 to 1.0}] [, LATDEL=degrees]
MESH_CLIP - Clips a polygonal mesh to an arbitrary plane in space
[, LATLAB=longitude] [, LONALIGN=value{0.0 to and returns a polygonal mesh of the remaining portion.
1.0}] [, LONDEL=degrees] [, LONLAB=latitude] Result = MESH_CLIP (Plane, Vertsin, Connin, Vertsout,
[, MLINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] Connout [, AUXDATA_IN=array,
[, MLINETHICK=value] [, /NOBORDER] AUXDATA_OUT=variable][, CUT_VERTS=variable] )
[, /NOERASE] [, REVERSE={0 | 1 | 2 | 3}]
[, TITLE=string] [, /USA] [, XMARGIN=value] MESH_DECIMATE - Reduces the density of geometry while pre-
serving as much of the original data as possible.
[, YMARGIN=value]
Result = MESH_DECIMATE (Verts, Conn, Connout
Keywords—Projection Parameters:
[, VERTICES=variable]
[, CENTRAL_AZIMUTH=degrees_east_of_north]
[, PERCENT_VERTICES=percent |
[, ELLIPSOID=array] [, /ISOTROPIC] [, LIMIT=vector]
, PERCENT_POLYGONS=percent]
[, SAT_P=vector] [, SCALE=value]
[, PROGRESS_CALLBACK=string]
[, STANDARD_PARALLELS=array]
[, PROGESS_METHOD=string]
Graphics Keywords: [, POSITION=[X0, Y0, X1, Y1]]
[, PROGRESS_OBJECT=objref]
[, /T3D] [, ZVALUE=value{0 to 1}]
[, PROGRESS_PERCENT=percent{0 to 100}]
MATRIX_MULTIPLY - Calculates the IDL matrix-multiply operator [, PROGRESS_USERDATA=value])
(#) of two (possibly transposed) arrays.
Result = MATRIX_MULTIPLY( A, B [, /ATRANSPOSE] MESH_ISSOLID - Computes various mesh properties and enables
IDL to determine if a mesh encloses space (is a solid).
[, /BTRANSPOSE] [, Thread pool keywords] )
Result = MESH_ISSOLID (Conn)

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 57

MESH_MERGE - Merges two polygonal meshes. MODIFYCT - Saves modified color tables in the IDL color table file.
Result = MESH_MERGE (Verts, Conn, Verts1, Conn1 MODIFYCT, Itab, Name, R, G, B [, FILE=filename]
[, /COMBINE_VERTICES] [, TOLERANCE=value] )
MOMENT - Computes mean, variance, skewness, and kurtosis.
MESH_NUMTRIANGLES - Computes the number of triangles in a Result = MOMENT( X [, /DOUBLE]
polygonal mesh.
[, MAXMOMENT={1|2|3|4}] [, MDEV=variable]
Result = MESH_NUMTRIANGLES (Conn) [, /NAN] [, SDEV=variable] )
MESH_OBJ - Generates a polygon mesh for various simple objects. MORPH_CLOSE - Applies closing operator to binary or grayscale
MESH_OBJ, Type, Vertex_List, Polygon_List, Array1 image.
[, Array2] [, /CLOSED] [, /DEGREES] [, P1=value] Result = MORPH_CLOSE (Image, Structure [, /GRAY]
[, P2=value] [, P3=value] [, P4=value] [, P5=value] [, PRESERVE_TYPE=bytearray | /UINT | /ULONG]
MESH_SMOOTH - Performs spatial smoothing on a polygon mesh. [, VALUES=array] )
Result = MESH_SMOOTH ( Verts, Conn MORPH_DISTANCE - Estimates N-dimensional distance maps,
[, ITERATIONS=value] [, FIXED_VERTICES=array] which contain for each foreground pixel the distance to the nearest
background pixel, using a given norm.
[, /FIXED_EDGE_VERTICES] [, LAMBDA=value] )
Result = MORPH_DISTANCE (Data
MESH_SURFACEAREA - Computes various mesh properties to [, /BACKGROUND] [, NEIGHBOR_SAMPLING={1 | 2
determine the mesh surface area, including integration of other | 3 }] [, /NO_COPY] )
properties interpolated on the surface of the mesh.
Result = MESH_SURFACEAREA ( Verts, Conn MORPH_GRADIENT - Applies the morphological gradient operator
[, AUXDATA=array] [, MOMENT=variable] ) to a grayscale image.
Result = MORPH_GRADIENT (Image, Structure
MESH_VALIDATE - Checks for NaN values in vertices, removes [, PRESERVE_TYPE=bytearray | /UINT | /ULONG]
unused vertices, and combines close vertices.
[, VALUES=array] )
Result = MESH_VALIDATE ( Verts, Conn
[, /REMOVE_NAN] [, /PACK_VERTICES] MORPH_HITORMISS - Applies the hit-or-miss operator to a binary
[, /COMBINE_VERTICES] [, TOLERANCE=value] ) image.
Result = MORPH_HITORMISS (Image, HitStructure,
MESH_VOLUME - Computes the volume that the mesh encloses. MissStructure)
Result = MESH_VOLUME ( Verts, Conn [, /SIGNED] )
MORPH_OPEN - Applies the opening operator to a binary or gray-
MESSAGE - Issues error and informational messages. scale image.
MESSAGE, [[Text] | [Arg1, ... ArgN] | Result = MORPH_OPEN (Image, Structure [, /GRAY]
[, /REISSUE_LAST]] [, BLOCK=BlockName] [, PRESERVE_TYPE=bytearray | /UINT | /ULONG]
[, /CONTINUE] [, /INFORMATIONAL] [, /IOERROR] [, VALUES=array] )
[, LEVEL=CallLevel] [, NAME=ErrorName]
MORPH_THIN - Performs a thinning operation on binary images.
[, /NONAME] [, /NOPREFIX] [, /NOPRINT] [, /RESET]
Result = MORPH_THIN ( Image, HitStructure,
MIN - Returns the value of the smallest element of an array. MissStructure )
Result = MIN( Array [, Min_Subscript] [, /ABSOLUTE]
MORPH_TOPHAT - Applies top-hat operator to a grayscale image.
[, DIMENSION=value] [, MAX=variable] [, /NAN]
Result = MORPH_TOPHAT ( Image, Structure
[, SUBSCRIPT_MAX] [, Thread pool keywords])
[, PRESERVE_TYPE=bytearray | /UINT | /ULONG]
MIN_CURVE_SURF - Interpolates over either a plane or a sphere [, VALUES=array] )
with a minimum curvature surface or a thin-plate-spline surface.
Result = MIN_CURVE_SURF(Z [, X, Y] [, /DOUBLE] MPEG_CLOSE - Closes an MPEG sequence.
[, /TPS] [, /REGULAR] [, /SPHERE [, /CONST]] MPEG_CLOSE, mpegID
[, XGRID=[xstart, xspacing] | , XVALUES=array] MPEG_OPEN - Opens an MPEG sequence.
[, YGRID=[ystart, yspacing] | , YVALUES=array] mpegID = MPEG_OPEN( Dimensions[, BITRATE=value]
[, GS=[xspace,yspace]] [, BOUNDS=[xmin, ymin, xmax, [, FILENAME=string] [, IFRAME_GAP=integer value]
ymax]] [, NX=value] [, NY=value] [, XOUT=vector] [, MOTION_VEC_LENGTH={1 | 2 | 3}]
[, YOUT=vector] [, XPOUT=array, YPOUT=array]) [ QUALITY=value{0 to 100}] )
MK_HTML_HELP - Converts text documentation headers to HTML MPEG_PUT - Inserts an image array into an MPEG sequence
files.
MPEG_PUT, mpegID [, /COLOR]
MK_HTML_HELP, Sources, Filename [, /STRICT]
[, FRAME=frame_number] [, IMAGE=array | ,
[, TITLE=string] [, /VERBOSE]
WINDOW=index] [, /ORDER]

IDL Quick Reference


58 Alphabetical List of IDL Routines

MPEG_SAVE - Encodes and saves an open MPEG sequence.


MPEG_SAVE, mpegID [, FILENAME=string]
O
MULTI - Replicates current color table to enhance contrast.
OBJ_CLASS - Determines the class name of an object.
MULTI, N
Result = OBJ_CLASS( [Arg] [, COUNT=variable]
[, /SUPERCLASS{must specify Arg}] )
N OBJ_DESTROY - Destroys an object reference.
OBJ_DESTROY, ObjRef [, Arg1, …, Argn]
N_ELEMENTS - Returns the number of elements contained in an
expression or variable. OBJ_HASMETHOD - Determines whether an object class imple-
ments a specified method or methods.
Result = N_ELEMENTS(Expression)
Result = OBJ_HASMETHOD(Objref, Method)
N_PARAMS - Returns the number of non-keyword parameters used in
calling an IDL procedure or function. OBJ_ISA - Determines inheritance relationship of an object.
Result = N_PARAMS( ) Result = OBJ_ISA(Arg, ClassName)

N_TAGS - Returns the number of tags in a structure. OBJ_NEW - Creates an object reference.
Result = N_TAGS( Expression [, /LENGTH] ) Result = OBJ_NEW([ObjectClassName [, Arg1…...Argn]])

NCDF_* Routines - See “NetCDF Routines” on page 153 OBJ_VALID - Verifies validity of object references.
Result = OBJ_VALID( [Arg] [, /CAST]
NEWTON - Solves nonlinear equations using Newton’s method.
[, COUNT=variable] )
Result = NEWTON( X, Vecfunc [, CHECK=variable]
[, /DOUBLE] [, ITMAX=value] [, STEPMAX=value] OBJARR - Creates an array of object references.
[, TOLF=value] [, TOLMIN=value] [, TOLX=value] ) Result = OBJARR(D1 [, ...,D8] [, /NOZERO] )
NOISE_HURL - Introduces noise into an image by changing ran- ON_ERROR - Designates the error recovery method.
domly selected pixels to random colors. ON_ERROR, N
Result = NOISE_HURL (Image [, Randomization]
[, ITERATIONS=value] [, REPLACE_MAX=value] ON_IOERROR - Declares I/O error exception handler.
[, REPLACE_MIN=value] [, SEED=value]) ON_IOERROR, Label
⋅ ⋅ ⋅ Label: Statement to perform upon I/O error
NOISE_PICK - Introduces noise into an image by picking randomly
selected pixels to be replaced by a neighboring pixel from a random ONLINE_HELP - Invokes online help viewer from programs.
direction. ONLINE_HELP [, Value] [, BOOK=‘filename’]
Result = NOISE_PICK (Image [, /FULL_PATH] [, /QUIT]
[, Randomization][, ITERATIONS=value] Windows-Only Keywords: [, /CONTEXT]
[, SEED=value])
OPEN - Opens files for reading, updating, or writing.
NOISE_SCATTER - Introduces noise into an image by apply nor- OPENR, Unit, File
mally distributed noise to the entire image.
OPENW, Unit, File
Result = NOISE_SCATTER(Image
OPENU, Unit, File
[, /CORRELATED_NOISE] [, LEVELS=value]
Keywords (all platforms): [, /APPEND | , /COMPRESS]
[, NOISE_FACTOR=value] [, SEED=value])
[, BUFSIZE={0 | 1 | value>512}] [, /DELETE]
NOISE_SLUR - Introduces noise into an image by selecting random [, ERROR=variable] [, /F77_UNFORMATTED]
pixels to be replaced by a neighboring pixel from a random location
in the row above. [, /GET_LUN] [, /MORE] [, /NOEXPAND_PATH]
Result = NOISE_SLUR(Image [, Randomization] [, /STDIO] [, /SWAP_ENDIAN]
[, ITERATIONS=value] [, SEED=value]) [, SWAP_IF_BIG_ENDIAN]
[, /SWAP_IF_LITTLE_ENDIAN] [, /VAX_FLOAT]
NORM - Computes Euclidean norm of vector or Infinity norm of array. [, WIDTH=value] [, /XDR]
Result = NORM( A [, /DOUBLE] UNIX-Only Keywords: [, /RAWIO]
[, LNORM={0 | 1 | 2 | n})

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 59

OPLOT - Plots vector data over a previously-drawn plot. PLOT - continued


OPLOT, [X,] Y [, MAX_VALUE=value] [, {X | Y | Z}RANGE=[min, max]]
[, MIN_VALUE=value] [, NSUM=value] [, /POLAR] [, {X | Y | Z}STYLE=value] [, {X | Y | Z}THICK=value]
[, THICK=value] [, {X | Y | Z}TICK_GET=variable]
Graphics Keywords: [, CLIP=[X0, Y0, X1, Y1]] [, {X | Y | Z}TICKFORMAT=string]
[, COLOR=value] [, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, {X | Y | Z}TICKINTERVAL=value]
[, /NOCLIP] [, PSYM=integer{0 to 10}] [, {X | Y | Z}TICKLAYOUT=scalar]
[, SYMSIZE=value] [, /T3D] [, ZVALUE=value{0 to 1}] [, {X | Y | Z}TICKLEN=value]
[, {X | Y | Z}TICKNAME=string_array]
OPLOTERR - Draws error bars over a previously drawn plot.
[, {X | Y | Z}TICKS=integer]
OPLOTERR, [ X ,] Y , Err [, Psym ]
[, {X | Y | Z}TICKUNITS=string]
[, {X | Y | Z}TICKV=array] [, {X | Y | Z}TITLE=string]
P [, ZVALUE=value{0 to 1}]
PLOT_3DBOX - Plots function of two variables inside 3D box.
P_CORRELATE - Computes partial correlation coefficient. PLOT_3DBOX, X, Y, Z [, AX=degrees] [, AZ=degrees]
Result = P_CORRELATE(X, Y, C [, /DOUBLE]) [, GRIDSTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, PSYM=integer{1
to 10}] [, /SOLID_WALLS] [, /XY_PLANE]
PARTICLE_TRACE - Traces the path of a massless particle through
a vector field. [, XYSTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /XZ_PLANE]
PARTICLE_TRACE, Data, Seeds, Verts, Conn [, Normals] [, XZSTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /YZ_PLANE]
[, MAX_ITERATIONS=value] [, ANISOTROPY=array] [, YZSTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, ZAXIS={1 | 2 | 3 |
[, INTEGRATION={0 | 1}] [, SEED_NORMAL=vector] 4}]
[, TOLERANCE=value] [, MAX_STEPSIZE=value] Graphics Keywords: Accepts all graphics keywords
[, /UNIFORM] accepted by PLOT except for: FONT, PSYM, SYMSIZE,
{XYZ}TICK_GET, and ZVALUE.
PATH_CACHE - Used to control IDL’s path cache mechanism.
PATH_CACHE [, /CLEAR] [, /ENABLE] [, /REBUILD] PLOT_FIELD - Plots a 2D field using arrows.
PLOT_FIELD, U, V [, ASPECT=ratio]
PATH_SEP - Returns the proper file path segment separator character [, LENGTH=value] [, N=num_arrows] [, TITLE=string]
for the current operating system.
Result = PATH_SEP( [ /PARENT_DIRECTORY ] PLOTERR - Plots individual data points with error bars.
[, /SEARCH_PATH ] ) PLOTERR, [ X ,] Y , Err [, TYPE={1 | 2 | 3 | 4}]
PCOMP - Computes principal components/derived variables. [, PSYM=integer{1 to 10}]
Result = PCOMP( A [, COEFFICIENTS=variable] PLOTS - Plots vectors and points.
[, /COVARIANCE] [, /DOUBLE] PLOTS, X [, Y [, Z]] [, /CONTINUE]
[, EIGENVALUES=variable] [, NVARIABLES=value] Graphics Keywords: [, CLIP=[X0, Y0, X1, Y1]]
[, /STANDARDIZE] [, VARIANCES=variable] ) [, COLOR=value] [, /DATA | , /DEVICE | , /NORMAL]
PLOT - Plots vector arguments as X versus Y graphs. [, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /NOCLIP]
[, PSYM=integer{0 to 10}] [, SYMSIZE=value] [, /T3D]
PLOT, [X,] Y [, /ISOTROPIC] [, MAX_VALUE=value]
[, THICK=value] [, Z=value]
[, MIN_VALUE=value] [, NSUM=value] [, /POLAR]
[, THICK=value] [, /XLOG] [, /YLOG] [, /YNOZERO] PNT_LINE - Returns the perpendicular distance between a point and a
Graphics Keywords: [, BACKGROUND=color_index] line.
[, CHARSIZE=value] [, CHARTHICK=integer] Result = PNT_LINE( P0, L0, L1 [, Pl] [, /INTERVAL] )
[, CLIP=[X0, Y0, X1, Y1]] [, COLOR=value] [, /DATA | , POINT_LUN - Sets or gets current position of the file pointer.
/DEVICE | , /NORMAL] [, FONT=integer] POINT_LUN, Unit, Position
[, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /NOCLIP]
[, /NODATA] [, /NOERASE] [, POSITION=[X0, Y0, X1, POLAR_CONTOUR - Draws a contour plot from data in polar coor-
dinates.
Y1]] [, PSYM=integer{0 to 10}] [, SUBTITLE=string]
POLAR_CONTOUR, Z, Theta, R
[, SYMSIZE=value] [, /T3D] [, THICK=value]
[, C_ANNOTATION=vector_of_strings]
[, TICKLEN=value] [, TITLE=string]
[, C_CHARSIZE=value] [, C_CHARTHICK=integer]
[, {X | Y | Z}CHARSIZE=value]
[, C_COLORS=vector] [, C_LINESTYLE=vector]
[, {X | Y | Z}GRIDSTYLE=integer{0 to 5}]
[, /FILL | , CELL_FILL [, C_ORIENTATION=degrees]
[, {X | Y | Z}MARGIN=[left, right]]
[, C_SPACING=value]] [, C_THICK=vector]
[, {X | Y | Z}MINOR=integer]
[, /CLOSED] [, /IRREGULAR]

IDL Quick Reference


60 Alphabetical List of IDL Routines

POLAR_CONTOUR - continued POPD - Removes the top directory on the working directory stack
[, LEVELS=vector | NLEVELS=integer{1 to 29}] maintained by PUSHD/POPD.
[, MAX_VALUE=value] [, MIN_VALUE=value] POPD
[, /OVERPLOT] [, /PATH_DATA_COORDS | POWELL - Minimizes a function using the Powell method.
,TRIANGULATION=variable] [, /XLOG] [, /YLOG] POWELL, P, Xi, Ftol, Fmin, Func [, /DOUBLE]
[, /ZAXIS] [, SHOW_TRIANGULATION=color_index] [, ITER=variable] [, ITMAX=value]
POLAR_SURFACE - Interpolates a surface from polar PREF_COMMIT - Commits IDL preferences already in the pending
coordinates to rectangular coordinates. state.
Result = POLAR_SURFACE( Z, R, Theta [, /GRID] PREF_COMMIT [, PreferenceName] [, /RESET]
[, SPACING=[xspacing, yspacing]] [, /RESIGNAL]
[, BOUNDS=[x0, y0, x1, y1]] [, /QUINTIC]
PREF_GET - Returns information about IDL preferences.
[, MISSING=value] )
Result = PREF_GET([PrefName] [, /NAMES_ALL |
POLY - Evaluates polynomial function of a variable. /NUM_PENDING | /STRUCTURE])
Result = POLY(X, C)
PREF_MIGRATE - Imports IDL user preferences from other versions
POLY_2D - Performs polynomial warping of images. of IDL for use by the currently running version.
Result = POLY_2D( Array, P, Q [, Interp [, Dimx, Dimy]] PREF_MIGRATE [, /PREFERENCE]
[, CUBIC={-1 to 0}] [, MISSING=value] [, Thread pool PREF_SET - Sets new values for IDL preferences.
keywords] ) PREF_SET, PrefName1, Value1 [, ... PrefNamen, Valuen]
POLY_AREA - Returns the area of a polygon given the coordinates of [, /COMMIT]
its vertices. or
Result = POLY_AREA( X, Y [, /DOUBLE] [, /SIGNED] ) PREF_SET, PrefName1 [, ... PrefNamen] /DEFAULT
POLY_FIT - Performs a least-square polynomial fit. [, /COMMIT]
or
Result = POLY_FIT( X, Y, Degree [, CHISQ=variable]
PREF_SET, FILENAME=file [, /COMMIT]
[, COVAR=variable] [, /DOUBLE]
[, MEASURE_ERRORS=vector] [, SIGMA=variable] PREWITT - Returns an approximation to the Prewitt edge enhance-
[, STATUS=variable] [, YBAND=variable] ment operator for images.
[, YERROR=variable] [, YFIT=variable] ) Result = PREWITT(Image)

POLYFILL - Fills the interior of a polygon. PRIMES - Computes the first K prime numbers.
POLYFILL, X [, Y [, Z]] [, IMAGE_COORD=array] Result = PRIMES(K)
[, /IMAGE_INTERP] [, /LINE_FILL] PRINT/PRINTF - Writes formatted output to screen or file.
[, PATTERN=array] [, SPACING=centimeters] PRINT [, Expr1, ..., Exprn]
[, TRANSPARENT=value] PRINTF [, Unit, Expr1, ..., Exprn]
Graphics Keywords: [, CLIP=[X0, Y0, X1, Y1]] Keywords: [, AM_PM=[string, string]]
[, COLOR=value] [, /DATA | , /DEVICE | , /NORMAL] [, DAYS_OF_WEEK=string_array{7 names}]
[, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5}] [, /NOCLIP] [, FORMAT=value]
[, ORIENTATION=ccw_degrees_from_horiz] [, /T3D] [, MONTHS=string_array{12 names}]
[, THICK=value] [, Z=value] [, /STDIO_NON_FINITE]
POLYFILLV - Returns subscripts of pixels inside a polygon. PRINTD - Prints contents of the directory stack maintained by
Result = POLYFILLV( X, Y, Sx, Sy [, Run_Length] ) PUSHD/POPD.

POLYSHADE - Creates a shaded surface representation from a set of PRINTD


polygons. PRO - Defines a procedure.
Result = POLYSHADE( Vertices, Polygons) PRO Procedure_Name, argument1, ..., argumentn
or ⋅⋅⋅
Result = POLYSHADE(X, Y, Z, Polygons) END
Keywords: [, /DATA | , /NORMAL]
[, POLY_SHADES=array] [, SHADES=array] [, /T3D] PRODUCT - Returns the product of elements within an array.
[, TOP=value] [, XSIZE=columns] [, YSIZE=rows] Result = PRODUCT(Array [, Dimension]
[, /CUMULATIVE] [, /INTEGER] [, /NAN]
POLYWARP - Performs polynomial spatial warping. [, /PRESERVE_TYPE] )
POLYWARP, Xi, Yi, Xo, Yo, Degree, Kx, Ky [, /DOUBLE]
[, STATUS=variable]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 61

PROFILE - Extracts a profile from an image. QHULL - Constructs convex hulls, Delaunay triangulations, and
Result = PROFILE( Image [, XX, YY] [, /NOMARK] Voronoi diagrams.
[, XSTART=value] [, YSTART=value] ) QHULL, V, Tr or QHULL, V0 , V1, [, V2 ... [, V6] ] , Tr
[, BOUNDS=variable ] [, CONNECTIVITY=variable ]
PROFILER - Accesses the IDL Code Profiler used to analyze perfor- [, /DELAUNAY ] [, SPHERE=variable ]
mance of applications.
[, VDIAGRAM=array ] [, VNORMALS=array ]
PROFILER [, Module] [, /CLEAR] [, DATA=variable]
[, VVERTICES=array ]
[, OUTPUT=variable] [, /REPORT] [, /RESET]
[, /SYSTEM] QROMB - Evaluates integral over a closed interval.
Result = QROMB( Func, A, B [, /DOUBLE] [, EPS=value]
PROFILES - Interactively examines image profiles.
[, JMAX=value] [, K=value] )
PROFILES, Image [, /ORDER] [, SX=value] [, SY=value]
[, WSIZE=value] QROMO - Evaluates integral over an open interval.
Result = QROMO(Func, A [, B] [, /DOUBLE]
PROJECT_VOL - Returns a translucent rendering of a volume pro-
jected onto a plane. [, EPS=value] [, JMAX=value] [, K=value] [, /MIDEXP |
Return = PROJECT_VOL( Vol, X_Sample, Y_Sample, , /MIDINF | , /MIDPNT | , /MIDSQL | , /MIDSQU] )
Z_Sample [, /AVG_INTENSITY] [, /CUBIC] QSIMP - Evaluates integral using Simpson’s rule.
[, DEPTH_Q=value] [, OPAQUE=3D_array] Result = QSIMP( Func, A, B [, /DOUBLE] [, EPS=value]
[, TRANS=array] [, XSIZE=longword integer] [, JMAX=value] )
[, YSIZE=longword integer] [, /Z_BUFFER] )
QUERY_ASCII - Tests a file for compatibility with READ_ASCII.
PS_SHOW_FONTS - Displays all the PostScript fonts that IDL Result = QUERY_ASCII( Filename [, Info] )
knows about.
PS_SHOW_FONTS [, /NOLATIN] QUERY_BMP - Obtains information about a BMP image file.
Result = QUERY_BMP( Filename [, Info] )
PSAFM - Converts Adobe Font Metrics file to IDL format.
PSAFM, Input_Filename, Output_Filename QUERY_CSV - Obtains information about a comma-separated-values
(CSV) file.
PSEUDO - Creates pseudo-color table based on Lightness, Hue, and Result = QUERY_CSV( Filename [, Info] )
Brightness system.
PSEUDO, Litlo, Lithi, Satlo, Sathi, Hue, Loops [, Colr] QUERY_DICOM - Obtains information about a DICOM archive file.
Result = QUERY_DICOM( Filename[, Info]
PTR_FREE - Destroys a pointer.
[, IMAGE_INDEX=index] [, /DICOMEX])
PTR_FREE, P1, ... …, Pn
QUERY_GIF - Obtains information about a GIF image file.
PTR_NEW - Creates a pointer.
Result = QUERY_GIF ( Filename [, Info] )
Result = PTR_NEW( [InitExpr] [, /ALLOCATE_HEAP]
[, /NO_COPY] ) QUERY_IMAGE - Determines if a file is recognized as an image file.
Result = QUERY_IMAGE ( Filename[, Info]
PTR_VALID - Verifies the validity of pointers.
[, CHANNELS=variable] [, DIMENSIONS=variable]
Result = PTR_VALID( [Arg] [, /CAST]
[, HAS_PALETTE=variable] [, IMAGE_INDEX=index]
[, COUNT=variable] )
[, NUM_IMAGES=variable] [, PIXEL_TYPE=variable]
PTRARR - Creates an array of pointers. [, SUPPORTED_READ=variable]
Result = PTRARR( D1 [, ...,D8] [, /ALLOCATE_HEAP | , [, SUPPORTED_WRITE=variable] [, TYPE=variable] )
/NOZERO] )
QUERY_JPEG - Obtains information about a JPEG image file.
PUSHD - Pushes a directory to top of directory stack maintained by Result = QUERY_JPEG ( Filename [, Info] )
PUSHD/POPD.
PUSHD, Dir QUERY_JPEG2000 - Obtains information about a JPEG2000 image
file.
Result = QUERY_JPEG2000(Filename [, Info] )
Q
QUERY_MRSID - Obtains information about a MrSID image file.
Result = QUERY_MRSID( Filename [, Info]
QGRID3 - Interpolates the dependent variable values to points in a reg-
ularly sampled volume. [, LEVEL=lvl] )
Result = QGRID3( XYZ, F, Tetrahedra ) QUERY_PICT - Obtains information about a PICT image file.
or Result = QUERY_PICT ( Filename, Info)
Result = QGRID3( X, Y, Z, F, Tetrahedra )
Keywords: [, DELTA=array ] [, DIMENSION=array ] QUERY_PNG - Obtains information about a PNG image file.
[, MISSING=value ] [, START=array ] Result = QUERY_PNG ( Filename [, Info] )

IDL Quick Reference


62 Alphabetical List of IDL Routines

QUERY_PPM - Obtains information about a PPM image file. RDPIX - Interactively displays image pixel values.
Result = QUERY_PPM ( Filename [, Info] RDPIX, Image [, X0, Y0]
[, MAXVAL=variable] )
READ/READF - Reads formatted input from keyboard or file.
QUERY_SRF - Obtains information about an SRF image file. READ, [Prompt,] Var1, ..., Varn
Result = QUERY_SRF ( Filename [, Info] ) READF, [Prompt,] Unit, Var1, ..., Varn
Keywords: [, AM_PM=[string, string]]
QUERY_TIFF - Obtains information about a TIFF image file.
[, DAYS_OF_WEEK=string_array{7 names}]
Result = QUERY_TIFF ( Filename [, Info]
[, FORMAT=value] [, MONTHS=string_array{12
[, GEOTIFF=variable] [, IMAGE_INDEX=index] )
names}] [, PROMPT=string]
QUERY_WAV - Obtains information about a WAV sound file.
READ_ASCII - Reads data from an ASCII file.
Result = QUERY_WAV ( Filename[, Info] )
Result = READ_ASCII([Filename]
[, COMMENT_SYMBOL=string] [, COUNT=variable]
R [, DATA_START=lines_to_skip] [, DELIMITER=string]
[, HEADER=variable] [, MISSING_VALUE=value]
[, NUM_RECORDS=value] [, RECORD_START=index]
R_CORRELATE - Computes rank correlation.
[, TEMPLATE=value] [, /VERBOSE] )
Result = R_CORRELATE( X, Y [, D=variable]
[, /KENDALL] [, PROBD=variable] [, ZD=variable] ) READ_BINARY - Reads the contents of a binary file using a passed
template or basic command line keywords.
R_TEST - Runs test for randomness. Result = READ_BINARY ([Filename | FileUnit]
Result = R_TEST( X [, N0=variable] [, N1=variable] [, TEMPLATE=template] | [[, DATA_START=value]
[, R=variable] ) [, DATA_TYPE=typecodes] [, DATA_DIMS=array]
RADON - Returns the Radon transform of a two-dimensional image. [, ENDIAN=string]] )
Radon Transform: Result = RADON( Array READ_BMP - Reads Microsoft Windows bitmap file (.BMP).
[, /DOUBLE] [, DRHO=scalar] [, DX=scalar] Result = READ_BMP( Filename, [, R, G, B] [, Ihdr]
[, DY=scalar] [, /GRAY] [, /LINEAR] [, NRHO=scalar] [, /RGB] )
[, NTHETA=scalar] [, RHO=variable] [, RMIN=scalar]
[, THETA=variable] [, XMIN=scalar] [, YMIN=scalar] ) READ_CSV - Reads data from a “comma-separated value” (comma-
delimited) text file (.CSV).
Radon Backprojection: Result = RADON( Array,
Result = READ_CSV( Filename [, COUNT=variable]
/BACKPROJECT, RHO=variable, THETA=variable
[, HEADER=variable] [, MISSING_VALUE=value]
[, /DOUBLE] [, DX=scalar] [, DY=scalar] [, /LINEAR]
[, NUM_RECORDS=value]
[, NX=scalar] [, NY=scalar] [, XMIN=scalar]
[, RECORD_START=value] )
[, YMIN=scalar] )
READ_DICOM - Reads an image from a DICOM file.
RANDOMN - Returns normally-distributed pseudo-random numbers.
Result = READ_DICOM ( Filename [, Red, Green, Blue]
Result = RANDOMN( Seed [, D1 [, ...,D8]]
[, IMAGE_INDEX=index] [, /DICOMEX])
[ [, BINOMIAL=[trials, probability]] [, /DOUBLE]
[, GAMMA=integer{>0}] [, /NORMAL] READ_GIF - Reads a GIF image.
[, POISSON=value] [, /UNIFORM] | [, /LONG] ] ) READ_GIF, Filename, Image [, R, G, B] [,
BACKGROUND_COLOR=variable] [, /CLOSE]
RANDOMU - Returns uniformly-distributed pseudo-random numbers.
[, DELAY_TIME=variable]
Result = RANDOMU( Seed [, D1 [, ...,D8]] [, DISPOSAL_METHOD=variable] [, /MULTIPLE]
[ [, BINOMIAL=[trials, probability]] [, /DOUBLE] [, REPEAT_COUNT=variable]
[, GAMMA=integer{>0}] [, /NORMAL] [, TRANSPARENT=value] [, USER_INPUT=variable]
[, POISSON=value] [, /UNIFORM] | [, /LONG] ] )
READ_IMAGE - Reads the image contents of a file and returns the
RANKS - Computes magnitude-based ranks. image in an IDL variable.
Result = RANKS(X) Result = READ_IMAGE (Filename [, Red, Green, Blue]
[, IMAGE_INDEX=index] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 63

READ_JPEG - Reads JPEG file. READ_X11_BITMAP - Reads X11 bitmap file.


READ_JPEG [, Filename | , UNIT=lun] , Image READ_X11_BITMAP, File, Bitmap [, X, Y]
[, Colortable] [, BUFFER=variable] [, /EXPAND_TO_BYTES]
[, COLORS=value{8 to 256}] [, DITHER={0 | 1 | 2}] READ_XWD - Reads X Windows Dump file.
[, /GRAYSCALE] [, /ORDER] [, TRUE={1 | 2 | 3}]
Result = READ_XWD( Filename[, R, G, B] )
[, /TWO_PASS_QUANTIZE]
READS - Reads formatted input from a string variable.
READ_JPEG2000 - Reads a JPEG2000 file.
READS, Input, Var1, ..., Varn [, AM_PM=[string, string]]
Result = READ_JPEG2000(Filename [, Red, Green, Blue]
[, DAYS_OF_WEEK=string_array{7 names}]
[, DISCARD_LEVELS=value] [,
[, FORMAT=value] [, MONTHS=string_array{12
MAX_LAYERS=value] [, /ORDER]
names}]
[, REGION=[StartX, StartY, Width, Height] ] )
READU - Reads unformatted binary data from a file.
READ_MRSID - Reads MrSID file.
READU, Unit, Var1, ..., Varn
Result = READ_MRSID ( Filename [, LEVEL=lvl]
[, TRANSFER_COUNT=variable]
[, SUB_RECT=rect] )
REAL_PART - Returns the real part of a complex-valued argument.
READ_PICT - Reads Macintosh PICT (version 2) bitmap file.
Result = REAL_PART(Z)
READ_PICT, Filename, Image [, R, G, B]
REBIN - Resizes a vector or array by integer multiples.
READ_PNG - Reads Portable Network Graphics (PNG) file.
Result = REBIN( Array, D1 [, ...,D8] [, /SAMPLE] )
Result = READ_PNG ( Filename [, R, G, B] [,/ORDER]
[, /VERBOSE] [, TRANSPARENT=variable] ) RECALL_COMMANDS - Returns entries in IDL’s command recall
buffer.
or
READ_PNG, Filename, Image [, R, G, B] [,/ORDER] Result = RECALL_COMMANDS( )
[, /VERBOSE] [, TRANSPARENT=variable] RECON3 - Reconstructs a 3D representation of an object from 2D
images.
READ_PPM - Reads PGM (gray scale) or PPM (portable pixmap for
color) file. Result = RECON3( Images, Obj_Rot, Obj_Pos, Focal,
READ_PPM, Filename, Image [, MAXVAL=variable] Dist,Vol_Pos, Img_Ref, Img_Mag, Vol_Size [, /CUBIC]
[, MISSING=value] [, MODE=value] [, /QUIET] )
READ_SPR - Reads a row-indexed sparse matrix from a file.
REDUCE_COLORS - Reduces the number of colors used in an
Result = READ_SPR(Filename) image by eliminating unused pixel values.
READ_SRF - Reads Sun Raster Format file. REDUCE_COLORS, Image, Values
READ_SRF, Filename, Image [, R, G, B] REFORM - Changes array dimensions without changing the total num-
READ_SYLK - Reads Symbolic Link format spreadsheet file. ber of elements.

Result = READ_SYLK( File [, /ARRAY] [, /COLMAJOR] Result = REFORM( Array, D1 [, ...,D8]


[, NCOLS=columns] [, NROWS=rows] [, /OVERWRITE] )
[, STARTCOL=column] [, STARTROW=row] REGION_GROW - Perform region growing.
[, /USEDOUBLES] [, /USELONGS] ) Result = REGION_GROW(Array, ROIPixels
READ_TIFF - Reads TIFF format file. [, /ALL_NEIGHBORS] [, /NAN]
Result = READ_TIFF( Filename [, R, G, B] [, STDDEV_MULTIPLIER=value |
[, CHANNELS=scalar or vector] THRESHOLD=[min,max]] )
[, DOT_RANGE=variable] [, GEOTIFF=variable] REGISTER_CURSOR - Associates the given name with the given
[, IMAGE_INDEX=value] [, ICC_PROFILE=variable] cursor information.
[, INTERLEAVE={0 | 1 |2}] REGISTER_CURSOR, Name, Image[, MASK=value]
[, ORIENTATION=variable] [, PHOTOSHOP=variable] [, HOTSPOT=value] [, /OVERWRITE]
[, PLANARCONFIG=variable] [, SUB_RECT=[x, y, REGRESS - Computes fit using multiple linear regression.
width, height]] [, /UNSIGNED] [, /VERBOSE] ) Result = REGRESS( X, Y, [, CHISQ=variable]
READ_WAV - Reads the audio stream from the named .WAV file. [, CONST=variable] [, CORRELATION=variable]
Result = READ_WAV ( Filename [, Rate] ) [, /DOUBLE] [, FTEST=variable]
[, MCORRELATION=variable]
READ_WAVE - Reads Wavefront Advanced Visualizer file.
[, MEASURE_ERRORS=vector] [, SIGMA=variable]
READ_WAVE, File, Variables, Names, Dimensions
[, STATUS=variable] [, YFIT=variable] )
[, MESHNAMES=variable]

IDL Quick Reference


64 Alphabetical List of IDL Routines

REPEAT...UNTIL - Repeats statement(s) until expression evaluates to ROUTINE_FILEPATH - Returns the full path to a currently-com-
true. Subject is always executed at least once. piled procedure or function (or a list of procedures and functions).
REPEAT statement UNTIL expression Result = ROUTINE_FILEPATH( Routine [, /EITHER]
or [, /IS_FUNCTION] )
REPEAT BEGIN ROUTINE_INFO - Provides information about compiled procedures
statements and functions.
ENDREP UNTIL expression Result = ROUTINE_INFO( [Routine
REPLICATE - Creates an array of given dimensions, filled with speci- [[, /PARAMETERS{must specify Routine}] [, /SOURCE
fied value. ] [, /UNRESOLVED] [, /VARIABLES] | , /SYSTEM]]
Result = REPLICATE( Value, D1 [, ...,D8] [, Thread pool [, /DISABLED] [, /ENABLED] [, /FUNCTIONS] )
keywords] )
RS_TEST - Performs the Wilcoxon Rank-Sum test.
REPLICATE_INPLACE - Updates an array by replacing all or Result = RS_TEST(X, Y [, UX=variable] [, UY=variable])
selected parts of it with a specified value.
REPLICATE_INPLACE, X, Value [, D1, Loc1 [, D2,
Range]] [, Thread pool keywords] S
RESOLVE_ALL - Compiles any uncompiled routines.
RESOLVE_ALL [, CLASS=string] S_TEST - Performs the Sign test.
[, /CONTINUE_ON_ERROR] [, /QUIET] Result = S_TEST( X, Y [, ZDIFF=variable] )
RESOLVE_ROUTINE - Compiles a routine. SAVGOL - Returns coefficients of Savitzky-Golay smoothing filter.
RESOLVE_ROUTINE, Name Result = SAVGOL( Nleft, Nright, Order, Degree
[, /COMPILE_FULL_FILE ] [, /DOUBLE] )
[, /EITHER | , /IS_FUNCTION] [, /NO_RECOMPLIE] SAVE - Saves variables, system variables, and IDL routines in a file for
later use.
RESTORE - Restores IDL variables and routines saved in an IDL
SAVE file. SAVE [, Var1, ..., Varn] [, /ALL] [, /COMM,
RESTORE [, Filename] [, DESCRIPTION=variable] /VARIABLES] [, /COMPRESS]
[, FILENAME=name] [, DESCRIPTION=string] [, /EMBEDDED]
[, /RELAXED_STRUCTURE_ASSIGNMENT] [, FILENAME=string] [, /ROUTINES]
[, RESTORED_OBJECTS=variable] [, /VERBOSE] [, /SYSTEM_VARIABLES] [, /VERBOSE]

RETALL - Returns control to the main program level. SCALE3 - Sets up axis ranges and viewing angles for 3D plots.
RETALL SCALE3 [, XRANGE=vector] [, YRANGE=vector]
[, ZRANGE=vector] [, AX=degrees] [, AZ=degrees]
RETURN - Returns control to the next-higher program level.
RETURN [, Return_value] SCALE3D - Scales 3D unit cube into the viewing area.
SCALE3D
REVERSE - Reverses the order of one dimension of an array.
Result = REVERSE( Array [, Subscript_Index] SCOPE_LEVEL - Returns the scope level of the currently running
procedure or function.
[, /OVERWRITE] )
Result = SCOPE_LEVEL()
RK4 - Solves differential equations using fourth-order Runge-Kutta
method. SCOPE_TRACEBACK - Returns the current interpreter call stack
(the sequence of routine calls to the present point).
Result = RK4( Y, Dydx, X, H, Derivs [, /DOUBLE] )
Result = SCOPE_TRACEBACK( [ /STRUCTURE]
ROBERTS - Returns an approximation of Roberts edge enhancement. [, /SYSTEM] )
Result = ROBERTS(Image)
SCOPE_VARFETCH - Returns variables outside the local scope of
ROT - Rotates an image by any amount. the currently running procedure or function.
Result = ROT(A, Angle, [Mag, X0, Y0] [, /INTERP] Variable = SCOPE_VARFETCH(VarName
[, CUBIC=value{-1 to 0}] [, MISSING=value] [, COMMON=string] [, /ENTER] [, LEVEL=value]
[, /PIVOT]) [, /REF_EXTRA] )
ROTATE - Rotates/transposes an array in multiples of 90 degrees. SCOPE_VARNAME - Returns the names of variables outside the
local scope of the currently running procedure or function.
Result = ROTATE(Array, Direction)
Result = SCOPE_VARNAME([Var1, ..., Varn] [, COM-
ROUND - Rounds the argument to its closest integer. MON=string] [, COUNT=variable] [, LEVEL=value] )
Result = ROUND( X [, /L64 ] [, Thread pool keywords] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 65

SEARCH2D - Finds “objects” or regions of similar data within a 2D SHADE_SURF - continued


array. [, {X | Y | Z}RANGE=[min, max]]
Result = SEARCH2D( Array, Xpos, Ypos, Min_Val, [, {X | Y | Z}STYLE=value] [, {X | Y | Z}THICK=value]
Max_Val [, /DECREASE, /INCREASE [, {X | Y | Z}TICKFORMAT=string]
[, LPF_BAND=integer{≥3}]] [, /DIAGONAL] ) [, {X | Y | Z}TICKINTERVAL=value]
SEARCH3D - Finds “objects” or regions of similar data values within [, {X | Y | Z}TICKLAYOUT=scalar]
a volume. [, {X | Y | Z}TICKLEN=value]
Result = SEARCH3D( Array, Xpos, Ypos, Zpos, Min_Val, [, {X | Y | Z}TICKNAME=string_array]
Max_Val [, /DECREASE, /INCREASE [, {X | Y | Z}TICKS=integer]
[, LPF_BAND=integer{≥3}]] [, /DIAGONAL] ) [, {X | Y | Z}TICKUNITS=string]
SEM_CREATE - Creates a reference to a semaphore in the current [, {X | Y | Z}TICKV=array]
IDL process. Creates the semaphore itself if necessary. [, {X | Y | Z}TICK_GET=variable]
Result = SEM_CREATE(strName [, {X | Y | Z}TITLE=string]
[, /DESTROY_SEMAPHORE] ) [, ZVALUE=value{0 to 1}]

SEM_DELETE - Destroys a reference to the specified semaphore in SHADE_SURF_IRR - Creates a shaded-surface representation of an
the current IDL process. Optionally destroys the semaphore itself. irregularly gridded dataset.
SEM_DELETE, strName SHADE_SURF_IRR, Z, X, Y [, AX=degrees]
[, AZ=degrees] [, IMAGE=variable] [, PLIST=variable]
SEM_LOCK - Attempts to gain the lock on an existing semaphore
(created by a call to the SEM_CREATE function) for the current [, /T3D]
IDL process.
SHADE_VOLUME - Contours a volume to create a list of vertices
Result = SEM_LOCK(strName) and polygons that can be displayed using POLYSHADE.
SEM_RELEASE - Releases the lock on the specified semaphore held SHADE_VOLUME, Volume, Value, Vertex, Poly [, /LOW]
by the current IDL process. [, SHADES=array] [, /VERBOSE] [, XRANGE=vector]
SEM_RELEASE, strName [, YRANGE=vector] [, ZRANGE=vector]
SET_PLOT - Sets the output device used by the IDL direct graphics SHIFT - Shifts elements of vectors or arrays by a specified number of
procedures. elements.
SET_PLOT, Device [, /COPY] [, /INTERPOLATE] Result = SHIFT(Array, S1 [, ..., Sn] )
SET_SHADING - Sets the light source shading parameters. SHIFT_DIFF - The SHIFT_DIFF function applies a shift-difference
filter to an image array.
SET_SHADING [, /GOURAUD] [, LIGHT=[x, y, z]]
[, /REJECT] [, VALUES=[darkest, brightest]] Result = SHIFT_DIFF (Array [, BIAS=value]
[, /CENTER] [, DIRECTION={0 | 1 | 2 | 3 | 4 | 5 | 6 | 7}]
SETENV - Adds or changes an environment variable. [, /EDGE_TRUNCATE] [, /EDGE_WRAP]
SETENV, Environment_Expression [, /EDGE_ZERO] [, INVALID=value]
SFIT - Performs polynomial fit to a surface. [, MISSING=value] [, /NAN] [, /NORMALIZE] )
Result = SFIT( Data, Degree SHMDEBUG - Print debugging information when a variable loses ref-
[, /IRREGULAR, KX=variable, /MAX_DEGREE] ) erence to an underlying shared memory segment.
Result = SHMDEBUG(Enable)
SHADE_SURF - Creates a shaded-surface representation of gridded
data. SHMMAP - Maps anonymous shared memory, or local disk files, into
SHADE_SURF, Z [, X, Y] [, AX=degrees] [, AZ=degrees] the memory address space of the currently executing IDL process.
[, IMAGE=variable] [, MAX_VALUE=value] SHMMAP [, SegmentName] [, D1, ..., D8] [, /BYTE]
[, MIN_VALUE=value] [, PIXELS=pixels] [, /SAVE] [, /COMPLEX] [, /DCOMPLEX]
[, SHADES=array] [, /XLOG] [, /YLOG] [, /DESTROY_SEGMENT] [, DIMENSION=value]
Graphics Keywords: [, CHARSIZE=value] [, /DOUBLE] [, FILENAME=value] [, /FLOAT]
[, CHARTHICK=integer] [, COLOR=value] [, /DATA | , [, GET_NAME=value] [, GET_OS_HANDLE=value]
/DEVICE | , /NORMAL] [, FONT=integer] [, /NODATA] [, /INTEGER] [, /L64] [, /LONG] [, OFFSET=value]
[, POSITION=[X0, Y0, X1, Y1]] [, SUBTITLE=string] [, OS_HANDLE=value] [, /PRIVATE] [, SIZE=value]
[, /T3D] [, THICK=value] [, TICKLEN=value] [, /SYSV] [, TEMPLATE=value] [, TYPE=value]
[, TITLE=string] [, /UINT] [, /UL64] [, /ULONG]
[, {X | Y | Z}CHARSIZE=value] SHMUNMAP - Removes a memory segment previously created by
[, {X | Y | Z}GRIDSTYLE=integer{0 to 5}] SHMMAP from the system.
[, {X | Y | Z}MARGIN=[left, right]] SHMUNMAP, SegmentName
[, {X | Y | Z}MINOR=integer]

IDL Quick Reference


66 Alphabetical List of IDL Routines

SHMVAR - Creates an IDL array variable that uses the memory from a SMOOTH - Smooths with a boxcar average.
current mapped memory segment created by the SHMMAP proce- Result = SMOOTH( Array, Width [, /EDGE_TRUNCATE]
dure.
[, MISSING=value] [, /NAN] )
Result = SHMVAR(SegmentName [, D1, ..., D8] [, /BYTE]
[, /COMPLEX] [, /DCOMPLEX] [, DIMENSION=value] SOBEL - Returns an approximation of Sobel edge enhancement.
[, /DOUBLE] [, /FLOAT] [, /INTEGER] [, /L64] Result = SOBEL(Image)
[, /LONG] [, SIZE=value] [, TEMPLATE=value]
SOCKET - Opens client-side TCP/IP Internet socket as IDL file unit.
[, TYPE=value] [, /UINT] [, /UL64] [, /ULONG] )
SOCKET, Unit, Host, Port
SHOW3 - Displays array as image, surface plot, and contour plot [, CONNECT_TIMEOUT=value] [, ERROR=variable]
simultaneously.
[, /GET_LUN] [, /RAWIO] [, READ_TIMEOUT=value]
SHOW3, Image [, X, Y] [, /INTERP] [, /SWAP_ENDIAN] [, /SWAP_IF_BIG_ENDIAN]
[, E_CONTOUR=structure] [, E_SURFACE=structure] [, /SWAP_IF_LITTLE_ENDIAN] [, WIDTH=value]
[, SSCALE=scale] [, WRITE_TIMEOUT=value]
SHOWFONT - Displays a TrueType or vector font UNIX-Only Keywords: [, /STDIO]
SHOWFONT, Font, Name [, /ENCAPSULATED] SORT - Returns indices of an array sorted in ascending order.
[, /TT_FONT] Result = SORT(Array [, /L64] )
SIMPLEX - Use the simplex method to solve linear programming prob- SPAWN - Spawns child process for access to operating system.
lems.
SPAWN [, Command [, Result] [, ErrResult ] ]
Result = SIMPLEX( Zequation, Constraints, M1, M2, M3
Keywords (all platforms): [, COUNT=variable]
[, Tableau [, Izrov [, Iposv] ] ] [, /DOUBLE]
[, EXIT_STATUS=variable] [, PID=variable]
[, EPS = value] [, STATUS = variable] )
UNIX-Only Keywords: [, /NOSHELL]
SIN - Returns the trigonometric sine of X. [, /NOTTYRESET] [, /NULL_STDIN] [, /SH]
Result = SIN(X [, Thread pool keywords] ) [, /STDERR] [, UNIT=variable {Command required,
SINDGEN - Returns a string array with each element set to its sub- Result not allowed}]
script. Windows-Only Keywords: [, /HIDE] [, /LOG_OUTPUT]
Result = SINDGEN(D1 [, ...,D8]) [, /NOSHELL] [, /NOWAIT] [, /NULL_STDIN]
[, /STDERR]
SINH - Returns the hyperbolic sine of X.
Result = SINH(X [, Thread pool keywords] ) SPH_4PNT - Returns center and radius of a sphere given 4 points.
SPH_4PNT, X, Y, Z, Xc, Yc, Zc, R [, /DOUBLE]
SIZE - Returns array size and type information.
Result = SIZE( Expression [, /L64] [, /DIMENSIONS | SPH_SCAT - Performs spherical gridding.
, /FILE_LUN | , /FILE_OFFSET| , /N_DIMENSIONS | Result = SPH_SCAT( Lon, Lat, F [, BOUNDS=[lonmin,
, /N_ELEMENTS | , /SNAME | , /STRUCTURE | latmin, lonmax, latmax]] [, BOUT=variable]
, /TNAME | , /TYPE] ) [, GOUT=variable] [, GS=[lonspacing, latspacing]]
[, NLON=value] [, NLAT=value] )
SKEWNESS - Computes statistical skewness of an n-element vector.
Result = SKEWNESS( X [, /DOUBLE] [, /NAN] ) SPHER_HARM - Returns value of the spherical harmonic function.
Result=SPHER_HARM( Theta, Phi, L, M, [, /DOUBLE] )
SKIP_LUN - Reads data in an open file and moves the file pointer.
SKIP_LUN, FromUnit, [, Num] [, /EOF] [, /LINES] SPL_INIT - Establishes the type of interpolating spline.
[, /TRANSFER_COUNT=variable] Result = SPL_INIT( X, Y [, /DOUBLE] [, YP0=value]
[, YPN_1=value] )
SLICER3 - Interactive volume visualization tool.
SLICER3 [, hData3D] SPL_INTERP - Performs cubic spline interpolation.
[, DATA_NAMES=string/string_array] [, /DETACH] Result = SPL_INTERP( X, Y, Y2, X2 [, /DOUBLE] )
[, GROUP=widget_id] [, /MODAL] SPLINE - Performs cubic spline interpolation.
SLIDE_IMAGE - Creates a scrolling graphics window for examining Result = SPLINE( X, Y, T [, Sigma] [, /DOUBLE] )
large images.
SPLINE_P - Performs parametric cubic spline interpolation.
SLIDE_IMAGE [, Image] [, /BLOCK] [, CONGRID=0]
[, FULL_WINDOW=variable] [, GROUP=widget_id] SPLINE_P, X, Y, Xr, Yr [, /DOUBLE]
[, /ORDER] [, /REGISTER] [, RETAIN={0 | 1 | 2}] [, INTERVAL=value] [, TAN0=[X0, Y0]] [, TAN1=[Xn-1,
[, SLIDE_WINDOW=variable] [, SHOW_FULL=0] Yn-1]]
[, TITLE=string] [, TOP_ID=variable] [, XSIZE=width] SPRSAB - Performs matrix multiplication on sparse matrices.
[, XVISIBLE=width] [, YSIZE=height] Result = SPRSAB(A, B [, /DOUBLE]
[, YVISIBLE=height] [, THRESHOLD=value])

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 67

SPRSAX - Multiplies sparse matrix by a vector. STRLOWCASE - Converts a string to lower case.
Result = SPRSAX( A, X [, /DOUBLE] ) Result = STRLOWCASE(String)
SPRSIN - Converts matrix to row-index sparse matrix. STRMATCH - Compares search string against input string expression.
Result = SPRSIN( A [, /COLUMN] [, /DOUBLE] Result = STRMATCH( String, SearchString
[, THRESHOLD=value] ) or [, /FOLD_CASE] )
Result = SPRSIN( Columns, Rows, Values, N [, /DOUBLE]
STRMESSAGE - Returns the text of an error number.
[, THRESHOLD=value] )
Result = STRMESSAGE( Err [, /BLOCK | , /CODE | ,
SPRSTP - Constructs the transpose of a sparse matrix. /NAME] )
Result = SPRSTP(A)
STRMID - Extracts a substring from a string.
SQRT - Returns the square root of X. Result = STRMID(Expression, First_Character [, Length]
Result = SQRT(X [, Thread pool keywords] ) [, /REVERSE_OFFSET])
STANDARDIZE - Computes standardized variables. STRPOS - Finds first occurrence of a substring within a string.
Result = STANDARDIZE( A [, /DOUBLE] ) Result = STRPOS( Expression, Search String [, Pos]
STDDEV - Computes the standard deviation of an n-element vector. [, /REVERSE_OFFSET] [, /REVERSE_SEARCH] )
Result = STDDEV( X [, /DOUBLE] [, /NAN] ) STRPUT - Inserts the contents of one string into another.
STRPUT, Destination, Source [, Position]
STOP - Stops the execution of a running program or batch file.
STOP [, Expr1, ..., Exprn] STRSPLIT - Splits its input string argument into separate substrings,
according to the specified pattern.
STRARR - Returns string array containing zero-length strings. Result = STRSPLIT( String [, Pattern]
Result = STRARR(D1 [, ...,D8]) [, COUNT=variable] [, ESCAPE=string | , /REGEX
STRCMP - Compares two strings. [, /FOLD_CASE]] [, /EXTRACT | , LENGTH=variable]
Result = STRCMP( String1, String2 [, N] [, /PRESERVE_NULL] )
[, /FOLD_CASE] ) STRTRIM - Removes leading and/or trailing blanks from string.
STRCOMPRESS - Removes whitespace from a string. Result = STRTRIM( String [, Flag] )
Result = STRCOMPRESS( String [, /REMOVE_ALL] ) STRUCT_ASSIGN - Performs “relaxed structure assignment” to
copy a structure.
STREAMLINE - Generates the visualization graphics from a path.
STRUCT_ASSIGN, Source, Destination [, /NOZERO]
STREAMLINE, Verts, Conn, Normals, Outverts, Outconn
[, /VERBOSE]
[, ANISOTROPY=array] [, SIZE=vector]
[, PROFILE=array] STRUCT_HIDE - Prevents the IDL HELP procedure from displaying
information about structures or objects.
STREGEX - Performs regular expression matching. STRUCT_HIDE, Arg1 [, Arg2, ..., Argn]
Result = STREGEX( StringExpression, RegularExpression
[, /BOOLEAN | , /EXTRACT | , LENGTH=variable STRUPCASE - Converts a string to upper case.
[, /SUBEXPR]] [, /FOLD_CASE] ) Result = STRUPCASE(String)

STRETCH - Stretches color table for contrast enhancement. SURFACE - Plots an array as a wireframe mesh surface.
STRETCH [, Low, High [, Gamma]] [, /CHOP] SURFACE, Z [, X, Y] [, AX=degrees] [, AZ=degrees]
[, BOTTOM=index] [, /HORIZONTAL] [, /LEGO]
STRING - Converts its arguments to string type. [, /LOWER_ONLY | , /UPPER_ONLY]
Result = STRING( Expression1, ..., Expressionn [, MAX_VALUE=value] [, MIN_VALUE=value]
[, AM_PM=[string, string]] [, /SAVE] [, SHADES=array] [, SKIRT=value]
[, DAYS_OF_WEEK=string_array{7 names}] [, /XLOG] [, /YLOG] [, ZAXIS={1 | 2 | 3 | 4}] [, /ZLOG]
[, FORMAT=value] [, MONTHS=string_array{12 Graphics Keywords: Accepts all graphics keywords
names}] [, /PRINT] ) accepted by PLOT except for: PSYM, SYMSIZE.
STRJOIN - Collapses a string scalar or array into merged strings. SURFR - Sets up 3D transformations by duplicating rotation, transla-
Result = STRJOIN( String [, Delimiter] [, /SINGLE] ) tion, and scaling of SURFACE.

STRLEN - Returns the length of a string. SURFR [, AX=degrees] [, AZ=degrees]


Result = STRLEN(Expression) SVDC - Computes Singular Value Decomposition of an array.
SVDC, A, W, U, V [, /COLUMN] [, /DOUBLE]
[, ITMAX=value]

IDL Quick Reference


68 Alphabetical List of IDL Routines

SVDFIT - Multivariate least squares fit using SVD method. TAN - Returns the tangent of X.
Result = SVDFIT( X, Y [, M] [, A=vector] Result = TAN(X [, Thread pool keywords] )
[, CHISQ=variable] [, COVAR=variable] [, /DOUBLE]
TANH - Returns the hyperbolic tangent of X.
[, FUNCTION_NAME=string] [, /LEGENDRE]
Result = TANH(X [, Thread pool keywords] )
[, MEASURE_ERRORS=vector] [, SIGMA=variable]
[, SING_VALUES=variable] [, SINGULAR=variable] TEK_COLOR - Loads color table based on Tektronix printer.
[, STATUS=variable] [, TOL=value] TEK_COLOR [, Start_Index, Colors]
[, VARIANCE=variable] [, YFIT=variable] ) TEMPORARY - Returns a temporary copy of a variable, and sets the
SVSOL - Solves set of linear equations using back-substitution. original variable to “undefined”.

Result = SVSOL(U, W, V, B [, /COLUMN] [, /DOUBLE] ) Result = TEMPORARY(Variable)

SWAP_ENDIAN - Reverses the byte ordering of scalars, arrays or TETRA_CLIP - Clips a tetrahedral mesh to an arbitrary plane in space
structures. and returns a tetrahedral mesh of the remaining portion.

Result = SWAP_ENDIAN(Variable Result = TETRA_CLIP ( Plane, Vertsin, Connin, Vertsout,


[, /SWAP_IF_BIG_ENDIAN] Connout [, AUXDATA_IN=array,
[, /SWAP_IF_LITTLE_ENDIAN] ) AUXDATA_OUT=variable] [, CUT_VERTS=variable] )

SWAP_ENDIAN_INPLACE - Reverses the byte ordering of sca- TETRA_SURFACE - Extracts a polygonal mesh as the exterior sur-
lars, arrays or structures. face of a tetrahedral mesh.

SWAP_ENDIAN_INPLACE, Variable Result = TETRA_SURFACE (Verts, Connin)


[, /SWAP_IF_BIG_ENDIAN] TETRA_VOLUME - Computes properties of tetrahedral mesh array.
[, /SWAP_IF_LITTLE_ENDIAN] Result = TETRA_VOLUME ( Verts, Conn
SWITCH - Selects one statement for execution from multiple choices, [, AUXDATA=array] [, MOMENT=variable] )
depending upon the value of an expression.
THIN - Returns the “skeleton” of a bi-level image.
SWITCH expression OF
Result = THIN( Image[, /NEIGHBOR_COUNT]
expression: statement
[, /PRUNE])
expression: statement
ELSE: statement THREED - Plots a 2D array as a pseudo 3D plot.
ENDSWITCH THREED, A [, Sp] [, TITLE=string] [, XTITLE=string]
[, YTITLE=string]
SYSTIME - Returns the current time as either a string, as the number of
seconds elapsed since 1 January 1970, or as a Julian d value. TIME_TEST2 - Performs speed benchmarks for IDL.
String = SYSTIME( [0 [, ElaspedSeconds]] [, /UTC] ) TIME_TEST2 [, Filename]
or
TIMEGEN - Returns an array of double-precision floating-point values
Seconds = SYSTIME( 1 | /SECONDS ) that represent times in Julian values.
or Result = TIMEGEN( [D1,...,D8 | , FINAL=value]
Julian = SYSTIME( /JULIAN [, /UTC] ) [, DAYS=vector] [, HOURS=vector]
[, MINUTES=vector] [, MONTHS=vector]
T [, SECONDS=vector] [, START=value]
[, STEP_SIZE=value] [, UNITS=string]
[, YEAR=value] )
T_CVF - Computes the cutoff value in a Student’s t distribution.
Result = T_CVF(P, Df) TM_TEST - Performs t-means test.
Result = TM_TEST( X, Y [, /PAIRED] [, /UNEQUAL] )
T_PDF - Computes Student’s t distribution.
Result = T_PDF(V, Df) TOTAL - Sums of the elements of an array.
Result = TOTAL( Array [, Dimension] [, /CUMULATIVE]
T3D - Performs various 3D transformations. [, /DOUBLE] [, /INTEGER] [, /NAN]
T3D [, Array | , /RESET] [, MATRIX=variable] [, /PRESERVE_TYPE] [, Thread pool keywords] )
[, OBLIQUE=vector] [, PERSPECTIVE=p{eye at
(0,0,p)}] [, ROTATE=[x, y, z]] [, SCALE=[x, y, z]] TRACE - Computes the trace of an array.
[, TRANSLATE=[x, y, z]] [, /XYEXCH | , /XZEXCH | , Result = TRACE( A [, /DOUBLE] )
/YZEXCH] TrackBall Object - See “TrackBall” on page 124
TAG_NAMES - Returns the names of tags in a structure. TRANSPOSE - Transposes an array.
Result = TAG_NAMES( Expression Result = TRANSPOSE( Array [, P] )
[, /STRUCTURE_NAME] )

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 69

TRI_SURF - Interpolates gridded set of points with a smooth quintic TV - continued


surface. Keywords: [, /CENTIMETERS | , /INCHES]
Result = TRI_SURF( Z [, X, Y] [, /EXTRAPOLATE] [, /ORDER] [, TRUE={1 | 2 | 3}] [, /WORDS]
[, MISSING=value] [, /REGULAR] [, XGRID=[xstart, [, XSIZE=value] [, YSIZE=value]
xspacing] | [, XVALUES=array]] [, YGRID=[yxstart, Graphics Keywords: [, CHANNEL=value] [, /DATA | ,
yspacing] | [, YVALUES=array]] [, GS=[xspacing, /DEVICE | , /NORMAL] [, /T3D | Z=value]
yspacing]] [, BOUNDS=[xmin, ymin, xmax, ymax]]
TVCRS - Manipulates the image display cursor.
[, NX=value] [, NY=value] )
TVCRS [, ON_OFF]
TRIANGULATE - Constructs Delaunay triangulation of a planar set or
of points.
TVCRS [, X, Y]
TRIANGULATE, X, Y, Triangles [, B]
Keywords: [, /CENTIMETERS | , /INCHES]
[, CONNECTIVITY=variable]
[, /HIDE_CURSOR]
[, SPHERE=variable [, /DEGREES]]
Graphics Keywords: [, /DATA | , /DEVICE | ,
[, FVALUE=variable] [, REPEATS=variable]
/NORMAL] [, /T3D | Z=value]
[, TOLERANCE=value]
TVLCT - Loads display color tables.
TRIGRID - Interpolates irregularly-gridded data to a regular grid.
TVLCT, V1, V2, V3 [, Start] [, /GET] [, /HLS | , /HSV]
Result = TRIGRID(X, Y, Z, Triangles [, GS, Limits])
or
For spherical gridding:
TVLCT, V [, Start] [, /GET] [, /HLS | , /HSV]
Result = TRIGRID(F , GS, Limits, SPHERE=S)
Keywords: [, /DEGREES] [, EXTRAPOLATE=array | , TVRD - Reads an image from a window into a variable.
/QUINTIC] [, INPUT=variable] [, MAX_VALUE=value] Result = TVRD( [X0 [, Y0 [, Nx [, Ny [, Channel]]]]]
[, MIN_VALUE=value] [, MISSING=value] [, CHANNEL=value] [, /ORDER] [, TRUE={1 | 2 | 3}]
[, NX=value] [, NY=value] [, SPHERE=variable] [, /WORDS] )
[, XGRID=variable] [, YGRID=variable] TVSCL - Scales and displays an image.
[, XOUT=vector, YOUT=vector]
TVSCL, Image [, Position]
TRIQL - Determines eigenvalues and eigenvectors of tridiagonal array. or
TRIQL, D, E, A [, /DOUBLE] TVSCL, Image [, X, Y [, Channel]]
Keywords: [, /CENTIMETERS | , /INCHES] [, /NAN]
TRIRED - Reduces a real, symmetric array to tridiagonal form.
[, /ORDER] [, TOP=value] [, TRUE={1 | 2 | 3}]
TRIRED, A, D, E [, /DOUBLE]
[, /WORDS] [, XSIZE=value] [, YSIZE=value]
TRISOL - Solves tridiagonal systems of linear equations. Graphics Keywords: [, CHANNEL=value] [, /DATA | ,
Result = TRISOL( A, B, C, R [, /DOUBLE] ) /DEVICE | , /NORMAL] [, /T3D | Z=value] [, Thread
pool keywords]
TRUNCATE_LUN - Truncates an open file at the location of the cur-
rent file pointer.
TRUNCATE_LUN, Unit1, ..., Unitn U
TS_COEF - Computes the coefficients for autoregressive time-series.
Result = TS_COEF( X, P [, /DOUBLE] [, MSE=variable] ) UINDGEN - Returns unsigned integer array with each element set to its
subscript.
TS_DIFF - Computes the forward differences of a time-series.
Result = UINDGEN(D1 [, ...,D8] [, Thread pool
Result = TS_DIFF( X, K [, /DOUBLE] )
keywords] )
TS_FCAST - Computes future or past values of a stationary time-
series. UINT - Converts argument to unsigned integer type.
Result = TS_FCAST( X, P, Nvalues [, /BACKCAST] Result = UINT( Expression [, Offset [, D1 [, ...,D8]]]
[, /DOUBLE] ) [, Thread pool keywords] )
TS_SMOOTH - Computes moving averages of a time-series. UINTARR - Returns an unsigned integer vector or array.
Result = TS_SMOOTH( X, Nvalues [, /BACKWARD] Result = UINTARR( D1 [, ...,D8] [, /NOZERO] )
[, /DOUBLE] [, /FORWARD] [, ORDER=value] ) UL64INDGEN - Returns an unsigned 64-bit integer array with each
element set to its subscript.
TV - Displays an image.
Result = UL64INDGEN(D1 [, ...,D8] [, Thread pool
TV, Image [, Position]
keywords] )
or
TV, Image [, X, Y [, Channel]]

IDL Quick Reference


70 Alphabetical List of IDL Routines

ULINDGEN - Returns an unsigned longword array with each element VERT_T3D - Transforms a 3D array by a 4x4 transformation matrix.
set to its subscript. Result = VERT_T3D( Vertex_List [, DOUBLE=value]
Result = ULINDGEN(D1 [, ...,D8] [, Thread pool [, MATRIX=4x4_array] [, /NO_COPY] [, /NO_DIVIDE
keywords] ) [, SAVE_DIVIDE=variable]] )
ULON64ARR - Returns an unsigned 64-bit integer vector or array. VOIGT - Calculates intensity of atomic absorption line (Voight) profile.
Result = ULON64ARR( D1 [, ...,D8] [, /NOZERO] ) Result = VOIGT(A, U [, Thread pool keywords] )
ULONARR - Returns an unsigned longword integer vector or array. VORONOI - Computes Voronoi polygon given Delaunay triangulation.
Result = ULONARR( D1 [, ...,D8] [, /NOZERO] ) VORONOI, X, Y, I0, C, Xp, Yp, Rect
ULONG - Converts argument to unsigned longword integer type. VOXEL_PROJ - Creates volume visualizations using voxel technique.
Result = ULONG( Expression [, Offset [, D1 [, ...,D8]]] Result = VOXEL_PROJ( V [, RGBO]
[, Thread pool keywords] ) [, BACKGROUND=array] [, CUTTING_PLANE=array]
ULONG64 - Converts argument to unsigned 64-bit integer type. [, /INTERPOLATE] [, /MAXIMUM_INTENSITY]
Result = ULONG64( Expression [, Offset [, D1 [, ...,D8]]] [, STEP=[Sx, Sy, Sz]] [, XSIZE=pixels] [, YSIZE=pixels]
[, Thread pool keywords] ) [, ZBUFFER=int_array] [, ZPIXELS=byte_array] )

UNIQ - Returns subscripts of the unique elements in an array.


Result = UNIQ( Array [, Index] ) W
UNSHARP_MASK - Performs an unsharp-mask sharpening filter on
a two-dimensional array or a TrueColor image. WAIT - Suspends execution of an IDL program for a specified period.
Result = UNSHARP_MASK(Image [, AMOUNT=value] WAIT, Seconds
[, RADIUS=value] [, THRESHOLD=value] [, TRUE={1
WARP_TRI - Warps an image using control points.
| 2 | 3}] )
Result = WARP_TRI( Xo, Yo, Xi, Yi, Image
USERSYM - Defines a new plotting symbol. [, /EXTRAPOLATE] [, OUTPUT_SIZE=vector]
USERSYM, X [, Y] [, COLOR=value] [, /FILL] [, /QUINTIC] [, /TPS] )
[, THICK=value]
WATERSHED - Applies the morphological watershed operator to a
grayscale image.
V Result = WATERSHED ( Image
[, CONNECTIVITY={4 | 8} ] [, /LONG]
[, NREGIONS=variable])
VALUE_LOCATE - Finds the intervals within a given monotonic
vector that brackets a given set of one or more search values. WDELETE - Deletes IDL graphics windows.
Result = VALUE_LOCATE ( Vector, Value [, /L64] ) WDELETE [, Window_Index [, ...]]
VARIANCE - Computes the statistical variance of an n-element vector. WF_DRAW - Draws weather fronts with smoothing.
Result = VARIANCE( X [, /DOUBLE] [, /NAN] ) WF_DRAW, X, Y [[, /COLD | , FRONT_TYPE=1] |
VECTOR_FIELD - Places colored, oriented vectors of specified [, /WARM | , FRONT_TYPE=2] | [, /OCCLUDED | ,
length at each vertex in an input vertex array. FRONT_TYPE=3] | [, /STATIONARY | ,
VECTOR_FIELD, Field, Outverts, Outconn FRONT_TYPE=4] | [, /CONVERGENCE |
[, ANISOTROPY=array] [, SCALE=value] FRONT_TYPE=5]] [, COLOR=value] [, /DATA | ,
[, VERTICES=array] /DEVICE | , /NORMAL] [, INTERVAL=value]
[, PSYM=value] [, SYM_HT=value]
VEL - Draws a velocity (flow) field with streamlines.
[, SYM_LEN=value] [, THICK=value]
VEL, U, V [, NVECS=value] [, XMAX=
value{xsize/ysize}] [, LENGTH=value{longest/steps}] WHERE - Returns subscripts of nonzero array elements.
[, NSTEPS=value] [, TITLE=string] Result = WHERE( Array_Expression [, Count]
[, COMPLEMENT=variable] [, /L64]
VELOVECT - Draws a 2D velocity field plot.
[, NCOMPLEMENT=variable] [, Thread pool
VELOVECT, U, V [, X, Y] [, COLOR=index]
keywords] )
[, MISSING=value [, /DOTS]] [, LENGTH=value]
[, /OVERPLOT] [Also accepts all PLOT keywords]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 71

WHILE...DO - Performs statement(s) as long as expression evaluates WIDGET_BASE - continued


to true. Subject is never executed if condition is initially false. [, XSIZE=value] [, X_SCROLL_SIZE=value]
WHILE expression DO statement [, YOFFSET=value] [, YPAD=value{ignored if exclusive
or or nonexclusive}] [, YSIZE=value]
WHILE expression DO BEGIN [, Y_SCROLL_SIZE=value] )
statements X Windows Keywords: [, DISPLAY_NAME=string]
ENDWHILE [, RESOURCE_NAME=string]
WIDGET_ACTIVEX - Create an ActiveX control and place it into an [, RNAME_MBAR=string]
IDL widget hierarchy. WIDGET_BUTTON - Creates button widgets.
Result = WIDGET_ACTIVEX( Parent, COM_ID, Result = WIDGET_BUTTON( Parent
[, /ALIGN_BOTTOM | , /ALIGN_CENTER | , [, /ACCELERATOR=string] [, /ALIGN_CENTER | ,
/ALIGN_LEFT | , /ALIGN_RIGHT | , /ALIGN_TOP] /ALIGN_LEFT | , /ALIGN_RIGHT] [, /BITMAP]
[, EVENT_FUNC=string] [, EVENT_PRO=string] [, /CHECKED_MENU] [, /DYNAMIC_RESIZE]
[, FUNC_GET_VALUE=string] [ID_TYPE=value] [, EVENT_FUNC=string] [, EVENT_PRO=string]
[, KILL_NOTIFY=string] [, /NO_COPY] [, /FLAT] [, FONT=string] [, FRAME=width]
[, NOTIFY_REALIZE=string] [, FUNC_GET_VALUE=string]
[, PRO_SET_VALUE=string] [, SCR_XSIZE=width] [, GROUP_LEADER=widget_id] [, /HELP]
[, SCR_YSIZE=height] [, /SENSITIVE] [, KILL_NOTIFY=string] [, /MENU] [, /NO_COPY]
[, UNAME=string] [, UNITS={0 | 1 | 2}] [, /NO_RELEASE] [, NOTIFY_REALIZE=string]
[, UVALUE=value] [, XOFFSET=value] [, PRO_SET_VALUE=string]
[, XSIZE=value] [, YOFFSET=value] [, YSIZE=value] ) [, /PUSHBUTTON_EVENTS] [, SCR_XSIZE=width]
WIDGET_BASE - Creates base widget (containers for other widgets). [, SCR_YSIZE=height] [, /SENSITIVE]
[, /SEPARATOR] [, TAB_MODE=value]
Result = WIDGET_BASE( [Parent] [, /ALIGN_BOTTOM
| , /ALIGN_CENTER | , /ALIGN_LEFT | , [, TOOLTIP=string] [, /TRACKING_EVENTS]
/ALIGN_RIGHT | , /ALIGN_TOP] [, MBAR=variable | [, UNAME=string] [, UNITS={0 | 1 | 2}]
[, UVALUE=value] [, VALUE=value]
, /MODAL] [, /BASE_ALIGN_BOTTOM | ,
/BASE_ALIGN_CENTER | , /BASE_ALIGN_LEFT | , [, X_BITMAP_EXTRA=bits] [, XOFFSET=value]
/BASE_ALIGN_RIGHT | , /BASE_ALIGN_TOP] [, XSIZE=value] [, YOFFSET=value] [, YSIZE=value] )
X Windows Keywords: [, RESOURCE_NAME=string]
[, BITMAP=value] [, COLUMN=ncols | , ROW=nrows]
[, /CONTEXT_EVENTS] [, /CONTEXT_MENU] WIDGET_COMBOBOX - Creates editable droplist widgets.
[, EVENT_FUNC=string] [, EVENT_PRO=string] Result = WIDGET_COMBOBOX( Parent
[, /EXCLUSIVE | , /NONEXCLUSIVE] [, /FLOATING] [, /DYNAMIC_RESIZE] [, /EDITABLE]
[, FRAME=width] [, FUNC_GET_VALUE=string] [, EVENT_FUNC=string] [, EVENT_PRO=string]
[, /GRID_LAYOUT] [, /FLAT] [, FONT=string] [, FRAME=value]
[, GROUP_LEADER=widget_id{must specify for modal [, FUNC_GET_VALUE=string]
dialogs}] [, /KBRD_FOCUS_EVENTS] [, GROUP_LEADER=widget_id]
[, KILL_NOTIFY=string] [, /MAP{not for modal bases}] [, IGNORE_ACCELERATORS=value]
[, /MASK] [, /NO_COPY] [, KILL_NOTIFY=string] [, /NO_COPY]
[, NOTIFY_REALIZE=string] [, NOTIFY_REALIZE=string]
[, PRO_SET_VALUE=string] [, SCR_XSIZE=width] [, PRO_SET_VALUE=string]
[, SCR_YSIZE=height] [, /SCROLL{not for modal [, RESOURCE_NAME=string] [, SCR_XSIZE=width]
bases}] [, /SENSITIVE] [, SPACE=value{ignored if [, SCR_YSIZE=height] [, /SENSITIVE]
exclusive or nonexclusive}] [, TAB_MODE=value] [, TAB_MODE=value] [, /TRACKING_EVENTS]
[, TITLE=string] [, TLB_FRAME_ATTR=value{top- [, UNAME=string] [, UNITS={0 | 1 | 2}]
level bases only}] [, /TLB_ICONIFY_EVENTS{top- [, UVALUE=value] [, VALUE=value]
level bases only}] [, XOFFSET=value] [, XSIZE=value]
[, /TLB_KILL_REQUEST_EVENTS{top-level bases [, YOFFSET=value] [, YSIZE=value] )
only}] [, /TLB_MOVE_EVENTS{top-level bases only}]
[, /TLB_SIZE_EVENTS{top-level bases only}]
[, /TOOLBAR] [, /TRACKING_EVENTS]
[, UNAME=string] [, UNITS={0 | 1 | 2}]
[, UVALUE=value] [, XOFFSET=value]
[, XPAD=value{ignored if exclusive or nonexclusive}]

IDL Quick Reference


72 Alphabetical List of IDL Routines

WIDGET_CONTROL - Realizes, manages, and destroys widgets. WIDGET_DRAW: [, /DRAW_BUTTON_EVENTS]


WIDGET_CONTROL [, Widget_ID] [, /DRAW_EXPOSE_EVENTS]
All widgets: [, BAD_ID=variable] [, /CLEAR_EVENTS] [, DRAW_KEYBOARD_EVENTS={0 | 1 | 2}]
[, DEFAULT_FONT=string{do not specify Widget_ID}] [, /DRAW_MOTION_EVENTS]
[, /DELAY_DESTROY{do not specify Widget_ID}] [, /DRAW_VIEWPORT_EVENTS]
[, /DESTROY] [, EVENT_FUNC=string] [, /DRAW_WHEEL_EVENTS]
[, EVENT_PRO=string] [, FUNC_GET_VALUE=string] [, DRAW_XSIZE=integer] [, DRAW_YSIZE=integer]
[, GET_UVALUE=variable] [, GET_DRAW_VIEW=variable]
[, GROUP_LEADER=widget_id] [, /HOURGLASS{do [, GET_UVALUE=variable] [, GET_VALUE=variable]
not specify Widget_ID}] [, KILL_NOTIFY=string] [, IGNORE_ACCELERATORS={string_array|{0 | 1}}]
[, /MAP] [, /NO_COPY] [, NOTIFY_REALIZE=string] [, /INPUT_FOCUS] [, SET_DRAG_NOTIFY=string]
[, PRO_SET_VALUE=string] [, SET_DRAW_VIEW=[x, y]] [, /SET_DROP_EVENTS]
[, /PUSHBUTTON_EVENTS] [, /REALIZE] [, TOOLTIP=string]
[, /RESET{do not specify Widget_ID}] WIDGET_DROPLIST: [, /DYNAMIC_RESIZE]
[, SCR_XSIZE=width] [, SCR_YSIZE=height] [, GET_VALUE=value]
[, SEND_EVENT=structure] [, /SENSITIVE] [, SET_DROPLIST_SELECT=integer]
[, SET_UNAME=string] [, SET_UVALUE=value] [, SET_VALUE=value] [, TAB_MODE=value]
[, /SHOW] [, TIMER=value] WIDGET_LABEL: [, /DYNAMIC_RESIZE]
[, TLB_GET_OFFSET=variable] [, GET_VALUE=value] [, SET_VALUE=value]
[, TLB_GET_SIZE=variable] WIDGET_LIST: [, /CONTEXT_EVENTS]
[, /TLB_KILL_REQUEST_EVENTS] [, SET_LIST_SELECT=value]
[, TLB_SET_TITLE=string] [, SET_LIST_TOP=integer] [, SET_VALUE=value]
[, TLB_SET_XOFFSET=value] [, TAB_MODE=value]
[, TLB_SET_YOFFSET=value] WIDGET_PROPERTYSHEET:
[, /TRACKING_EVENTS] [, UNITS={0 | 1 | 2}] [, /CONTEXT_EVENTS] [, /EDITABLE]
[, /UPDATE] [, XOFFSET=value] [, XSIZE=value] [, GET_VALUE=variable]
[, YOFFSET=value] [, YSIZE=value] [, IGNORE_ACCELERATORS={string_array|{0 | 1}}]
WIDGET_BASE: [, /CONTEXT_EVENTS] [, /MULTIPLE_PROPERTIES]
[, /ICONIFY] [, /KBRD_FOCUS_EVENTS] [, PROPERTYSHEET_SETSELECTED=empty string,
[, TAB_MODE=value] [, /TLB_ICONIFY_EVENTS] string, or array of strings]
[, /TLB_KILL_REQUEST_EVENTS] [, REFRESH_PROPERTY=string, string array, or
[, /TLB_MOVE_EVENTS] [, /TLB_SIZE_EVENTS] integer] [, SET_VALUE=value]
WIDGET_BUTTON: [, /BITMAP] WIDGET_SLIDER: [, GET_VALUE=value]
[, /DYNAMIC_RESIZE] [, GET_VALUE=value] [, SET_SLIDER_MAX=value]
[, /INPUT_FOCUS] [, /PUSHBUTTON_EVENTS] [, SET_SLIDER_MIN=value] [, SET_VALUE=value]
[, /SET_BUTTON] [, SET_VALUE=value] [, TAB_MODE=value]
[, TAB_MODE=value] [, TOOLTIP=string] WIDGET_TAB: [, SET_TAB_CURRENT=index]
[, X_BITMAP_EXTRA=bits] [, SET_TAB_MULTILINE=value]
WIDGET_COMBOBOX: [, TAB_MODE=value]
[, COMBOBOX_ADDITEM=string]
[, COMBOBOX_DELETEITEM=integer]
[, COMBOBOX_INDEX=integer]
[, /DYNAMIC_RESIZE] [, GET_VALUE=value]
[, IGNORE_ACCELERATORS={string_array|{0 | 1}}]
[, SET_COMBOBOX_SELECT=integer]
[, SET_VALUE=value] [, TAB_MODE=value]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 73

WIDGET_CONTROL - continued WIDGET_DISPLAYCONTEXTMENU - Displays a context-sen-


WIDGET_TABLE: [, ALIGNMENT={0 | 1 | 2}] sitive menu.
[, /ALL_TABLE_EVENTS] [, AM_PM=[string, string]] WIDGET_DISPLAYCONTEXTMENU, Parent, X, Y,
[, BACKGROUND_COLOR=array] ContextBase_ID
[, COLUMN_LABELS=string_array] WIDGET_DRAW - Creates drawable widgets.
[, COLUMN_WIDTHS=array] Result = WIDGET_DRAW(Parent [, /APP_SCROLL]
[, /CONTEXT_EVENTS] [, /BUTTON_EVENTS] [, CLASSNAME=string]
[, DAYS_OF_WEEK=string_array{7 names}] [, /COLOR_MODEL] [, COLORS=integer]
[, /DELETE_COLUMNS{not for row_major mode}] [, DRAG_NOTIFY=string] [, /DROP_EVENTS]
[, /DELETE_ROWS{not for column_major mode}] [, EVENT_FUNC=string] [, EVENT_PRO=string]
[, /DISJOINT_SELECTION] [, /EDITABLE] [, /EXPOSE_EVENTS] [, FRAME=width]
[, EDIT_CELL=[integer, integer]] [, FONT=string array] [, FUNC_GET_VALUE=string]
[, FOREGROUND_COLOR=array] [, FORMAT=value] [, GRAPHICS_LEVEL=2]
[, GET_VALUE=variable] [, GROUP_LEADER=widget_id]
[, IGNORE_ACCELERATORS={string_array|{0 | 1}}] [, IGNORE_ACCELERATORS=value]
[, INSERT_COLUMNS=value] [, KEYBOARD_EVENTS={0 | 1 | 2}]
[, INSERT_ROWS=value] [, /KBRD_FOCUS_EVENTS] [, KILL_NOTIFY=string] [, /MOTION_EVENTS]
[, MONTHS=string_array{12 names}] [, /NO_COPY] [, NOTIFY_REALIZE=string]
[, ROW_LABELS=string_array] [, PRO_SET_VALUE=string] [, RENDERER={0 | 1}]
[, ROW_HEIGHTS=array] [, RESOURCE_NAME=string] [, RETAIN={0 | 1 | 2}]
[, SET_TABLE_SELECT=[left, top, right, bottom]] [, SCR_XSIZE=width] [, SCR_YSIZE=height]
[, SET_TABLE_VIEW=[integer, integer]] [, /SCROLL] [, /SENSITIVE] [, TOOLTIP=string]
[, SET_TEXT_SELECT=[integer, integer]] [, /TRACKING_EVENTS] [, UNAME=string]
[, SET_VALUE=value] [, TAB_MODE=value] [, UNITS={0 | 1 | 2}] [, UVALUE=value]
[, TABLE_BLANK=cells] [, /VIEWPORT_EVENTS] [, /WHEEL_EVENTS]
[, /TABLE_DISJOINT_SELECTION] [, XOFFSET=value] [, XSIZE=value]
[, TABLE_XSIZE=columns] [, TABLE_YSIZE=rows] [, X_SCROLL_SIZE=width] [, YOFFSET=value]
[, /USE_TABLE_SELECT | , USE_TABLE_SELECT= [, YSIZE=value] [, Y_SCROLL_SIZE=height] )
[left, top, right, bottom]] [, /USE_TEXT_SELECT]
WIDGET_TEXT: [, /ALL_TEXT_EVENTS] WIDGET_DROPLIST - Creates droplist widgets.
[, /APPEND] [, /CONTEXT_EVENTS] [, /EDITABLE] Result = WIDGET_DROPLIST( Parent
[, GET_VALUE=variable] [, /DYNAMIC_RESIZE] [, EVENT_FUNC=string]
[, IGNORE_ACCELERATORS={string_array|{0 | 1}}] [, EVENT_PRO=string] [, /FLAT] [, FONT=string]
[, /INPUT_FOCUS] [, /KBRD_FOCUS_EVENTS] [, FRAME=value] [, FUNC_GET_VALUE=string]
[, /NO_NEWLINE] [, SET_TEXT_SELECT=[integer, [, GROUP_LEADER=widget_id]
integer]] [, SET_TEXT_TOP_LINE=line_number] [, KILL_NOTIFY=string] [, /NO_COPY]
[, SET_VALUE=value] [, TAB_MODE=value] [, NOTIFY_REALIZE=string]
[, /USE_TEXT_SELECT] [, PRO_SET_VALUE=string]
WIDGET_TREE: [, /CONTEXT_EVENTS] [, RESOURCE_NAME=string] [, SCR_XSIZE=width]
[, GET_VALUE=variable] [, SCR_YSIZE=height] [, /SENSITIVE]
[, SET_DRAG_NOTIFY=string] [, TAB_MODE=value] [, TITLE=string]
[, /SET_DRAGGABLE] [, /SET_DROP_EVENTS] [, /TRACKING_EVENTS] [, UNAME=string]
[, /SET_MASK] [, SET_TREE_BITMAP=array] [, UNITS={0 | 1 | 2}] [, UVALUE=value]
[, /SET_TREE_EXPANDED] [, VALUE=value] [, XOFFSET=value] [, XSIZE=value]
[, SET_TREE_INDEX=value] [, SET_TREE_SELECT= [, YOFFSET=value] [, YSIZE=value] )
{0 | 1 | widget ID | array of widget IDs}] WIDGET_EVENT - Returns events for the widget hierarchy.
[, /SET_TREE_VISIBLE] [, SET_VALUE=value] Result = WIDGET_EVENT([Widget_ID])
[, TAB_MODE=value] [, BAD_ID=variable] [, /NOWAIT]
[, /SAVE_HOURGLASS]
UNIX Keywords: [, /YIELD_TO_TTY]

IDL Quick Reference


74 Alphabetical List of IDL Routines

WIDGET_INFO - Obtains information about widgets. WIDGET_TABLE: [, /COLUMN_WIDTHS]


Result = WIDGET_INFO( [Widget_ID] ) [, /CONTEXT_EVENTS] [, /ROW_HEIGHTS]
All widgets: [, /ACTIVE] [, /ALL_CHILDREN] [, /STRING_SIZE] [, /TABLE_ALL_EVENTS]
[, /CHILD] [, /EVENT_FUNC] [, /EVENT_PRO] [, /TABLE_BACKGROUND_COLOR]
[, FIND_BY_UNAME=string] [, /FONTNAME] [, /TABLE_DISJOINT_SELECTION]
[, /GEOMETRY] [, /KBRD_FOCUS_EVENTS] [, /TABLE_EDITABLE] [, /TABLE_EDIT_CELL]
[, /MANAGED] [, /MAP] [, /N_CHILDREN] [, /NAME] [, /TABLE_FONT]
[, /PARENT] [, /PUSHBUTTON_EVENTS] [, /TABLE_FOREGROUND_COLOR]
[, /REALIZED] [, /SENSITIVE] [, /SIBLING] [, /TABLE_SELECT] [, /TABLE_VIEW]
[, STRING_SIZE={string | [string, font]}] [, /USE_TABLE_SELECT]
[, /SYSTEM_COLORS] [, TAB_MODE=value] WIDGET_TEXT: [, /CONTEXT_EVENTS]
[, /TRACKING_EVENTS] [, /TYPE] [, UNITS={0 | 1 | [, /TEXT_ALL_EVENTS] [, /TEXT_EDITABLE]
2}] [, /UNAME] [, /UPDATE] [, /VALID_ID] [, /TEXT_NUMBER]
[, /VERSION] [, /VISIBLE] [, TEXT_OFFSET_TO_XY=integer]
WIDGET_BASE: [, /CONTEXT_EVENTS] [, /MODAL] [, /TEXT_SELECT] [, /TEXT_TOP_LINE]
[, /TLB_ICONIFY_EVENTS] [, TEXT_XY_TO_OFFSET=[column, line]]
[, /TLB_KILL_REQUEST_EVENTS] WIDGET_TREE: [, /CONTEXT_EVENTS]
[, /TLB_MOVE_EVENTS] [, /TLB_SIZE_EVENTS] [, /DRAGGABLE] [, /DRAG_NOTIFY]
WIDGET_BUTTON: [, /BUTTON_SET] [, /DROP_EVENTS] [, /MASK] [, /TREE_BITMAP]
[, /DYNAMIC_RESIZE] [, /PUSHBUTTON_EVENTS] [, /TREE_DRAG_SELECT] [, /TREE_EXPANDED]
[, /TOOLTIP] [, /TREE_FOLDER] [, /TREE_INDEX]
WIDGET_COMBOBOX: [, /COMBOBOX_GETTEXT] [, /TREE_ROOT] [, /TREE_SELECT]
[, /COMBOBOX_NUMBER] [, /DYNAMIC_RESIZE] WIDGET_LABEL - Creates label widgets.
WIDGET_DRAW: [, /DRAG_NOTIFY] Result = WIDGET_LABEL( Parent [, /ALIGN_CENTER |
[, /DRAW_BUTTON_EVENTS] , /ALIGN_LEFT | , /ALIGN_RIGHT]
[, /DRAW_EXPOSE_EVENTS]
[, /DYNAMIC_RESIZE] [, FONT=string]
[, /DRAW_KEYBOARD_EVENTS] [, FRAME=width] [, FUNC_GET_VALUE=string]
[, /DRAW_MOTION_EVENTS] [, GROUP_LEADER=widget_id]
[, /DRAW_VIEWPORT_EVENTS]
[, KILL_NOTIFY=string] [, /NO_COPY]
[, /DRAW_WHEEL_EVENTS] [, /DROP_EVENTS] [, NOTIFY_REALIZE=string]
[, /TOOLTIP] [, PRO_SET_VALUE=string]
WIDGET_DROPLIST: [, /DROPLIST_NUMBER]
[, RESOURCE_NAME=string] [, SCR_XSIZE=width]
[, /DROPLIST_SELECT] [, /DYNAMIC_RESIZE] [, SCR_YSIZE=height] [, /SENSITIVE]
WIDGET_LABEL: [, /DYNAMIC_RESIZE] [, /SUNKEN_FRAME] [, /TRACKING_EVENTS]
WIDGET_LIST: [, /CONTEXT_EVENTS]
[, UNAME=string] [, UNITS={0 | 1 | 2}]
[, /LIST_MULTIPLE] [, /LIST_NUMBER] [, UVALUE=value] [, VALUE=value]
[, /LIST_NUM_VISIBLE] [, /LIST_SELECT] [, XOFFSET=value] [, XSIZE=value]
[, /LIST_TOP]
[, YOFFSET=value] [, YSIZE=value] )
WIDGET_PROPERTYSHEET:
[, /CONTEXT_EVENTS] [, COMPONENT=objref] WIDGET_LIST - Creates list widgets.
[, /MULTIPLE_PROPERTIES] Result = WIDGET_LIST( Parent
[, PROPERTY_VALID=string] [, /CONTEXT_EVENTS] [, EVENT_FUNC=string]
[, PROPERTY_VALUE=string] [, EVENT_PRO=string] [, FONT=string]
[, /PROPERTYSHEET_NSELECTED] [, FRAME=width] [, FUNC_GET_VALUE=string]
[, /PROPERTYSHEET_SELECTED] [, GROUP_LEADER=widget_id]
WIDGET_SLIDER: [, /SLIDER_MIN_MAX] [, KILL_NOTIFY=string] [, /MULTIPLE]
WIDGET_TAB: [, /TAB_CURRENT] [, /NO_COPY] [, NOTIFY_REALIZE=string]
[, /TAB_MULTILINE] [, /TAB_NUMBER] [, PRO_SET_VALUE=string]
[, RESOURCE_NAME=string] [, SCR_XSIZE=width]
[, SCR_YSIZE=height] [, /SENSITIVE]
[, TAB_MODE=value] [, /TRACKING_EVENTS]
[, UNAME=string] [, UNITS={0 | 1 | 2}]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 75

WIDGET_LIST - continued WIDGET_TAB - continued


[, UVALUE=value] [, VALUE=value] [, PRO_SET_VALUE=string] [, SCR_XSIZE=width]
[, XOFFSET=value] [, XSIZE=value] [, SCR_YSIZE=height] [, /SENSITIVE]
[, YOFFSET=value] [, YSIZE=value] ) [, TAB_MODE=value] [, /TRACKING_EVENTS]
WIDGET_PROPERTYSHEET - Creates a property sheet widget, [, UNAME=string] [, UNITS={0 | 1 | 2}]
which exposes the properties of an IDL object.. This widget trans- [, UVALUE=value] [, XOFFSET=value]
parently handles property value changes [, XSIZE=value] [, YOFFSET=value] [, YSIZE=value] )
Result = WIDGET_PROPERTYSHEET(Parent
WIDGET_TABLE - Creates table widgets.
[, /ALIGN_BOTTOM |, /ALIGN_CENTER
Result = WIDGET_TABLE( Parent [, ALIGNMENT={0 |
|, /ALIGN_LEFT |, /ALIGN_RIGHT |, /ALIGN_TOP]
1 | 2}] [, /ALL_EVENTS] [, AM_PM=[string, string]]
[, /CONTEXT_EVENTS] [, /EDITABLE]
[, BACKGROUND_COLOR=array]
[, EVENT_FUNC=string] [, EVENT_PRO=string]
[, COLUMN_LABELS=string_array]
[, FONT=STRING] [, FRAME=width]
[, /COLUMN_MAJOR | , /ROW_MAJOR]
[, FUNC_GET_VALUE=string]
[, COLUMN_WIDTHS=array]
[, IGNORE_ACCELERATORS=value]
[, /CONTEXT_EVENTS]
[, KILL_NOTIFY=string]
[, DAYS_OF_WEEK=string_array{7 names}]
[, /MULTIPLE_PROPERTIES] [, /NO_COPY]
[, /DISJOINT_SELECTION] [, /EDITABLE]
[, NOTIFY_REALIZE=string]
[, EVENT_FUNC=string] [, EVENT_PRO=string]
[, PRO_SET_VALUE=string] [, SCR_XSIZE=width]
[, FONT=string] [, FOREGROUND_COLOR=array]
[, SCR_YSIZE=height] [, /SENSITIVE]
[, FORMAT=value] [, FRAME=width]
[, /SUNKEN_FRAME] [, /TRACKING_EVENTS]
[, FUNC_GET_VALUE=string]
[, UNAME=string] [,UNITS={0 | 1 | 2}]
[, GROUP_LEADER=widget_id]
[, UVALUE=value] [, VALUE=value]
[, IGNORE_ACCELERATORS=value]
[, XOFFSET=value] [, XSIZE=value]
[, /KBRD_FOCUS_EVENTS] [, KILL_NOTIFY=string]
[, YOFFSET=value] [, YSIZE=value])
[, MONTHS=string_array{12 names}]
WIDGET_SLIDER - Creates slider widgets. [, /NO_COLUMN_HEADERS] [, /NO_COPY]
Result = WIDGET_SLIDER( Parent [, /DRAG] [, /NO_HEADERS] [, /NO_ROW_HEADERS]
[, EVENT_FUNC=string] [, EVENT_PRO=string] [, NOTIFY_REALIZE=string]
[, FONT=string] [, FRAME=width] [, PRO_SET_VALUE=string]
[, FUNC_GET_VALUE=string] [, /RESIZEABLE_COLUMNS]
[, GROUP_LEADER=widget_id] [, /RESIZEABLE_ROWS{not supported in Windows}]
[, KILL_NOTIFY=string] [, MAXIMUM=value] [, RESOURCE_NAME=string]
[, MINIMUM=value] [, /NO_COPY] [, ROW_HEIGHTS=array]
[, NOTIFY_REALIZE=string] [, ROW_LABELS=string_array] [, SCR_XSIZE=width]
[, PRO_SET_VALUE=string] [, SCR_YSIZE=height] [, /SCROLL] [, /SENSITIVE]
[, RESOURCE_NAME=string] [, SCR_XSIZE=width] [, TAB_MODE=value] [, /TRACKING_EVENTS]
[, SCR_YSIZE=height] [, SCROLL=units] [, UNAME=string] [, UNITS={0 | 1 | 2}]
[, /SENSITIVE] [, /SUPPRESS_VALUE] [, UVALUE=value] [, VALUE=value]
[, TAB_MODE=value] [, /TRACKING_EVENTS] [, XOFFSET=value] [, XSIZE=value]
[, TITLE=string] [, UNAME=string] [, UNITS={0 | 1 | [, X_SCROLL_SIZE=width] [, YOFFSET=value]
2}] [, UVALUE=value] [, VALUE=value] [, YSIZE=value] [, Y_SCROLL_SIZE=height] )
[, /VERTICAL] [, XOFFSET=value] [, XSIZE=value]
WIDGET_TEXT - Creates text widgets.
[, YOFFSET=value] [, YSIZE=value] )
Result = WIDGET_TEXT( Parent [, /ALL_EVENTS]
WIDGET_TAB - Creates tab widgets. [, /CONTEXT_EVENTS] [, /EDITABLE]
Result = WIDGET_TAB( Parent [, /ALIGN_BOTTOM | , [, EVENT_FUNC=string] [, EVENT_PRO=string]
/ALIGN_CENTER | , /ALIGN_LEFT | , [, FONT=string] [, FRAME=width]
/ALIGN_RIGHT | , /ALIGN_TOP] [, FUNC_GET_VALUE=string]
[, EVENT_FUNC=string] [, EVENT_PRO=string] [, GROUP_LEADER=widget_id]
[, FUNC_GET_VALUE=string] [, IGNORE_ACCELERATORS=value]
[, GROUP_LEADER=widget_id] [, /KBRD_FOCUS_EVENTS] [, KILL_NOTIFY=string]
[, KILL_NOTIFY=string] [, LOCATION={0 | 1 | 2 | 3}] [, /NO_COPY] [, /NO_NEWLINE]
[, MULTILINE=0 | 1 (Windows) or num tabs per row [, NOTIFY_REALIZE=string]
(Motif)] [, /NO_COPY] [, NOTIFY_REALIZE=string] [, PRO_SET_VALUE=string]

IDL Quick Reference


76 Alphabetical List of IDL Routines

WIDGET_TEXT - continued WRITE_GIF - Writes a Graphics Interchange Format (GIF) file.


[, RESOURCE_NAME=string] [, SCR_XSIZE=width] WRITE_GIF, Filename, Image[, R, G, B]
[, SCR_YSIZE=height] [, /SCROLL] [, /SENSITIVE] [, BACKGROUND_COLOR=value] [, /CLOSE]
[, TAB_MODE=value] [, /TRACKING_EVENTS] [, DELAY_TIME=integer]
[, UNAME=string] [, UNITS={0 | 1 | 2}] [, DISPOSAL_METHOD=integer] [, /MULTIPLE]
[, UVALUE=value] [, VALUE=value] [, /WRAP] [, REPEAT_COUNT=integer]
[, XOFFSET=value] [, XSIZE=value] [, TRANSPARENT=value] [, USER_INPUT=value]
[, YOFFSET=value] [, YSIZE=value] )
WRITE_IMAGE - Writes an image and its color table vectors, if any,
WIDGET_TREE - Creates tree widgets. to a file of a specified type.
Result = WIDGET_TREE( Parent [, /ALIGN_BOTTOM | , WRITE_IMAGE, Filename, Format, Data [, Red, Green,
/ALIGN_CENTER | , /ALIGN_LEFT | , Blue] [, /APPEND]
/ALIGN_RIGHT | , /ALIGN_TOP] [, BITMAP=array] WRITE_JPEG - Writes a JPEG file.
[, /CONTEXT_EVENTS] [, DRAG_NOTIFY=string] WRITE_JPEG [, Filename | , UNIT=lun] , Image
[, /DRAGGABLE] [, /DROP_EVENTS] [, /ORDER] [, /PROGRESSIVE]
[, EVENT_FUNC=string] [, EVENT_PRO=string] [, QUALITY=value{0 to 100}] [, TRUE={1 | 2 | 3}]
[, ./EXPANDED] [, /FOLDER]
[, FUNC_GET_VALUE=string] WRITE_JPEG2000 - Writes a JPEG2000 file.
[, GROUP_LEADER=widget_id] [, INDEX=value] WRITE_JPEG2000, Filename, Image [, Red, Green, Blue]
[, KILL_NOTIFY=string] [, /MASK] [, /MULTIPLE] [, N_LAYERS=value] [, N_LEVELS=value] [, /ORDER]
[, /NO_COPY] [, NOTIFY_REALIZE=string] [, /REVERSIBLE] )
[, PRO_SET_VALUE=string] [, SCR_XSIZE=width] WRITE_NRIF - Writes NCAR Raster Interchange Format rasterfile.
[, SCR_YSIZE=height] [, /SENSITIVE] WRITE_NRIF, File, Image [, R, G, B]
[, TAB_MODE=value] [, /TRACKING_EVENTS]
WRITE_PICT - Writes Macintosh PICT (version 2) bitmap file.
[, UNAME=string] [, UNITS={0 | 1 | 2}]
[, UVALUE=value] [, VALUE=string] WRITE_PICT, Filename [, Image, R, G, B]
[, XOFFSET=value] [, XSIZE=value] WRITE_PNG - Writes Portable Network Graphics (PNG) file.
[, YOFFSET=value] [, YSIZE=value] ) WRITE_PNG, Filename, Image[, R, G, B] [, /VERBOSE]
WIDGET_TREE_MOVE - Copies and moves tree widget nodes [, TRANSPARENT=array ] [, /ORDER]
from one tree to another or within the same tree.
WRITE_PPM - Writes PPM (true-color) or PGM (gray scale) file.
WIDGET_TREE_MOVE, wMoveNodes, wDestFolder WRITE_PPM, Filename, Image [, /ASCII]
[, CALLBACK_FUNC=name] [, /COPY]
[, INDEX=index] [, /SELECT] [, /UPDATE] WRITE_SPR - Writes row-indexed sparse array structure to a file.
[, USERDATA=value] WRITE_SPR, AS, Filename
WIENER_FILTER - Reduces degradation and noise in an image by WRITE_SRF - Writes Sun Raster File (SRF).
statistically comparing it with an undegraded image. WRITE_SRF, Filename [, Image, R, G, B] [, /ORDER]
Result = WIENER_FILTER( ImageData, [, /WRITE_32]
DegradationFunction, CleanPowerSpectrum,
WRITE_SYLK - Writes SYLK (Symbolic Link) spreadsheet file.
NoisePowerSpectrum )
Result = WRITE_SYLK( File, Data
WINDOW - Creates window for the display of graphics or text. [, STARTCOL=column] [, STARTROW=row] )
WINDOW [, Window_Index] [, COLORS=value]
WRITE_TIFF - Writes TIFF file with 1 to 3 channels.
[, /FREE] [, /PIXMAP] [, RETAIN={0 | 1 | 2}]
WRITE_TIFF, Filename [, Image] [, /APPEND]
[, TITLE=string] [, XPOS=value] [, YPOS=value]
[, BITS_PER_SAMPLE={1 | 4 | 8}] [, RED=value]
[, XSIZE=pixels] [, YSIZE=pixels]
[, GREEN=value] [, BLUE=value] [, /CMYK]
WRITE_BMP - Writes Microsoft Windows Version 3 device indepen- [, COMPRESSION={0 | 1 | 2 | 3}]
dent bitmap file (.BMP).
[, DESCRIPTION=string]
WRITE_BMP, Filename, Image[, R, G, B] [, /FOUR_BIT]
[, DOCUMENT_NAME=string]
[, IHDR=structure] [, HEADER_DEFINE=h{define h
[, DOT_RANGE=intarray] [, GEOTIFF=structure]
before call}] [, /RGB]
[, ICC_PROFILE=/array] [, /COMPLEX |
WRITE_CSV - Writes data to a “comma-separated value” (comma- , /DCOMPLEX | , DOUBLE | , /L64 | , /LONG | ,
delimited) text file (.CSV). /SHORT | ,/FLOAT] [, ORIENTATION=value]
WRITE_CSV, Filename, Data1 [, Data2,..., Data8] [, PHOTOSHOP=bytearray]
[, HEADER=variable]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 77

WRITE_TIFF - continued XINTERANIMATE - Displays animated sequence of images.


[, PLANARCONFIG={1 | 2}] [, /VERBOSE] [, XINTERANIMATE [, Rate]
XPOSITION=units] [, XRESOL=pixels/inch] Keywords for initialization: [, SET=[sizex, sizey,
[, YPOSITION=units] [, YRESOL=pixels/inch] nframes]] [, /BLOCK] [, /CYCLE] [, GROUP=widget_id]
Note: LZW compression (COMPRESSION=1) is only [, /MODAL] [, MPEG_BITRATE=value]
available with the appropriate license feature. [, MPEG_FORMAT=value]
WRITE_WAV - Writes the audio stream to the named .WAV file. [, MPEG_IFRAME_GAP=integer value]
[, MPEG_MOTION_VEC_LENGTH={1 | 2 | 3}]
WRITE_WAV, Filename , Data [, Rate]
[, /MPEG_OPEN, MPEG_FILENAME=string]
WRITE_WAVE - Writes Wavefront Advanced Visualizer (.WAV) file. [ MPEG_QUALITY=value{0 to 100}] [, /SHOWLOAD]
WRITE_WAVE, File, Array [, /BIN] [, /TRACK] [, TITLE=string]
[, DATANAME=string] [, MESHNAME=string] Keywords for loading images: [, FRAME=value{0 to
[, /NOMESHDEF] [, /VECTOR] (nframes-1)}[, IMAGE=value]] [, /ORDER]
WRITEU - Writes unformatted binary data to a file. [, WINDOW=[window_num [, x0, y0, sx, sy]]]
WRITEU, Unit, Expr1 ..., Exprn Keywords for running animations: [, /CLOSE]
[, TRANSFER_COUNT=variable] [, /KEEP_PIXMAPS] [, /MPEG_CLOSE]
[, XOFFSET=pixels] [, YOFFSET=pixels]
WSET - Selects the current window.
WSET [, Window_Index] XLOADCT - Provides GUI to interactively select and load color tables.
XLOADCT [, /BLOCK] [, BOTTOM=value]
WSHOW - Exposes or hides the designated window. [, FILE=string] [, GROUP=widget_id] [, /MODAL]
WSHOW [, Window_Index [, Show]] [, /ICONIC] [, NCOLORS=value] [, /SILENT]
WTN - Returns wavelet transform of the input array. [, UPDATECALLBACK=‘procedure_name’
Result = WTN( A, Coef [, /COLUMN] [, /DOUBLE] [, UPDATECBDATA=value]] [, /USE_CURENT]
[, /INVERSE] [, /OVERWRITE] ) XMANAGER - Provides event loop manager for IDL widgets.
XMANAGER [, Name, ID] [, /CATCH]
X [, CLEANUP=string]
[, EVENT_HANDLER=procedure]
[, GROUP_LEADER=widget_id] [, /JUST_REG]
XBM_EDIT - Creates, edits bitmap icons for IDL widget button labels. [, /NO_BLOCK]
XBM_EDIT [, /BLOCK] [, FILENAME=string]
XMNG_TMPL - Template for creating widgets.
[, GROUP=widget_id] [, XSIZE=pixels]
[, YSIZE=pixels] XMNG_TMPL [, /BLOCK] [, GROUP=widget_id]

XDISPLAYFILE - Displays ASCII text file in scrolling text widget. XMTOOL - Displays tool for viewing XMANAGER widgets.
XDISPLAYFILE, Filename [, /BLOCK] XMTOOL [, /BLOCK] [, GROUP=widget_id]
[, DONE_BUTTON=string] [, /EDITABLE] XOBJVIEW - Displays object viewer widget.
[, FONT=string] [, GROUP=widget_id] XOBJVIEW, Obj [, BACKGROUND=[r, g, b]]
[, /GROW_TO_SCREEN] [, HEIGHT=lines] [, /BLOCK] [, /DOUBLE_VIEW ] [, GROUP=widget_id]
[, /MODAL] [, RETURN_ID=variable] [, TEXT=string [, .JUST_REG] [, /MODAL] [, REFRESH=widget_id]
or string array] [, TITLE=string] [, WIDTH=characters] [, RENDERER={0|1}] [, SCALE=value]
[, WTEXT=variable] [, STATIONARY=objref(s)] [, /TEST] [, TITLE=string]
XDXF - Utility for displaying and interactively manipulating DXF [, TLB=variable] [, XOFFSET=value] [, XSIZE=pixels]
objects [, YOFFSET=value] [, YSIZE=pixels]
XDXF [, Filename] [, /BLOCK] [, GROUP=widget_id] XOBJVIEW_ROTATE - Programmatically rotate the object cur-
[, SCALE=value] [, /TEST] [keywords to XOBJVIEW] rently displayed in XOBJVIEW.
XFONT - Creates modal widget to select and view an X Windows font. XOBJVIEW_ROTATE, Axis, Angle [, /PREMULTIPLY]
Result = XFONT( [, GROUP=widget_id] XOBJVIEW_WRITE_IMAGE - Write the object currently dis-
[, /PRESERVE_FONT_INFO] ) played in XOBJVIEW to an image file.
XOBJVIEW_WRITE_IMAGE, Filename, Format
[, DIMENSIONS=[x, y] ]

IDL Quick Reference


78 Alphabetical List of IDL Routines

XPALETTE - Displays widget used to create and modify color tables. XVAREDIT - Provides widget-based editor for IDL variables.
XPALETTE [, /BLOCK] [, GROUP=widget_id] XVAREDIT, Var [, NAME='variable_name'{ignored if
[, UPDATECALLBACK=‘procedure_name’ variable is a structure}] [, GROUP=widget_id]
[, UPDATECBDATA=value]] [, X_SCROLL_SIZE=columns]
[, Y_SCROLL_SIZE=rows]
XPCOLOR - Adjusts the value of the current foreground plotting color,
!P.COLOR. XVOLUME - Utility for viewing and interactively manipulating vol-
XPCOLOR [, GROUP=widget_id ] umes and isosurfaces.
XVOLUME, Vol, [, /BLOCK] [, GROUP=widget_id]
XPLOT3D - Utility for creating and interactively manipulating 3D
plots. [, /INTERPOLATE] [, /MODAL] [, RENDERER={0 |
XPLOT3D, X, Y, Z [, /BLOCK] [, COLOR=[r,g,b]] 1}] [, /REPLACE] [, SCALE=value] [, /TEST]
[, /DOUBLE_VIEW] [, GROUP=widget_id] [, XSIZE=pixels] [, YSIZE=pixels]
[, LINESTYLE={0 | 1 | 2 | 3 | 4 | 5 | 6}]] [, /MODAL] XYOUTS - Draws text on currently-selected graphics device.
[, NAME=string] [, /OVERPLOT] XYOUTS, [X, Y,] String [, ALIGNMENT=value{0.0 to
[, SYMBOL=objref(s)] [, /TEST] 1.0}] [, CHARSIZE=value] [, CHARTHICK=value]
[, THICK=points{1.0 to 10.0}] [, TITLE=string] [, TEXT_AXES={0 | 1 | 2 | 3 | 4 | 5}]
[, XRANGE=[min, max]] [, YRANGE=[min, max]] [, WIDTH=variable]
[, ZRANGE=[min, max]] [, XTITLE=string] Graphics Keywords: [, CLIP=[X0, Y0, X1, Y1]]
[, YTITLE=string] [, ZTITLE=string] [, COLOR=value] [, /DATA | , /DEVICE | , /NORMAL]
XREGISTERED - Returns registration status of a given widget. [, FONT=integer]
Result = XREGISTERED(Name [, /NOSHOW] ) [, ORIENTATION=ccw_degrees_from_horiz]
[, /NOCLIP] [, /T3D] [, Z=value]
XROI - Utility for interactively creating and obtaining information about
ROIs.
XROI [, ImageData] [, R] [, G] [, B] [, /BLOCK] Z
[[, /FLOATING] , GROUP=widget_ID] [, /MODAL]
[, REGIONS_IN=value] [, REGIONS_OUT=value]
ZOOM - Zooms portions of the display.
[, REJECTED=variable] [, RENDERER={0 | 1}]
[, ROI_COLOR=[r, g, b] or variable] ZOOM [, /CONTINUOUS] [, FACT=integer] [, /INTERP]
[, ROI_GEOMETRY=variable] [, /KEEP] [, /NEW_WINDOW] [, XSIZE=value]
[, ROI_SELECT_COLOR=[r, g, b] or variable] [, YSIZE=value] [, ZOOM_WINDOW=variable]
[, STATISTICS=variable] [, TITLE=string] ZOOM_24 - Zooms portions of true-color (24-bit) display.
[, TOOLS=string or string array{valid values are ZOOM_24 [, FACT=integer] [, /RIGHT] [, XSIZE=value]
'Freehand Draw', 'Polygon Draw', and 'Selection'}] [, YSIZE=value]
[, X_SCROLL_SIZE=vlaue]
[, Y_SCROLL_SIZE=value]
Scientific Data Formats
XSQ_TEST - Computes Chi-square goodness-of-fit test.
Result = XSQ_TEST( Obfreq, Exfreq
[, EXCELL=variable] [, OBCELL=variable] See the online version of this document, quickref.pdf located on
[, RESIDUAL=variable] ) your IDL CD-ROM for scientific data format routine information.

XSURFACE - Provides GUI to SURFACE and SHADE_SURF.


XSURFACE, Data [, /BLOCK] [, GROUP=widget_id]

Alphabetical Listing IDL Quick Reference


Alphabetical List of IDL Routines 79

Objects
This section lists all IDL objects and their methods. IDL_Container::IsContained - Returns true (1) if the specified
object is in the container, or false (0) otherwise.
In addition to the syntax conventions discussed in Result = Obj->[IDL_Container::]IsContained(Object
“IDL Syntax Conventions” on page 28, note the [, POSITION=variable])
following: IDL_Container::Move - Moves an object from one position in a
container to a new position.
• The Object_Name::Init method for each Obj->[IDL_Container::]Move, Source, Destination
object has keywords that are followed by
IDL_Container::Remove - Removes an object from the container.
either {Get}, {Set}, or {Get, Set}. Properties
Obj->[IDL_Container::]Remove [, Child_object | ,
retrievable via Object_Name::GetProperty POSITION=index | , /ALL]
are indicated by {Get}; properties settable via
IDL_IDLBridge - Creates and controls a synchronous or an asynchro-
Object_Name::SetProperty are indicated by nous child IDL process that can operate sequentially or in parallel
with the main IDL process.
{Set}. Properties that are both retrievable and
Properties: [, CALLBACK{Get, Init, Set}=string]
settable are indicated by {Get, Set}. Do not [, OUTPUT{Get, Init,}=filename] [, USERDATA{Get,
include the braces, Get, or Set in your call. Init, Set}=userdef]
• Each object’s Cleanup method lists two IDL_IDLBridge::Abort - Aborts the current asynchronous child
IDL process.
possible syntaxes. The second syntax (Obj->
Obj->[IDL_IDLBridge::]Abort
Object_Name::Cleanup) can be used only in
IDL_IDLBridge::Cleanup - Performs all cleanup on the object.
a subclass’ Cleanup method.
OBJ_DESTROY, Obj or Obj->[IDL_IDLBridge::]Cleanup
• Some objects have Init methods that list two IDL_IDLBridge::Execute - Causes the child IDL process to exe-
possible syntaxes. The second syntax (Obj-> cute a given IDL statement in synchronous or asynchronous mode.
Object_Name::Init) can be used only in a Obj->[IDL_IDLBridge::]Execute, IDLStmt, [, /NOWAIT]
subclass’ Init method. IDL_IDLBridge::GetProperty - Retrieves the value of a property
or group of properties for the bridge.
IDL_Container - Object used to hold other objects. No superclasses. Obj–>[IDL_IDLBridge::]GetProperty
Subclasses: IDLgrModel IDLgrScene IDLgrView IDLgrView-
group. [, PROPERTY=value]
IDL_Container::Add - Adds a child object to the container. IDL_IDLBridge::GetVar - Copies the value of a variable from the
child process to the main process.
Obj->[IDL_Container::]Add,Object [POSITION=index]
Result = Obj->[IDL_IDLBridge::]GetVar, VarName
IDL_Container::Cleanup - Performs all cleanup on the object.
IDL_IDLBridge::Init - Initializes an IDL bridge object that lets you
OBJ_DESTROY, Obj or Obj->[IDL_Container::]Cleanup create and control a child IDL session.
IDL_Container::Count - Returns the number of objects contained Obj=OBJ_NEW('IDL_IDLBridge' [, PROPERTY=value])
by the container object. or
Result = Obj->[IDL_Container::]Count( ) Result = Obj->[IDL_IDLBridge::]Init
IDL_Container::Get - Returns an array of object references to ([, PROPERTY=value])
objects in a container.
IDL_IDLBridge::OnCallback - When an asynchronous com-
Result = Obj->[IDL_Container::]Get( mand ens, this property is automatically called. If the CALLBACK
[, /ALL [, ISA=class_name(s)] | , POSITION=index] property is set, the callback procedure specified by the property is
executed.
[COUNT=variable] )
Obj->[IDL_IDLBridge::]OnCallback, Status, Error
IDL_Container::Init - Initializes the container object.
IDL_IDLBridge::SetProperty - Sets the value of a property or
Obj = OBJ_NEW('IDL_Container') group of properties for the bridge.
Result = Obj->[IDL_Container::]Init( ) Obj–>[IDL_IDLBridge::]SetProperty
[, PROPERTY=value]
IDL_IDLBridge::SetVar - Copies the value of a variable from the Obj->[IDL_IDLBridge::]SetVar, Name, Value
main IDL process to the child process under the given name.

IDL Quick Reference


80 Alphabetical List of IDL Routines

IDL_IDLBridge::Status - Returns the state of an asynchronous IDLanROI::AppendData - Appends vertices to the region.
child process (one executed with the NOWAIT keyword set). Obj–>[IDLanROI::]AppendData, X [, Y] [, Z]
Result = [, XRANGE=variable] [, YRANGE=variable]
Obj->[IDL_IDLBridge::]Status([ERROR=ErrorString]) [, ZRANGE=variable]
IDL_Savefile - Object that provides complete query and restore capa- IDLanROI::Cleanup - Performs all cleanup for the object.
bilities for IDL SAVE files.
Obj–>[IDLanROI::]Cleanup or OBJ_DESTROY, Obj
Properties: None.
IDLanROI::ComputeGeometry - Computes the geometrical val-
IDL_Savefile::Cleanup - Performs all cleanup on the object. ues for area, perimeter, and/or centroid of the region.
OBJ_DESTROY, Obj or Obj->[IDL_Savefile::]Cleanup Result = Obj–>[IDLanROI::]ComputeGeometry(
IDL_Savefile::Contents - returns a structure variable of type [, AREA=variable] [, CENTROID=variable]
IDL_SAVEFILE_CONTENTS containing information [, PERIMETER=variable] [, SPATIAL_OFFSET=vector]
about the associated SAVE file and its contents. [, SPATIAL_SCALE=vector] )
Result = Obj->[IDL_Savefile::]Contents() IDLanROI::ComputeMask - Prepares a two-dimensional mask for
the region.
IDL_Savefile::Init - Initializes the Safefile object.
Obj = OBJ_NEW('IDL_Savefile' [, Filename ] Result = Obj–>[IDLanROI::]ComputeMask(
[, INITIALIZE={ –1 | 0 | 1 }]
[, FILENAME=string]
[, DIMENSIONS=[xdim, ydim]] | [, MASK_IN=array]
[, /RELAXED_STRUCTURE_ASSIGNMENT])
Result = Obj->[IDL_Savefile::]Init( [, Filename ] [, LOCATION=[x, y [, z]]] [, MASK_RULE={ 0 | 1 | 2 }]
[, PIXEL_CENTER=[x, y]] [, PLANE_NORMAL=[x, y,
[, FILENAME=string]
[, /RELAXED_STRUCTURE_ASSIGNMENT] ) z]] [, PLANE_XAXIS=[x,y,z]]
[, RUN_LENGTH=value] )
IDL_Savefile::Names - Returns names, or heap variable
identifiers, of items contained within the SAVE file. IDLanROI::ContainsPoints - Determines whether the given data
coordinates are contained within the closed polygon region.
Result = Obj->[IDL_SAVEFILE::]Names(
Result = Obj–>[IDLanROI::]ContainsPoints( X [, Y [, Z]] )
[, COUNT=variable] [, /COMMON_BLOCK |
, COMMON_VARIABLE=string | , /FUNCTION | IDLanROI::GetProperty - Retrieves the value of a property or
group of properties for the region.
, /OBJECT_HEAPVAR | , /POINTER_HEAPVAR |
Obj–>[IDLanROI::]GetProperty[, PROPERTY=value]
, /PROCEDURE | , /STRUCTURE_DEFINITION |
, /SYSTEM_VARIABLE] ) IDLanROI::Init - Initializes a region of interest object.
IDL_Savefile::Restore - Selectively restores individual items Obj = OBJ_NEW( 'IDLanROI' [, X [, Y [, Z ]]]
from the associated SAVE file. [, PROPERTY=value]) or
Obj->[IDL_Savefile::]Restore, SaveItem [, /COMMON] Result = Obj->[IDLanROI::]Init( [X [, Y [, Z ]]]
[, /FUNCTION] [, NEW_HEAPVAR=variable] [, PROPERTY=value])
[, /OBJECT_HEAPVAR] [, /POINTER_HEAPVAR] IDLanROI::RemoveData - Removes vertices from the region.
[, /PROCEDURE] [, RESTORED_OBJECTS=variable] Obj–>[IDLanROI::]RemoveData[, COUNT=vertices]
[, /STRUCTURE_DEFINITION] [, /VERBOSE] [, START=index] [, XRANGE=variable]
IDL_Savefile::Size - Returns the size and type information for [, YRANGE=variable] [, ZRANGE=variable]
the specified variable, system variable, or heap variable in IDLanROI::ReplaceData - Replaces vertices in the region with
the SAVE file . alternate values.
Result = Obj->[IDL_Savefile::]Size(SaveItem) Obj–>[IDLanROI::]ReplaceData, X[, Y[, Z]]
[, START=index] [, FINISH=index]
IDLanROI - Represents a region of interest. Superclass of IDLgrROI.
[, XRANGE=variable] [, YRANGE=variable]
Properties: [, ALL{Get}=variable] [, BLOCKSIZE{Get,
[, ZRANGE=variable]
Init, Set}=vertices] [, DATA{Get, Init, Set}=array]
[, DOUBLE{Get, Init, Set}=value] [, /INTERIOR{Get, IDLanROI::Rotate - Modifies the vertices for the region by applying
a rotation.
Init, Set}] [, N_VERTS{Get}=variable]
[, ROI_XRANGE{Get}=variable] Obj–>[IDLanROI::]Rotate, Axis, Angle
[, ROI_YRANGE{Get}=variable] [, CENTER=[x, y[, z]]]
[, ROI_ZRANGE{Get}=variable] [, TYPE{Get, IDLanROI::Scale - Modifies the vertices for the region by applying a
Init}={ 0 | 1 | 2 }] scale.
Obj–>[IDLanROI::]Scale, Sx[, Sy[, Sz]]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 81

IDLanROI::SetProperty - Sets the value of a property or group of IDLanROIGroup::Translate - Modifies the vertices of all regions
properties for the region. within the group by applying a translation.
Obj–>[IDLanROI::]SetProperty[, PROPERTY=value] Obj–>[IDLanROIGroup::]Translate, Tx[, Ty[, Tz]]
IDLanROI::Translate - Modifies the vertices for the region by IDLcomActiveX - Creates an IDL object that encapsulates an
applying a translation. ActiveX control.
Obj–>[IDLanROI::]Translate, Tx[, Ty[, Tz]] IDLcomIDispatch - Creates a COM object that implements an IDis-
patch interface. A dynamic sub-class of IDLcomIDispatch is cre-
IDLanROIGroup - This object is an analytical representation of a ated when the object is instantiated.
group of regions of interest. Subclass of IDL_Container. Superclass
of IDLgrROIGroup. IDLcomIDispatch::GetProperty - Get properties for an IDis-
patch interface.
Properties: [, ALL{Get}=variable]
IDLcomIDispatch->GetProperty, PROPERTY=variable,
[, ROIGROUP_XRANGE{Get}=variable]
[arg0, arg1, …]
[, ROIGROUP_YRANGE{Get}=variable]
[, ROIGROUP_ZRANGE{Get}=variable] IDLcomIDispatch::Init - Initialize a COM object and establish a
link between the resulting IDL object and the IDispatch interface
IDLanROIGroup::Add - Adds a region to the region group.
Obj = OBJ_NEW('IDLcomIDispatch$IDTYPE$ID')
Obj–>[IDLanROIGroup::]Add, ROI
IDLcomIDispatch::SetProperty - Set properties for an IDis-
IDLanROIGroup::Cleanup - Performs all cleanup for the object. patch interface.
OBJ_DESTROY, Obj IDLcomIDispatch->SetProperty, PROPERTY=value
or Obj–>[IDLanROIGroup::]Cleanup
IDLffDICOM - Contains the data for one or more images embedded in
IDLanROIGroup::ContainsPoints - Determines whether the a DICOM part 10 file. No superclasses. No subclasses.
given points (in data coordinates) are contained within the closed Property: [, /VERBOSE{Init}]
polygon regions within this group.
Result = Obj–>[IDLanROIGroup::]ContainsPoints( IDLffDICOM::Cleanup - Destroys the IDLffDICOM object.
X[, Y[, Z]] ) OBJ_DESTROY, Obj or Obj->[IDLffDICOM::]Cleanup
IDLanROIGroup::ComputeMask - Prepares a 2-D mask for this IDLffDICOM::DumpElements - Dumps a description of the
group of regions. DICOM data elements of IDLffDICOM object to the screen or to a
file.
Result = Obj–>[IDLanROIGroup::]ComputeMask(
Obj->[IDLffDICOM::]DumpElements [, Filename]
[, INITIALIZE={ –1 | 0 | 1 }]
[, DIMENSIONS=[xdim, ydim]] | [, MASK_IN=array] IDLffDICOM::GetChildren - Finds the member element refer-
[, LOCATION=[x, y [, z]]] [, MASK_RULE={ 0 | 1 | 2 }] ences of a DICOM sequence.
[, RUN_LENGTH=value] ) array = Obj->[IDLffDICOM::]GetChildren(Reference)

IDLanROIGroup::ComputeMesh - Triangulates a surface IDLffDICOM::GetDescription - Takes optional DICOM group


and element arguments and returns array of STRING descriptions.
mesh with optional capping from the stack of regions
array = Obj->[IDLffDICOM::]GetDescription( [Group
contained within this group.
[, Element]] [, REFERENCE=list of element references] )
Result = Obj->[IDLanROIGroup::]ComputeMesh(
Vertices, Conn [, CAPPED={ 0 | 1 | 2}] IDLffDICOM::GetElement - Takes optional DICOM group and/or
[, SURFACE_AREA=variable] ) element arguments and returns an array of DICOM Element num-
bers for those parameters.
IDLanROIGroup::GetProperty - Retrieves the value of a prop- array = Obj->[IDLffDICOM::]GetElement( [Group
erty or group of properties for the region group. [, Element]] [, REFERENCE=list of element references] )
Obj–>[IDLanROIGroup::]GetProperty
[, PROPERTY=variable] IDLffDICOM::GetGroup - Takes optional DICOM group and/or
element arguments and returns an array of DICOM Group numbers
IDLanROIGroup::Init - Initializes a region of interest group object. for those parameters.

Obj = OBJ_NEW('IDLanROIGroup') or array = Obj->[IDLffDICOM::]GetGroup( [Group


Result = Obj–>[IDLanROIGroup::]Init( ) [, Element]] [, REFERENCE=list of element references] )

IDLanROIGroup::Rotate - Modifies the vertices for all regions IDLffDICOM::GetLength - Takes optional DICOM group and/or
within the group by applying a rotation. element arguments and returns an array of LONGs.

Obj–>[IDLanROIGroup::]Rotate, Axis, array = Obj->[IDLffDICOM::]GetLength( [Group


Angle[, CENTER=[ x, y[, z ]] ] [, Element]] [, REFERENCE=list of element references] )

IDLanROIGroup::Scale - Modifies the vertices for the region by IDLffDICOM::GetParent - Finds the parent references of a set of
applying a scale. elements in a DICOM sequence.

Obj–>[IDLanROIGroup::]Scale, Sx[, Sy[, Sz]] array = Obj->[IDLffDICOM::]GetParent( ReferenceList )

IDL Quick Reference


82 Alphabetical List of IDL Routines

IDLffDICOM::GetPreamble - Returns the preamble of a DICOM IDLffDXF::Init - Initializes the DXF object.
v3.0 Part 10 file. Result = OBJ_NEW('IDLffDXF' [, Filename] )
array = Obj->[IDLffDICOM::]GetPreamble( ) or
IDLffDICOM::GetReference - Takes optional DICOM group Result = Obj->[IDLffDXF::]Init( [Filename] )
and/or element arguments and returns an array of references to
matching elements in the object. IDLffDXF::PutEntity - Inserts an entity into the DXF object.
array = Obj->[IDLffDICOM::]GetReference( [Group Obj->[IDLffDXF::]PutEntity, Data
[, Element]] [, DESCRIPTION=string] [, VR=DICOM IDLffDXF::Read - Reads a file, parsing the DXF object information
VR string] ) contained in the file, and inserts it into itself.

IDLffDICOM::GetValue - Takes optional DICOM group and/or ele- Result = Obj->[IDLffDXF::]Read( Filename )
ment arguments and returns an array of POINTERs to the values of IDLffDXF::RemoveEntity - Removes the specified entity or enti-
the elements matching those parameters. ties from the DXF object.
ptrArray = Obj->[IDLffDICOM::]GetValue( [Group Obj->[IDLffDXF::]RemoveEntity[, Type]
[, Element]] [, REFERENCE=list of element references] [, INDEX=value]
[, /NO_COPY] )
IDLffDXF::Reset - Removes all the entities from the DXF object.
IDLffDICOM::GetVR - Takes optional DICOM group and/or ele-
ment arguments and returns an array of VR (Value Representation) Obj->[IDLffDXF::]Reset
STRINGs for those parameters.
IDLffDXF::SetPalette - Sets the current color table in the object.
array = Obj->[IDLffDICOM::]GetVR( [Group Obj->[IDLffDXF::]SetPalette, Red, Green, Blue
[, Element]] [, REFERENCE=list of references] )
IDLffDXF::Write - Writes a file for the DXF entity information this
IDLffDICOM::Init - Creates a new IDLffDICOM object and option- object contains.
ally reads the specified file as defined in the IDLffDICOM::Read
method. Result = Obj->[IDLffDXF::]Write( Filename )
Result = OBJ_NEW( 'IDLffDICOM' [, Filename] IDLffJPEG2000 - Object class used for reading and writing
[, PROPERTY=value]) or JPEG2000 files. No superclasses. No subclasses
Result = Obj->[IDLffDICOM::]Init( [, Filename] Properties: [, BIT_DEPTH {Get, Init, Set}=integer
[, PROPERTY=value]) vector] [, BIT_RATE {Init}=array] [, COLOR_SPACE
{Get}=variable] [, COMMENT {Get, Init, Set}=string
IDLffDICOM::Read - Opens and reads from the specified disk file,
places the information into the DICOM object, then closes the file. vector] [, DIMENSIONS {Get, Init, Set}=vector]
result = Obj->[IDLffDICOM::]Read( Filename [, DISPLAY_RESOLUTION {Get, Init, Set}=vector]
[, ENDIAN={1 | 2 | 3 | 4}] ) [, FILENAME {Get}=string] [, JP2 {Get}=0 | 1]
[, N_COMPONENTS {Get, Init, Set}=integer]
IDLffDICOM::Reset - Removes all of the elements from the [, N_LAYERS {Get, Init, Set}=integer] [, N_LEVELS
IDLffDICOM object, leaving the object otherwise intact.
{Get, Init, Set}=integer] [, N_TILES {Get}=variable]
Obj->[IDLffDICOM::]Reset
[, OFFSET {Get, Init, Set}=integer] [, PALETTE {Get,
IDLffDicomEx Object - See Appendix B, “IDL DICOM Quick Init, Set}=array] [, PROGRESSION {Get, Init,
Reference” in the Medical Imaging in IDL manual. Set}=string] [, QUIET {Init, Set}=0 | 1] [, READ {Get,
IDLffDXF - Object that contains geometry, connectivity, and attributes Init}=0 | 1] [, REVERSIBLE {Get, Init, Set}=0 | 1]
for graphics primitives. No superclasses. No subclasses.
[, SIGNED {Get, Init, Set}=0 | 1] [, SUBSAMPLING
IDLffDXF::Cleanup - Performs all cleanup on the object. {Get}=array] [, TILE_DIMENSIONS {Get, Init,
OBJ_DESTROY, Obj or Obj->[IDLffDXF::]Cleanup Set}=vector] [, TILE_OFFSET {Get, Init, Set}=vector]
IDLffDXF::GetContents - Returns the DXF entity types contained [, TILE_RANGE {Get, Init, Set}=vector]
in the object. [, UUIDS {Get}=array] [, WRITE {Get, Init,}=0 | 1]
Result = Obj->[IDLffDXF::]GetContents( [Filter] [, XML {Get, Init, Set}=string vector] [, YCC {Get, Init,
[BLOCK=string] [, COUNT=variable] Set}=0 | 1]
[LAYER=string] )
IDLffJPEG2000::GetData - Returns image data from the
IDLffDXF::GetEntity - Returns an array of vertex data for the IDLffJPEG2000 object.
requested entity type. Result = Obj->[IDLffJPEG2000::]GetData(
Result = Obj->[IDLffDXF::]GetEntity( Type [COMPONENT=value] [, DISCARD_LEVELS=value]
[, BLOCK=string] [, INDEX=value] [, LAYER=string] ) [, MAX_LAYERS=value] [, N_COMPONENTS=value]
IDLffDXF::GetPalette - Returns current color table in the object. [, ORDER=value] [, REGION=value] [, /RGB]
[, TILE_INDEX=value])
Obj->[IDLffDXF::]GetPalette, Red, Green, Blue

Objects IDL Quick Reference


Alphabetical List of IDL Routines 83

IDLffJPEG2000::GetProperty - Retrieves the value of a property IDLffLangCat::Cleanup - Performs all cleanup operations on the
or group of properties for the IDLffJPEG2000 object. language catalog object.
Obj->[IDLgrJPEG2000::]GetProperty OBJ_DESTROY, Obj
[, PROPERTY=variable] or
IDLffJPEG2000::GetTileProperty - Retrieves the properties of Obj->[IDLffLangCat::]Cleanup
a tile in an IDLffJPEG2000 object. IDLffLangCat::GetProperty - Retrieves a property or group of
Obj->[IDLffJPEG2000:]GetTileProperty [, TileIndex properties for an IDLffLangCat object.
[, TileComponent]] [, N_LAYERS=variable] Obj->[IDLffLangCat::]GetProperty
[, N_LEVELS=variable] [, PROGRESSION=variable] [, PROPERTY=variable]
[, REVERSIBLE=variable]
IDLffLangCat::Init - Initializes an IDLffLangCat object.
[, TILE_DIMENSIONS=variable]
Result = OBJ_NEW('IDLffLangCat', Language
[, TILE_OFFSET=variable] [, YCC=variable]
[, PROPERTY=value] [, /CONTINUE_ON_ERROR]
IDLffJPEG2000::GetUUID - Allows you to get the data field from
the specified UUID box. IDLffLangCat::Query - Returns the string or string array that corre-
sponds to all supplied key values.
Data = Obj-> [IDLffJPEG2000::]GetUUID(UUID,
Result = Obj->[IDLffLangCat::]Query( Key
LENGTH=length)
[, DEFAULT_STRING=string] )
IDLffJPEG2000::Init - Initializes an IDLffJPEG2000 object.
IDLffLangCat::SetProperty - Sets the value of a property or
Obj = OBJ_NEW('IDLffJPEG2000' , Filename group of properties for an IDLffLangCat object.
[, PERSISTENT=0 | 1] [, PROPERTY=value]) Obj->[IDLffLangCat::]SetProperty
IDLffJPEG2000::SetData - Writes data to the IDLffJPEG2000 [, PROPERTY=variable]
object.
IDLffMJPEG2000 - Object class used for reading and writing
Obj->[IDLffJPEG2000::]SetData ([P1, ..., Pn] Motion JPEG2000 animations. No superclasses. No subclasses.
[, COMPONENT=value] [, /ORDER] Properties: [, BIT_DEPTH {Get, Init, Set}=integer]
[, TILE_INDEX=value] [, BIT_RATE {Init, Set}=integer vector]
IDLffJPEG2000::SetProperty - Sets the properties of an object [, COLOR_SPACE {Get, Init, Set}=string]
that are open for writing. [, COMMENT {Get, Init, Set}=string]
Obj->[IDLffJPEG2000:]SetProperty [, CURRENT_FRAME {Get}=integer] [, DIMENSIONS
[, PROPERTY=value] {Get, Init, Set}=[width, height]] [, DURATION
IDLffJPEG2000::SetUUID - Allows you to add UUID boxes when {Get}=value] [, FILENAME {Get}=string]
creating a new JPEG2000 file. [, FRAME_BUFFER_LENGTH {Get, Init, Set}=integer]
Obj->[IDLffJPEG2000:]SetUUID, uuid, Data [, FRAMES_IN_BUFFER {Get}=integer]
[, FRAMES_PERIOD {Get, Init, Set}=integer]
IDLffLangCat - Object class is used to find and load an XML lan-
guage catalog. No superclasses. No subclasses [, N_COMPONENTS {Get, Init, Set}=integer]
[, N_FRAMES {Get}=variable] [, N_LAYERS {Get,
Properties: [, APP_NAME {Get, Init}=string]
[, APP_PATH {Get, Init}=string] Init, Set}=integer] [, N_LEVELS {Get, Init,
[, AVAILABLE_LANGUAGES {Get}=string] Set}=integer] [, N_TILES {Get}=variable] [, PALETTE
{Get, Init, Set}=array] [, PROGRESSION {Get, Init,
[, DEFAULT_KEYS {Get}=string]
[, DEFAULT_LANGUAGE {Get, Init}=string] Set}=string] [, REVERSIBLE {Get, Init, Set}=0 | 1]
[, DEFAULT_N_KEYS {Get}=variable] [, FILENAME [, SCAN_MODE {Get,}=0 | 1 2] [, SIGNED {Get, Init,
Set}=0 | 1] [, STATE{Get}=value]
{Get, Init}=string] [, KEYS
{Get}=variable] [, LANGUAGE {Get, Init, Set}=string] [, TILE_DIMENSIONS {Get, Init, Set}=vector]
[, N_KEYS {Get}=variable] [, VERBOSE {Get, Init, [, TIMESCALE{Get, Init, Set}=integer]
[, WRITE {Get, Init,}=0 | 1] [, XML {Get, Init,}=string]
Set}=byte]
[, YCC {Get, Init, Set}=0 | 1]
IDLffLangCat::AppendCatalog - Adds keys from a file or files
to those used to build the language catalog. IDLffMJPEG2000::Cleanup - Deletes all IDLffMJPEG2000
objects.
Result = Obj->[IDLffLangCat::]AppendCatalog
OBJ_DESTROY, Obj
( [, APP_NAME=applicationName]
or
[, FILENAME=filename]
Obj->[IDLffMJPEG2000::]Cleanup
[, APP_PATH=applicationPath] )
IDLffMJPEG2000::Commit - Shuts down the processing thread
and closes the MJ2 file.
Result = Obj->[IDLffMJPEG2000::]Commit(Wait)

IDL Quick Reference


84 Alphabetical List of IDL Routines

IDLffMJPEG2000::GetData - Returns frame, component, tile or IDLffMJPEG2000::StopSequentialReading - Releases the


region data from the MJ2 file. frame buffer memory and shuts down the background processing
thread.
Result = Obj-
>[IDLffMJPEG2000::]GetData(FrameNumber Result =
[COMPONENT=value] [, DISCARD_LEVELS=value] Obj->[IDLffMJPEG2000::]StopSequentialReading ( )
[, MAX_LAYERS=value] [, N_COMPONENTS=value] IDLffMrSID - Object class used to query information about and load
[, /ORDER] [, REGION=value] [, /RGB] image data from a MrSID (.sid) image file. No superclasses. No
subclasses.
[, TILE_INDEX=value])
Properties: [, CHANNELS{Get}=nChannels]
IDLffMJPEG2000::GetProperty - Retrieves the value of a prop- [, DIMENSIONS{Gets}=Dims]
erty or group of properties for the IDLffMJPEG2000 object.
[, GEO_VALID{Get}=geoValid]
Obj->[IDLffMJPEG2000::]GetProperty
[, GEO_PROJTYPE{Get}=geoProjType]
[, PROPERTY=variable]
[, GEO_ORIGIN{Get}=geoOrigin]
IDLffMJPEG2000::GetSequentialData - Retrieves returns the [, GEO_RESOLUTION{Get}=geoRes]
frame index number and retrieves the associated frame data from [, LEVELS{Get}=Levels]
the frame buffer.
[, PIXEL_TYPE{Get}=pixelType] [, /QUIET{Init}]
Result = Obj->[IDLffMJPEG2000::]GetSequentialData
[, TYPE{Get}=strType]
(Data [, FRAME_NUMBER=variable]
[, FRAME_PERIOD=value] [, STEP=value]) IDLffMrSID::Cleanup - Deletes all MrSID objects, closing the
MrSID file in the process.
IDLffMJPEG2000::Init - Initializes an IDLffMJPEG2000 object. OBJ_DESTROY, Obj
Obj = OBJ_NEW('IDLffMJPEG2000' , Filename or
[, PERSISTENT=0 | 1] [, PROPERTY=value]) Obj->[IDLffMrSID::]Cleanup
or
Result = Obj->[IDLffMJPEG2000::]Init( Filename IDLffMrSID::GetDimsAtLevel - Retrieves the dimensions of the
image at a given level.
[, PERSISTENT=0 | 1] [, PROPERTY=value] ) (In a
Dims = Obj->[IDLMrSID::]GetDimsAtLevel ( Level )
lifecycle method only.)
IDLffMrSID::GetImageData - Returns the image data from the
IDLffMJPEG2000::ReleaseSequentialData - Releases a MrSID file.
frame from the frame buffer.
ImageData = Obj->[IDLMrSID::]GetImageData (
Obj-> [IDLffMJPEG2000::]ReleaseSequentialData
[, LEVEL = lvl] [, SUB_RECT = rect] )
(Frame_Index)
IDLffMrSID::GetProperty - Query properties associated with the
IDLffMJPEG2000::SetData - Writes data to the MrSID image.
IDLffMJPEG2000 object.
Obj->[IDLMrSID::]GetProperty[, PROPERTY=variable]
Obj->[IDLffMJPEG2000::]SetData ([A1, ..., An]
[, COMPONENT=value] [, FRAME_PERIOD=value] IDLffMrSID::Init - Initializes an IDLffMrSID object containing the
image data from a MrSID image file.
[, /ORDER] [, TILE_INDEX=value]
Result = OBJ_NEW('IDLffMrSID', Filename
IDLffMJPEG2000::SetProperty - Sets object properties for a file [, PROPERTY=value])
that is open for writing.
Obj->[IDLffMJPEG2000::]SetProperty IDLffShape - Contains geometry, connectivity and attributes for
graphics primitives accessed from ESRI Shapefiles. No superclass.
[, PROPERTY=value] No subclasses.
IDLffMJPEG2000::StartSequentialReading - Initiates a Properties: [, /DBF_ONLY{Init}]
sequential playback of a large number of frames. [, ENTITY_TYPE{Init}='Value'] [, /UPDATE{Init}]
Result = Obj->
IDLffShape::AddAttribute - Adds an attribute to a shapefile.
[IDLffMJPEG2000::]StartSequentialReading
Obj->[IDLffShape::]AddAttribute, Name, Type, Width
([, COMPONENT=value] [, DISCARD_LEVELS=value]
[, PRECISION=integer]
[, MAX_LAYERS=value] [, N_COMPONENTS=value]
[,/ ORDER] [, REGION=vector] [, /RGB] IDLffShape::Cleanup - Performs all cleanup on a Shapefile object.
[, START_FRAME_NUMBER=value] OBJ_DESTROY, Obj or Obj->[IDLffShape::]Cleanup
[, STOP_FRAME_NUMBER=value]
IDLffShape::Close - Closes a Shapefile.
[, STOP_FRAME_NUMBER=value]
Obj->[IDLffShape::]Close
[, TILE_INDEX=value] )
IDLffShape::DestroyEntity - Frees memory associated with the
entity structure.
Obj->[IDLffShape::]DestroyEntity, Entity

Objects IDL Quick Reference


Alphabetical List of IDL Routines 85

IDLffShape::GetAttributes - Retrieves the attributes for the enti- IDLffXMLDOMAttr::SetValue - Sets the attribute node’s value.
ties you specify from a Shapefile. Obj->[IDLffXMLDOMAttr::]SetValue, Value
Result = Obj->[IDLffShape::]GetAttributes([Index]
[, /ALL] [, /ATTRIBUTE_STRUCTURE] ) IDLffXMLDOMCDATASection - Used to escape blocks of text in
an XML document containing text that would otherwise be
IDLffShape::GetEntity - Returns an array of entity structures from regarded as market. Subclass of IDLffXMLDOMNode.,
a Shapefile. IDLffXMLDOMCharacterData, and IDLffXMLDOMText.

Result = Obj->[IDLffShape::]GetEntity( [Index] [, /ALL] IDLffXMLDOMCDATASection::Cleanup - Destroys both the


accessing object in the IDL tree and any objects created by that
[, /ATTRIBUTES] ) object; does not modify the actual DOM tree. Should not be sub-
classed.
IDLffShape::GetProperty - Returns the values of properties asso-
ciated with a Shapefile object. OBJ_DESTROY, Obj
Obj->[IDLffShape::]GetProperty IDLffXMLDOMCharacterData - Extends the IDLffXMLDOM
[, ATTRIBUTE_INFO=variable] class with methods for accessing character data in the DOM tree.
Subclass of IDLffXMLDOMNode.
[, ATTRIBUTE_NAMES=variable]
[, ENTITY_TYPE=variable] [, FILENAME=variable] IDLffXMLDOMCharacterData::AppendData - Appends a
string to the node’s character data.
[, IS_OPEN=variable] [, N_ATTRIBUTES=variable]
Obj->[IDLffXMLDOMCharacterData::]AppendData,
[, N_ENTITIES=variable] [, N_RECORDS=variable]
String
IDLffShape::Init - Initializes or constructs a Shapefile object.
IDLffXMLDOMCharacterData::Cleanup - Destroys both the
Result = OBJ_NEW(‘IDLffShape’ [, Filename] accessing object in the IDL tree and any objects created by that
[, PROPERTY=value]) object; does not modify the actual DOM tree. Should not be sub-
classed.
IDLffShape::Open - Opens a specified Shapefile. OBJ_DESTROY, Obj
Result = Obj->[IDLffShape::]Open( ‘Filename’
[, /DBF_ONLY] [, /UPDATE] IDLffXMLDOMCharacterData::DeleteData - Deletes a num-
ber of characters from the node’s character data, starting at an off-
[, ENTITY_TYPE=’value’]) set.
IDLffShape::PutEntity - Inserts an entity into the Shapefile object. Obj->[IDLffXMLDOMCharacterData::]DeleteData,
Obj->[IDLffShape::]PutEntity, Data Offset, Count

IDLffShape::SetAttributes - Modifies the attributes for a speci- IDLffXMLDOMCharacterData::GetData - Returns the node’s
fied entity in a Shapefile object. character data.

Obj->[IDLffShape::]SetAttributes, Index, Attribute_Num, Result = Obj->


Value [IDLffXMLDOMCharacterData::]GetData()
or IDLffXMLDOMCharacterData::GetLength - Returns the
Obj->[IDLffShape::]SetAttributes, Index, Attributes number of characters in the node.
Result =
IDLffXMLDOM Classes - Represents classes that provide support
for IDL’s XML Document Object Model (DOM). Obj->[IDLffXMLDOMCharacterData::]GetLength()
IDLffXMLDOMAttr - Represents an attribute that is a part of an ele- IDLffXMLDOMCharacterData::InsertData - Inserts a string
ment object in an XML document. Subclass of IDLffXMLDOMN- in the node’s character data, starting at an offset.
ode. Obj->[IDLffXMLDOMCharacterData::]InsertData, Offset,
IDLffXMLDOMAttr:Cleanup - Destroys both the accessing object String
in the IDL tree and any objects created by that object; does not
modify the actual DOM tree. Should not be subclassed. IDLffXMLDOMCharacterData::ReplaceData - Replaces a
OBJ_DESTROY, Obj number of characters, starting at an offset in the node’s character
data, with a string.
IDLffXMLDOMAttr::GetName - Returns the attribute node’s Obj->[IDLffXMLDOMCharacterData::]ReplaceData,
name.
Offset, Count, String
Result = Obj->[IDLffXMLDOMAttr::]GetName()
IDLffXMLDOMCharacterData::SetData - Sets the node’s
IDLffXMLDOMAttr::GetSpecified - Returns a scalar integer character data to a string
indicating how the attribute node’s value was set.
Obj->[IDLffXMLDOMCharacterData::]SetData, String
Result = Obj->[IDLffXMLDOMAttr::]GetSpecified()
IDLffXMLDOMCharacterData::SubstringData - Returns a
IDLffXMLDOMAttr::GetValue - Returns the attribute node’s string composed of a substring of the node’s character data.
value.
Result = Obj->[IDLffXMLDOMCharacterData::]
Result = Obj->[IDLffXMLDOMAttr::]GetValue() SubstringData (Offset, Count)

IDL Quick Reference


86 Alphabetical List of IDL Routines

IDLffXMLDOMComment - Represents the content of a comment IDLffXMLDOMDocument::CreateTextNode - Creates and


(characters between "<!--" and "-->!") in an XML document. Sub- fills a text node owned by the XML document.
class of IDLffXMLDOMCharacterData and IDLffXMLDOMText.
Result = Obj->[IDLffXMLDOMDocument::]
IDLffXMLDOMComment::Cleanup - Destroys both the access- CreateTextNode(String)
ing object in the IDL tree and any objects created by that object;
does not modify the actual DOM tree. Should not be subclassed. IDLffXMLDOMDocument::CreateTreeWalker - Creates an
OBJ_DESTROY, Obj instance of an IDLffXMLDOMTreeWalker object.
Result = Obj->[IDLffXMLDOMDocument::]
IDLffXMLDOMDocument - Represents the entire XML document
as the document tree’s root and by providing primary access to the CreateTreeWalker(RootNode [, FILTER_NAME=string]
document’s data. Subclass of IDLffXMLDOMNode. [, FILTER_USERDATA=variable]
Properties: [, NODE_DESTRUCTION_POLICY{Get, [, WHAT_TO_SHOW=value])
Init, Set}=0 | 1]
IDLffXMLDOMDocument::GetDoctype - Creates an instance
Destroys both the accessing object in the IDL tree and any objects created of IDLffXMLDOMDocumentType.
by that object; does not modify the actual DOM tree.
Result = Obj->[IDLffXMLDOMDocument::]
OBJ_DESTROY, Obj
GetDoctype()
or
Obj->[IDLffXMLDOMDocument::]Cleanup IDLffXMLDOMDocument::GetDocumentElement - Cre-
ates an instance of IDLffXMLDOMElement.
IDLffXMLDOMDocument::CreateAttribute - Creates and Result = Obj->[IDLffXMLDOMDocument::]
names an attribute node owned by the XML document.
GetDocumentElement()
Result = Obj->[IDLffXMLDOMDocument::]
CreateAttribute(Name) IDLffXMLDOMDocument::GetElementsByTagName -
Creates an IDLffXMLDOMNodeList object containing all element nodes
IDLffXMLDOMDocument::CreateCDATASection - Cre- in the XML document with the specified tag name.
ates and fills a CDATASection node owned by the XML document.
Result = Obj->[IDLffXMLDOMDocument::]
Result = Obj->[IDLffXMLDOMDocument::]
GetElementsByTagName(Tagname)
CreateCDATASection(String)
IDLffXMLDOMDocument::Init - Initializes the object.
IDLffXMLDOMDocument::CreateComment - Creates and
fills a comment node owned by the XML document. Obj = OBJ_NEW('IDLffXMLDOMDocument'
Result = Obj->[IDLffXMLDOMDocument::] [, /EXCLUDE_IGNORABLE_WHITESPACE]
CreateComment, String) [,/EXPAND_ENTITY_REFERENCES]
[, FILENAME=string | STRING=string] [,
IDLffXMLDOMDocument::CreateDocumentFragment - MSG_ERROR=string] [, MSG_FATAL=string] [,
Creates a document fragment node owned by the XML document. MSG_WARNING=string] [, /QUIET]
Result = Obj->[IDLffXMLDOMDocument::] [, SCHEMA_CHECKING=value]
CreateDocumentFragment() [, VALIDATION_MODE=value])
IDLffXMLDOMDocument::CreateElement - Creates and or
names with a tag name an element node owned by the XML docu- Result = Obj->[IDLffXMLDOMDocument::]Init(
ment.
[, /EXCLUDE_IGNORABLE_WHITESPACE]
Result = Obj->[IDLffXMLDOMDocument::] [, /EXPAND_ENTITY_REFERENCES]
CreateElement(TagName) [, FILENAME=string | STRING=string] [,
IDLffXMLDOMDocument::CreateEntityReference - Cre- MSG_ERROR=string] [, MSG_FATAL=string] [,
ates and names an entity reference node owned by the XML docu- MSG_WARNING=string] [, /QUIET]
ment.
[, SCHEMA_CHECKING=value]
Result = Obj->[IDLffXMLDOMDocument::]
[, VALIDATION_MODE=value] )
CreateEntityReference(Name)
(Only in a subclass's Init method)
IDLffXMLDOMDocument::CreateNodeIterator - Creates
and names an instance of an IDLffXMLDOMNoteIterator object. IDLffXMLDOMDocument::Load - Loads and parses XML data
from a specified source; creates a DOM document tree (accessed
Result = Obj->[IDLffXMLDOMDocument::] through this object) from the data.
CreateNodeIterator(Name [, FILTER_NAME=string] Obj->[IDLffXMLDOMDocument::]Load
[, FILTER_USERDATA=variable] [, /EXCLUDE_IGNORABLE_WHITESPACE]
[, WHAT_TO_SHOW=value]) [, /EXPAND_ENTITY_REFERENCES]
IDLffXMLDOMDocument::CreateProcessingInstruction - [, FILENAME=string | STRING=string][,
Creates and stores two strings in a ProcessingInstruction node owned by MSG_ERROR=string] [, MSG_FATAL=string] [,
the XML document. MSG_WARNING=string] [, /QUIET]
Result = Obj->[IDLffXMLDOMDocument::] [, SCHEMA_CHECKING=value]
CreateProcessingInstruction( Target, Data ) [, VALIDATION_MODE=value]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 87

IDLffXMLDOMDocument::Save - Serializes the current DOM IDLffXMLDOMElement::GetTagName - Returns the ele-


document and writes it to an output source. ment’s name.
Obj->[IDLffXMLDOMDocument::]Save Result = Obj->[IDLffXMLDOMElement::]GetTagName()
[, ENCODING=string]
IDLffXMLDOMElement::RemoveAttribute - Removes the
[, /EXPAND_ENTITY_REFERENCES] named attribute from the element node.
[, FILENAME=string | STRING=variable][, Result = Obj->[IDLffXMLDOMElement::]
/PRETTY_PRINT] RemoveAttribute(Name)
IDLffXMLDOMDocumentFragment - References a document IDLffXMLDOMElement::RemoveAttributeNode -
fragment node. Subclass of IDLffXMLDOMNode.
Removes the named attribute node from the element node.
IDLffXMLDOMDocumentFragment::Cleanup - Destroys Result = Obj->[IDLffXMLDOMElement::]
both the accessing object in the IDL tree and any objects created by
that object; does not modify the actual DOM tree. Should not be RemoveAttributeNode(OldAttr)
subclassed.
IDLffXMLDOMElement::SetAttribute - Adds and sets a new
OBJ_DESTROY, Obj attribute to the element node.
IDLffXMLDOMDocumentType - References a DocumentType Result = Obj->[IDLffXMLDOMElement::]
node. Subclass of IDLffXMLDOMNode. SetAttribute(Name, Value)
IDLffXMLDOMDocumentType:Cleanup - Destroys both the
accessing object in the IDL tree and any objects created by that IDLffXMLDOMElement::SetAttributeNode - Adds a new
object; does not modify the actual DOM tree. Should not be sub- attribute to the element node.
classed. Result = Obj->[IDLffXMLDOMElement::]
OBJ_DESTROY, Obj SetAttributeNode(NewAttr)
IDLffXMLDOMDocumentType::GetEntities - Returns the IDLffXMLDOMEntity - References a parsed or unparsed entity in an
external and internal entities declared in the DTD. XML document. Subclass of IDLffXMLDOMNode.
Result = Obj->[IDLffXMLDOMDocumentType::] IDLffXMLDOMEntity::Cleanup - Destroys both the accessing
GetEntities() object in the IDL tree and any objects created by that object; does
not modify the actual DOM tree. Should not be subclassed.
IDLffXMLDOMDocumentType::GetName - Returns the OBJ_DESTROY, Obj
DTD’s name.
Result = Obj->[IDLffXMLDOMDocumentType::] IDLffXMLDOMEntity::GetNotationName - Returns the nota-
tion’s name for the entity.
GetName()
Result = Obj->[IDLffXMLDOMEntity::]
IDLffXMLDOMDocumentType::GetNotations - Returns the GetNotationName()
notations declared in the DTD.
Result = Obj->[IDLffXMLDOMDocumentType::] IDLffXMLDOMEntity::GetPublicId - Returns the entity’s pub-
lic ID if specified.
GetNotations()
Result = Obj->[IDLffXMLDOMEntity::]GetPublicId()
IDLffXMLDOMElement - References an element node. Subclass of
IDLffXMLDOMNode. IDLffXMLDOMEntity::GetSystemId - Returns the entity’s sys-
tem ID if specified.
IDLffXMLDOMElement::Cleanup - Destroys both the accessing
object in the IDL tree and any objects created by that object; does Result = Obj->[IDLffXMLDOMEntity::]GetSystemId()
not modify the actual DOM tree. Should not be subclassed.
IDLffXMLDOMEntityReference - References an entity refer-
OBJ_DESTROY, Obj ence node in an XML document. Subclass of IDLffXMLDOMN-
ode.
IDLffXMLDOMElement::GetAttribute - Returns the value of
the named attribute. IDLffXMLDOMEntityReference::Cleanup - Destroys both
the accessing object in the IDL tree and any objects created by that
Result = Obj->[IDLffXMLDOMElement::]GetAttribute object; does not modify the actual DOM tree. Should not be sub-
(Name) classed.

IDLffXMLDOMElement::GetAttributeNode - Creates an OBJ_DESTROY, Obj


named IDLffXMLDOMAttr object. IDLffXMLDOMNamedNodeMap - Container for nodes that uses
Result = Obj->[IDLffXMLDOMElement::] node names for access. Subclass of IDLffXMLDOMNode.
GetAttributeNode(Name) IDLffXMLDOMNamedNodeMap::Cleanup - Destroys both
the accessing object in the IDL tree and any objects created by that
IDLffXMLDOMElement::GetElementsByTagName - Cre- object; does not modify the actual DOM tree. Should not be sub-
ates an IDLffXMLDOMNodeList object containing all element classed.
nodes in the XML document with the specified tag name.
OBJ_DESTROY, Obj
Result = Obj->[IDLffXMLDOMElement::]
GetElementsByTagName(TagName) IDLffXMLDOMNamedNodeMap::GetLength - Returns the
number of nodes in the named node map.
Result = Obj->[IDLffXMLDOMNamedNodeMap::]
GetLength()

IDL Quick Reference


88 Alphabetical List of IDL Routines

IDLffXMLDOMNamedNodeMap::GetNamedItem - Returns IDLffXMLDOMNode::GetNodeValue - Returns the node’s


an object reference to the node that contains the named item. value, depending on the subclass type.
Result = Obj->[IDLffXMLDOMNamedNodeMap::] Result = Obj->[IDLffXMLDOMNode::]GetNodeValue()
GetNamedItem(Name)
IDLffXMLDOMNode::GetOwnerDocument - Returns an
IDLffXMLDOMNamedNodeMap::Item - Returns an object ref- object reference to the IDLffXMLDOMDocument used to create
erence to the node that contains the indexed item. the node.
Result = Obj->[IDLffXMLDOMNamedNodeMap::] Result = Obj->[IDLffXMLDOMNode::]
Item(Index) GetOwnerDocument()

IDLffXMLDOMNamedNodeMap::RemoveNamedItem - IDLffXMLDOMNode::GetParentNode - Creates an


IDLffXMLDOM node that refers to the parent in the DOM tree.
Removes the specified node from the named node map.
Result = Obj->[IDLffXMLDOMNode::]GetParentNode()
Result = Obj->[IDLffXMLDOMNamedNodeMap::]
RemoveNamedItem(Name) IDLffXMLDOMNode::GetPreviousSibling - Creates an
IDLffXMLDOM node that refers to the previous sibling in the
IDLffXMLDOMNamedNodeMap::SetNamedItem - Adds DOM tree.
and names a node to the named node map, replacing an existing Result = Obj->[IDLffXMLDOMNode::]
node with the specified name if necessary.
GetPreviousSibling()
Result = Obj->[IDLffXMLDOMNamedNodeMap::]
SetNamedItem(Name) IDLffXMLDOMNode::HasChildNodes - Returns a value indi-
cating whether the calling node has children.
IDLffXMLDOMNode - Abstract superclass for other IDLffXML- Result = Obj->[IDLffXMLDOMNode::]HasChildNodes()
DOM node classes. No superclasses.
IDLffXMLDOMNode::AppendChild - Adds a new node at the IDLffXMLDOMNode::InsertBefore - Inserts a new node into
end of the calling node’s children list. the calling node’s children before a reference node.
Result = Obj->[IDLffXMLDOMNode::] Result = Obj->[IDLffXMLDOMNode::]
AppendChild(NewChild) InsertBefore(NewChild [, RefChild])

IDLffXMLDOMNode::Cleanup - Destroys both the accessing IDLffXMLDOMNode::RemoveChild - Removes an existing


object in the IDL tree and any objects created by that object; does node from the calling node’s child list.
not modify the actual DOM tree. Should not be subclassed. Result = Obj->[IDLffXMLDOMNode::]RemoveChild
OBJ_DESTROY, Obj (OldChild)
IDLffXMLDOMNode::CloneNode - Creates a copy of the call- IDLffXMLDOMNode::ReplaceChild - Replaces an existing
ing node; the cloned node has no parent. child node with a new node in the calling node’s child list.
Result = Obj->[IDLffXMLDOMNode::] Result = Obj->[IDLffXMLDOMNode::]
CloneNode([, DEEP=value]) ReplaceChild(NewChild, OldChild)
IDLffXMLDOMNode::GetAttributes - Creates a named node IDLffXMLDOMNode::SetNodeValue - Sets the node’s value to
map used to access an element object’s attributes. the contents of a string.
Result = Obj->[IDLffXMLDOMNode::]GetAttributes() Result = Obj->[IDLffXMLDOMNode::]
IDLffXMLDOMNode::GetChildNodes - Creates a node list SetNodeValue(NodeValue)
used to access the calling node’s children.
IDLffXMLDOMNodeIterator - Allows iterative navigation of an
Result = Obj->[IDLffXMLDOMNode::]GetChildNodes() IDLffXMLDOM tree. No superclasses.
IDLffXMLDOMNode::GetFirstChild - Creates an IDLffXML- IDLffXMLDOMNodeIterator::Cleanup - Destroys both the
DOM node that refers to the first child in the DOM tree. node-iterator object and any objects created by that object; does not
modify the actual DOM tree. Should not be subclassed.
Result = Obj->[IDLffXMLDOMNode::]GetFirstChild()
OBJ_DESTROY, Obj
IDLffXMLDOMNode::GetLastChild - Creates an IDLffXML-
DOM node that refers to the last child in the DOM tree. IDLffXMLDOMNodeIterator::NextNode - Returns an object
reference to the DOM tree node that appears after the iterator’s cur-
Result = Obj->[IDLffXMLDOMNode::]GetLastChild() rent position in document-order traversal.
IDLffXMLDOMNode::GetNextSibling - Creates an Result =
IDLffXMLDOM node that refers to the next sibling in the DOM Obj->[IDLffXMLDOMNodeIterator::]NextNode()
tree.
Result = Obj->[IDLffXMLDOMNode::]GetNextSibling() IDLffXMLDOMNodeIterator::PreviousNode - Returns an
object reference to the DOM tree node that appears before the itera-
IDLffXMLDOMNode::GetNodeName - Returns the node’s tor’s current position in document-order traversal.
name, depending on the subclass type. Result =
Result = Obj->[IDLffXMLDOMNode::]GetNodeName() Obj->[IDLffXMLDOMNodeIterator::]PreviousNode()
IDLffXMLDOMNode::GetNodeType - Returns the node’s type.
Result = Obj->[IDLffXMLDOMNode::]GetNodeType()

Objects IDL Quick Reference


Alphabetical List of IDL Routines 89

IDLffXMLDOMNodeList - Container for nodes. No superclasses. IDLffXMLDOMText::SplitText - Breaks a text node into two sib-
ling nodes in the same tree, splitting the text at the specified offset.
IDLffXMLDOMNodeList::Cleanup - Destroys both the access-
ing object in the IDL tree and any objects created by that object; Result = Obj->[IDLffXMLDOMText::]SplitText(Offset)
does not modify the actual DOM tree. Should not be subclassed.
IDLffXMLDOMTreeWalker - Allows tree-walking navigation of an
OBJ_DESTROY, Obj IDLffXMLDOM tree. No superclasses.
IDLffXMLDOMNodeList::GetLength - Returns the number of IDLffXMLDOMTreeWalker::Cleanup - Destroys both the node-
nodes in the node list. iterator object and any objects created by that object; does not mod-
Result = Obj->[IDLffXMLDOMNodeList::]GetLength() ify the actual DOM tree. Should not be subclassed.
OBJ_DESTROY, Obj
IDLffXMLDOMNodeList::Item - Returns an object reference to
the node that contains the indexed item. IDLffXMLDOMTreeWalker::FirstChild - Returns an object ref-
Result = Obj->[IDLffXMLDOMNodeList::]Item(Index) erence to the DOM tree node that is the first child of the node to
which the walker is currently pointing.
IDLffXMLDOMNotation - References a notation in the DTD. Sub- Result = Obj->[IDLffXMLDOMTreeWalker::]FirstChild()
class of IDLffXMLDOMNode.
IDLffXMLDOMTreeWalker::GetCurrentNode - Returns an
IDLffXMLDOMNotation::Cleanup - Destroys both the access- object reference to the DOM tree node to which the walker is cur-
ing object in the IDL tree and any objects created by that object; rently pointing.
does not modify the actual DOM tree. Should not be subclassed.
Result =
OBJ_DESTROY, Obj
Obj->[IDLffXMLDOMTreeWalker::]GetCurrentNode()
IDLffXMLDOMNotation::GetPublicID - Returns the notation’s
public ID. IDLffXMLDOMTreeWalker::LastChild - Returns an object ref-
erence to the DOM tree node that is the last child of the node to
Result = Obj->[IDLffXMLDOMNotation::]GetPublicID() which the walker is currently pointing.
IDLffXMLDOMNotation::GetSystemID - Returns the nota- Result = Obj->[IDLffXMLDOMTreeWalker::]LastChild()
tion’s system ID.
IDLffXMLDOMTreeWalker::NextNode - Returns an object ref-
Result = Obj->[IDLffXMLDOMNotation::]GetSystemID() erence to the DOM tree node visited next after the walker’s current
node in document-order traversal.
IDLffXMLDOMProcessingInstruction - References a process-
ing instruction node in the XML document. Subclass of Result = Obj->[IDLffXMLDOMTreeWalker::]NextNode()
IDLffXMLDOMNode.
IDLffXMLDOMTreeWalker::NextSibling - Returns an object
IDLffXMLDOMProcessingInstruction::Cleanup - Destroys reference to the DOM tree node that is the next sibling of the node
both the accessing object in the IDL tree and any objects created by to which the walker is currently pointing.
that object; does not modify the actual DOM tree. Should not be
subclassed. Result =
OBJ_DESTROY, Obj Obj->[IDLffXMLDOMTreeWalker::]NextSibling()

IDLffXMLDOMProcessingInstruction::GetData - Returns IDLffXMLDOMTreeWalker::ParentNode - Returns an object


reference to the DOM tree node that is the parent of the node to
the content of the processing instruction. which the walker is currently pointing.
Result = Obj->[IDLffXMLDOMProcessingInstruction::] Result =
GetData() Obj->[IDLffXMLDOMTreeWalker::]ParentNode()
IDLffXMLDOMProcessingInstruction::GetTarget - IDLffXMLDOMTreeWalker::PreviousNode - Returns an
Returns the target of the processing instruction. object reference to the DOM tree node visited before the walker’s
Result = Obj->[IDLffXMLDOMProcessingInstruction::] current node in document-order traversal.
GetTarget() Result =
Obj->[IDLffXMLDOMTreeWalker::]PreviousNode()
IDLffXMLDOMProcessingInstruction::SetData - Sets the
content of the processing instruction. IDLffXMLDOMTreeWalker::PreviousSibling - Returns an
Obj->[IDLffXMLDOMProcessingInstruction::]SetData, object reference to the DOM tree node that is the previous sibling of
the node to which the walker is currently pointing.
Content
Result =
IDLffXMLDOMText - References a text node in the XML document. Obj->[IDLffXMLDOMTreeWalker::]PreviousSibling()
Subclass of IDLffXMLDOMNode and IDLffXMLDOMCharacter-
Data. IDLffXMLDOMTreeWalker::SetCurrentNode - Sets the
IDLffXMLDOMText::Cleanup - Destroys both the accessing walker’s current node to the specified node.
object in the IDL tree and any objects created by that object; does Obj->
not modify the actual DOM tree. Should not be subclassed. [IDLffXMLDOMTreeWalker::]SetCurrentNode(Current
OBJ_DESTROY, Obj Node)
IDLffXMLDOMText::IsIgnorableWhitespace - Indicates
whether the text node contains ignorable whitespace.
Result = Obj->[IDLffXMLDOMText::]
IsIgnorableWhitespace()

IDL Quick Reference


90 Alphabetical List of IDL Routines

IDLffXMLSAX - Represents an XML SAX Level 2 parser. No super- IDLffXMLSAX::ExternalEntityDecl - Called when the parser
classes. In order to use this class, you must write your own subclass. detects an <!ENTITY ...> declarations in the DTD for a parsed
external entity.
Properties: [, FILENAME{Get}=variable]
[, /NAMESPACE_PREFIXES{Get, Init, Set}] Obj->[IDLffXMLSAX::]ExternalEntityDecl, Name,
[, PARSER_LOCATION{Get}=variable] PublicID, SystemID
[, PARSER_PUBLICID{Get}=variable] IDLffXMLSAX::FatalError - Called when the parser detects a fatal
[, PARSER_URI{Get}=variable] error.
[, SCHEMA_CHECKING{Get, Init, Set}=[0,1,2]] Obj->[IDLffXMLSAX::]FatalError, SystemID,
[, VALIDATION_MODE{Get, Init, Set}=[0,1,2]] LineNumber, ColumnNumber, Message
IDLffXMLSAX::AttributeDecl - Called when the parser detects an IDLffXMLSAX::GetProperty - Used to get the values of various
<!ATTLIST ...> declaration in a DTD. properties of the parser.
Obj->[IDLffXMLSAX::]AttributeDecl, eName, aName, Obj->[IDLffXMLSAX::]GetProperty
Type, Mode, Value [, PROPERTY=variable]
IDLffXMLSAX::Characters - Called when the parser detects text IDLffXMLSAX::IgnorableWhitespace - Called when the
in the parsed document. parser detects whitespace that separates elements in an element
content model.
Obj->[IDLffXMLSAX::]Characters, Chars
Obj->[IDLffXMLSAX::]IgnorableWhitespace, Chars
IDLffXMLSAX::Cleanup - Performs all cleanup on the object.
IDLffXMLSAX::InitI - Initializes an XML parser object.
OBJ_DESTROY, Obj
Obj = OBJ_NEW('IDLffXMLSAX' [, PROPERTY=value])
or
or Result = Obj->[IDLffXMLSAX::]Init(
Obj->[IDLffXMLSAX::]Cleanup
[PROPERTY=value])
IDLffXMLSAX::Comment - Called when the parser detects a com-
ment section of the form <!-- ... -->. IDLffXMLSAX::InternalEntityDecl - Called when the parser
detects an <!ENTITY ...> declaration in a DTD for (parsed) internal
Obj->[IDLffXMLSAX::]Comment, Comment entities.
IDLffXMLSAX::ElementDecl - Called when the parser detects an Obj->[IDLffXMLSAX::]InternalEntitydecl, Name, Value
<!ELEMENT ...> declaration in the DTD.
IDLffXMLSAX::NotationDecl - Called when the parser detects a
Obj->[IDLffXMLSAX::]ElementDecl, Name, Model <!NOTATION ...> declaration in a DTD.
IDLffXMLSAX::EndCDATA - Called when the parser detects the Obj->[IDLffXMLSAX::]NotationDecl, Name, PublicID,
end of a <![CDATA[...]]> text section. SystemID
Obj->[IDLffXMLSAX::]EndCDATA
IDLffXMLSAX::ParseFile - Parses the specified XML file.
IDLffXMLSAX::EndDocument - Called when the parser detects Obj->[IDLffXMLSAX::]ParseFile, Input [, /URL]
the end of the XML document.
[, /XML_STRING]
Obj->[IDLffXMLSAX::]EndDocument
IDLffXMLSAX::ProcessingInstruction - Called when the
IDLffXMLSAX::EndDTD - Called when the parser detects the end parser detects a processing instruction.
of a Document Type Definition (DTD).
Obj->[IDLffXMLSAX::]ProcessingInstruction, Target,
Obj->[IDLffXMLSAX::]EndDTD Data
IDLffXMLSAX::EndElement - Called when the parser detects the IDLffXMLSAX::SetProperty - Used to set the values of various
end of an element. properties of the parser.
Obj->[IDLffXMLSAX::]EndElement, URI, Local, qName Obj->[IDLffXMLSAX::]SetProperty
IDLffXMLSAX::EndEntity - Called when the parser detects the [, PROPERTY=value]
end of an internal or external entity expansion.
IDLffXMLSAX::SkippedEntity - Called when the parser skips an
Obj->[IDLffXMLSAX::]EndEntity, Name entity and validation is not being performed.
IDLffXMLSAX::EndPrefixMapping - Called when a previously Obj->[IDLffXMLSAX::]SkippedEntity, Name
declared prefix mapping goes out of scope.
IDLffXMLSAX::StartCDATA - Called when the parser detects the
Obj->[IDLffXMLSAX::]EndPrefixMapping, Prefix beginning of a <![CDATA[...]]> text section.
IDLffXMLSAX::Error procedure - Called when the parser Obj->[IDLffXMLSAX::]StartCDATA
detects and error that is not expected to be fatal.
IDLffXMLSAX::StartDocument - Called when the parser begins
Obj->[IDLffXMLSAX::]Error, SystemID, LineNumber, processing a document, and before any data is processed.
ColumnNumber, Message Obj->[IDLffXMLSAX::]StartDocument

Objects IDL Quick Reference


Alphabetical List of IDL Routines 91

IDLffXMLSAX::StartDTD - Called when the parser detects the IDLgrAxis Properties - continued
beginning of a Document Type Definition (DTD). [, TEXTBASELINE{Get, Init, Set}=vector]
Obj->[IDLffXMLSAX::]StartDTD, Name, PublicID, [, TEXTPOS{Get, Init, Set}={0 | 1}]
SystemID [, TEXTUPDIR{Get, Init, Set}=vector] [, THICK{Get,
IDLffXMLSAX::StartElement - Called when the parser detects Init, Set}=points{1.0 to 10.0}] [, TICKDIR{Get, Init,
the beginning of an element. Set}={0 | 1}] [, TICKFORMAT{Get, Init,
Obj->[IDLffXMLSAX::]StartElement, URI, Local, Set}=string or array of strings]
qName [, attName, attValue] [, TICKFRMTDATA{Get, Init, Set}=value]
IDLffXMLSAX::StartEntity - Called when the parser detects the [, TICKINTERVAL{Get, Init, Set}=value]
start of an internal or external entity expansion. [, TICKLAYOUT{Get, Init, Set}=scalar]
Obj->[IDLffXMLSAX::]StartEntity, Name [, TICKLEN{Get, Init, Set}=value] [, TICKTEXT{Get,
Init, Set}=objref or vector] [, TICKUNITS{Get, Init,
IDLffXMLSAX::StartPrefixmapping - Called when the parser
detects the beginning of a namespace declaration. Set}=string or a vector of strings] [, TICKVALUES{Get,
Obj->[IDLffXMLSAX::]StartPrefixmapping, Prefix, URI Init, Set}=vector] [, TITLE{Get, Init, Set}=objref]
[, /USE_TEXT_COLOR{Get, Init, Set}]
IDLffXMLSAX::StopParsing - Used during a parse operation to [, XCOORD_CONV{Get, Init, Set}=vector]
halt the operation and cause the ParseFile method to return.
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get,
Obj->[IDLffXMLSAX::]StopParsing
Init, Set}=vector] [, YRANGE{Get}=variable]
IDLffXMLSAX::UnparsedEntityDecl - Called when the parser [, ZCOORD_CONV{Get, Init, Set}=vector]
detects an <!ENTITY ...> declaration that includes the NDATA [, ZRANGE{Get}=variable]
keyword, indicating that the entity is not meant to be parsed.
Obj->[IDLffXMLSAX::]UnparsedEntityDec, Name, IDLgrAxis::Cleanup - Performs all cleanup on the object.
PublicID, SystemID, Notation OBJ_DESTROY, Obj or Obj->[IDLgrAxis::]Cleanup
IDLffXMLSAX::Warning - Called when the parser detects a prob- IDLgrAxis::GetCTM - Returns the 4 x 4 graphics transform matrix
lem during processing. from the current object upward through the graphics tree.
Obj->[IDLffXMLSAX::]Warning, SystemID, Result = Obj->[IDLgrAxis::]GetCTM(
LineNumber, ColumnNumber, Message [, DESTINATION=objref] [, PATH=objref(s)]
[, TOP=objref] )
IDLgrAxis - Represents a single vector that may include a set of tick
marks, tick labels, and a title. IDLgrAxis::GetProperty - Retrieves the value of a property or
Properties: [, ALL{Get}=variable] group of properties for the axis.
[,ALPHA_CHANNEL{Get, Init, Set}=value] Obj->[IDLgrAxis::]GetProperty [, PROPERTY=variable]
[, AM_PM{Get, Init, Set}=array] IDLgrAxis::Init - Initializes an axis object.
[, CLIP_PLANES{Get, Init, Set}=array] [, COLOR{Get,
Obj = OBJ_NEW('IDLgrAxis' [, Direction]
Init, Set}=index or RGB_vector]
[, PROPERTY=value]) or
[, CRANGE{Get}=variable] [, DAYS_OF_WEEK{Get,
Result = Obj->[IDLgrAxis::]Init( [Direction]
Init, Set}=array] [, DEPTH_TEST_DISABLE{Get, Init,
[, PROPERTY=value])
Set}={0 | 1 | 2}] [, DEPTH_TEST_FUNCTION{Get, Init,
Set}={0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8}] IDLgrAxis::SetProperty - Sets the value of a property or group of
properties for the axis.
[, DEPTH_WRITE_DISABLE{Get, Init, Set}={0 | 1 | 2}]
[, DIRECTION{Get, Init, Set}=integer] [, /EXACT{Get, Obj->[IDLgrAxis::]SetProperty [, PROPERTY=value]
Init, Set}] [, /EXTEND{Get, Init, Set}] IDLgrBuffer - An in-memory, off-screen destination object.
[, GRIDSTYLE{Get, Init, Set}=integer{0 to 6}or Properties: [, ALL{Get}=variable]
[repeat{1 to 255}, bitmask]] [, /HIDE{Get, Init, Set}] [, COLOR_MODEL{Get, Init}={0 | 1}]
[, LOCATION{Get, Init, Set}=[x, y] or [x, y, z]] [, DIMENSIONS{Get, Init, Set}=[width, height]]
[, /LOG{Get, Init, Set}] [, MAJOR{Get, Init, [, GRAPHICS_TREE{Get, Init, Set}=objref]
Set}=integer] [, MINOR{Get, Init, Set}=integer] [, IMAGE_DATA{Get}=variable] [, N_COLORS{Get,
[, MONTHS{Get, Init, Set}=array] [, /NOTEXT{Get, Init}=integer{2 to 256}] [, PALETTE{Get, Init,
Init, Set}] [, PALETTE{Get, Init, Set}=objref] Set}=objref] [, QUALITY{Get, Init, Set}={0 | 1 | 2}]
[, PARENT{Get}=variable] [, RANGE{Get, Init, [, /REGISTER_PROPERTIES{Get, Init, Set}]
Set}=[min, max]] [, /REGISTER_PROPERTIES{Get, [, RESOLUTION{Get, Init, Set}=[xres, yres]]
Init, Set}] [, SHADER{Get, Init, Set}=objref] [, SCREEN_DIMENSIONS{Get}=variable]
[, SUBTICKLEN{Get, Init, Set}=value] [, UNITS{Get, Init, Set}={0 | 1 | 2 | 3}]
[, TEXTALIGNMENTS{Get, Init, Set}=[horiz{0.0 to [, ZBUFFER_DATA{Get}=variable]
1.0}, vert{0.0 to 1.0}]]

IDL Quick Reference


92 Alphabetical List of IDL Routines

IDLgrBuffer::Cleanup - Performs all cleanup on the object. IDLgrBuffer::Select - Returns a list of objects selected at a speci-
OBJ_DESTROY, Obj or Obj->[IDLgrBuffer::]Cleanup fied location.
Result = Obj->[IDLgrBuffer::]Select(Picture, XY
IDLgrBuffer::Draw - Draws picture to this graphics destination. [, DIMENSIONS=[width, height]] [, /ORDER]
Obj->[IDLgrBuffer::]Draw [, Picture] [, SUB_SELECTION=variable]
[, CREATE_INSTANCE={1 | 2}] [, UNITS={0 | 1 | 2 | 3}])
[, DRAW_INSTANCE={1 | 2}]
IDLgrBuffer::SetProperty - Sets the value of a property or group
IDLgrBuffer::Erase - Erases this graphics destination. of properties for the buffer.
Obj->[IDLgrBuffer::]Erase [, COLOR=index or RGB vector] Obj->[IDLgrBuffer::]SetProperty[, PROPERTY=value]
IDLgrBuffer::GetContiguousPixels - Returns an array of long IDLgrClipboard - A destination object representing the native clip-
integers whose length is equal to the number of colors available in board.
the index color mode (value of the N_COLORS property).
Properties: [, ALL{Get}=variable]
Return = Obj->[IDLgrBuffer::]GetContiguousPixels( ) [, COLOR_MODEL{Get, Init}={0 | 1}]
IDLgrBuffer::GetDeviceInfo - Returns information that allows [, DIMENSIONS{Get, Init, Set}=[width, height]]
IDL applications to make decisions for optimal performance. [, GRAPHICS_TREE{Get, Init, Set}=objref]
Obj–>[IDLgrBuffer::]GetDeviceInfo [, ALL=variable] [, N_COLORS{Get, Init}=integer{2 to 256}]
[, MAX_NUM_CLIP_PLANES=variable] [, PALETTE{Get, Init, Set}=objref]
[, MAX_TEXTURE_DIMENSIONS=variable] [, QUALITY{Get, Init, Set}={0 | 1 | 2}]
[MAX_TILE_DIMENSIONS=variable] [, /REGISTER_PROPERTIES{Get, Init, Set}]
[, MAX_VIEWPORT_DIMENSIONS=variable] [, RESOLUTION{Get, Init, Set}=[xres, yres]]
[, NAME=variable] [, NUM_CPUS=variable] [, SCREEN_DIMENSIONS{Get}=variable]
[, VENDOR=variable] [, VERSION=variable] [, UNITS{Get, Init, Set}={0 | 1 | 2 | 3}]
IDLgrBuffer::GetFontnames - Returns the list of available fonts IDLgrClipboard::Cleanup - Performs all cleanup on the object.
that can be used in IDLgrFont objects.
OBJ_DESTROY,Obj or Obj->[IDLgrClipboard::]Cleanup
Return = Obj->[IDLgrBuffer::]GetFontnames(FamilyName
[, IDL_FONTS={0 | 1 | 2 }] [, STYLES=string] ) IDLgrClipboard::Draw - Draws a picture to a graphics destination.
Obj->[IDLgrClipboard::]Draw [, Picture] [, /CMYK]
IDLgrBuffer::GetProperty - Retrieves the value of a property or
group of properties for the buffer. [, FILENAME=string] [, /ISOLATIN1]
Obj->[IDLgrBuffer::]GetProperty [, POSTSCRIPT=value] [, VECT_SHADING={ 0 | 1 } ]
[, PROPERTY=variable] [, VECT_SORTING={ 0 | 1 } ]
[, VECT_TEXT_RENDER_METHOD={ 0 | 1 } ]
IDLgrBuffer::GetTextDimensions - Retrieves the dimensions [, VECTOR={ 0 | 1 } ]
of a text object that will be rendered in the buffer.
Result = Obj->[IDLgrBuffer::]GetTextDimensions( IDLgrClipboard::GetContiguousPixels - Returns array of
long integers whose length is equal to the number of colors avail-
TextObj [, DESCENT=variable] [, PATH=objref(s)] ) able in the index color mode (value of the N_COLORS property).
IDLgrBuffer::Init - Initializes the buffer object. Return = Obj->[IDLgrClipboard::]GetContiguousPixels()
Obj = OBJ_NEW('IDLgrBuffer'[, PROPERTY=value]) IDLgrClipboard::GetDeviceInfo - Returns information that
or Result = Obj->[IDLgrBuffer::]Init( allows IDL applications to make decisions for optimal perfor-
[, PROPERTY=value]) mance.
Obj–>[IDLgrClipboard::]GetDeviceInfo [, ALL=variable]
IDLgrBuffer::PickData - Maps a point in the 2D device space of [, MAX_NUM_CLIP_PLANES=variable]
the buffer to a point in the 3D data space of an object tree.
[, MAX_TEXTURE_DIMENSIONS=variable]
Result = Obj->[IDLgrBuffer::]PickData( View, Object,
[MAX_TILE_DIMENSIONS=variable]
Location, XYZLocation
[, MAX_VIEWPORT_DIMENSIONS=variable]
[, DIMENSIONS=[width,height]] [, PATH=objref(s)]
[, NAME=variable] [, NUM_CPUS=variable]
[, PICK_STATUS=variable])
[, VENDOR=variable] [, VERSION=variable]
IDLgrBuffer::QueryRequiredTiles - Returns an array of named
structures containing information regarding which tile data is IDLgrClipboard::GetFontnames - Returns the list of available
needed for display. Used with a tiled IDLgrImage object. fonts that can be used in IDLgrFont objects.
Result = Obj->[IDLgrBuffer::]QueryRequiredTiles (View, Return = Obj->[IDLgrClipboard::]GetFontnames(
Image [, COUNT=variable] [, ALL_VISIBLE=value] FamilyName [, IDL_FONTS={0 | 1 | 2}]
[, PATH=objref(s)]) [, STYLES=string] )
IDLgrBuffer::Read - Reads an image from a buffer.
Result = Obj->[IDLgrBuffer::]Read( )

Objects IDL Quick Reference


Alphabetical List of IDL Routines 93

IDLgrClipboard::GetProperty - Retrieves the value of a property IDLgrColorbar::ComputeDimensions - Retrieves the dimen-


or group of properties for the clipboard buffer. sions of a colorbar object for the given destination object.
Obj->[IDLgrClipboard::]GetProperty Result = Obj->[IDLgrColorbar::]ComputeDimensions(
[, PROPERTY=variable] DestinationObj [, PATH=objref(s)] )
IDLgrClipboard::GetTextDimensions - Retrieves the dimen- IDLgrColorbar::GetProperty - Retrieves the value of a property
sions of a text object that will be rendered in the clipboard buffer. or group of properties for the colorbar.
Result = Obj->[IDLgrClipboard::]GetTextDimensions( Obj->[IDLgrColorbar::]GetProperty
TextObj [, DESCENT=variable] [, PATH=objref(s)] ) [, PROPERTY=variable]
IDLgrClipboard::Init - Initializes the clipboard object. IDLgrColorbar::Init - Initializes the colorbar object.
Obj = OBJ_NEW('IDLgrClipboard'[, PROPERTY=value]) Obj = OBJ_NEW( 'IDLgrColorbar'[, aRed, aGreen, aBlue]
or Result = Obj->[IDLgrClipboard::]Init( [, PROPERTY=value]) or
[PROPERTY=value]) Result = Obj->[IDLgrColorbar::]Init([aRed, aGreen,
aBlue] [, PROPERTY=value])
IDLgrClipboard::QueryRequiredTiles - Returns an array of
named structures containing information regarding which tile data IDLgrColorbar::SetProperty - Sets the value of a property or
is needed for display. Used with a tiled IDLgrImage object. group of properties for the colorbar.
Result = Obj->[IDLgrClipboard::]QueryRequiredTiles Obj->[IDLgrColorbar::]SetProperty [, PROPERTY=value]
(View, Image [, COUNT=variable]
[, ALL_VISIBLE=value] [, PATH=objref(s)]) IDLgrContour - Draws a contour plot from an array or unstructured
point data. No superclasses. No subclasses.
IDLgrClipboard::SetProperty - Sets the value of a property or Properties: [, ALL{Get}=variable]
group of properties for the clipboard buffer.
[,ALPHA_CHANNEL{Get, Init, Set}=value]
Obj->[IDLgrClipboard::]SetProperty [, AM_PM{Get, Init, Set}=vector of two strings]
[, PROPERTY=value] [, ANISOTROPY{Get, Init, Set}=[x, y, z]]
IDLgrColorbar - Consists of a color-ramp with an optional framing [, C_COLOR{Get, Init, Set}=vector]
box and annotation axis. [, C_FILL_PATTERN{Get, Init, Set}=array of
Properties: [, ALL{Get}=variable] IDLgrPattern objects] [, C_LABEL_INTERVAL{Get,
[, BLUE_VALUES{Get, Init, Set}=vector] Init, Set} =vector] [, C_LABEL_NOGAPS{Get, Init,
[, COLOR{Get, Init, Set}=index or RGB vector] Set}=vector] [, C_LABEL_OBJECTS{Get, Init,
[, DIMENSIONS{Get, Init, Set}=[dx, dy]] Set}=array of object references]
[, GREEN_VALUES{Get, Init, Set}=vector] [, C_LABEL_SHOW{Get, Init, Set}=vector of integers]
[, /HIDE{Get, Init, Set}] [, MAJOR{Get, [, C_LINESTYLE{Get, Init, Set}=array of linestyles]
Init,Set}=integer] [, MINOR{Get, Init, Set}=integer] [, C_THICK{Get, Init, Set}=float array{each element
[, PALETTE{Get, Init, Set}=objref] 1.0 to 10.0}] [, C_USE_LABEL_COLOR{Get, Init,
[, PARENT{Get}=variable] [, RED_VALUES{Get, Init, Set}= vector of values]
Set}=vector] [, SHOW_AXIS{Get, Init, Set}={0 | 1 | 2}] [, C_USE_LABEL_ORIENTATION {Get, Init,
[, /SHOW_OUTLINE{Get, Init, Set}] Set}=vector of values] [, C_VALUE{Get, Init,
[, SUBTICKLEN{Get, Init, Set}=minorTickLength Set}=scalar or vector] [, CLIP_PLANES{Get, Init,
/majorTickLength] [, THICK{Get, Init, Set}=array] [, COLOR{Get, Init, Set}=index or RGB
Set}=points{1.0 to 10.0}] [, /THREED{Get, Init}] vector] [, DATA_VALUES{Get, Init, Set}=vector or 2D
[, TICKFORMAT{Get, Init, Set}=string] array] [, DAYS_OF_WEEK{Get, Init, Set}=vector of
[, TICKFRMTDATA{Get, Init, Set}=value] seven strings] [, DEPTH_OFFSET{Get, Init, Set}=value]
[, TICKLEN{Get, Init, Set}=value] [, TICKTEXT{Get, [, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
Init, Set}=objref(s)] [, TICKVALUES{Get, Init, [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
Set}=vector] [, TITLE{Get, Init, Set}=objref] 3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
[, XCOORD_CONV{Get, Init, Set}=vector] Init, Set}={0 | 1 | 2}] [, /DOUBLE_DATA{Init}]
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get, [, /DOUBLE_GEOM{Init}] [, /DOWNHILL{Get, Init,
Init, Set}=vector] [, YRANGE{Get}=variable] Set}] [, /FILL{Get, Init, Set}] [, GEOM{Get}=variable]
[, ZCOORD_CONV{Get, Init, Set}=vector] [, GEOMX{Init, Set}=vector or 2D array]
[, ZRANGE{Get}=variable] [, GEOMY{Init, Set}=vector or 2D array]
IDLgrColorbar::Cleanup - Performs all cleanup on the object. [, GEOMZ{Init, Set}=scalar, vector, or 2D array]
OBJ_DESTROY,Obj or Obj->[IDLgrColorbar::]Cleanup [, /HIDE{Get, Init, Set}] [, LABEL_FONT{Get, Init,
Set}=objref] [, LABEL_FORMAT{Get, Init, Set}=string]
[, LABEL_FRMTDATA{Init}=value]
[, LABEL_UNITS{Get, Init, Set}=string]

IDL Quick Reference


94 Alphabetical List of IDL Routines

IDLgrContour Properties - continued IDLgrFilterChain::GetProperty - Retrieves the value of a prop-


[, MAX_VALUE{Get, Init, Set}=value] erty or group of properties for the filter chain object.
[, MIN_VALUE{Get, Init, Set}=value] [, MONTHS{Get, Obj->[IDLgrFilterChain::]GetProperty
Init, Set}=vector of 12 values] [, N_LEVELS{Get, Init, [, PROPERTY=variable]
Set}=value] [, PALETTE{Get, Init, Set}=objref ] IDLgrFilterChain::Init - Initializes the filter chain object.
[, PARENT{Get}=variable] [, /PLANAR{Get, Init, Set}] Obj = OBJ_NEW('IDLgrFilterChainl'
[, POLYGONS{Get, Init, Set}=array of polygon [, PROPERTY=value]) or
descriptions] [, /REGISTER_PROPERTIES{Get, Init, Result = Obj->[IDLgrFilterChainl::]Init
Set}] [, SHADE_RANGE{Get, Init, Set}=[min, max] ] ([, PROPERTY=value])
[, SHADER{Get, Init, Set}=objref] [, SHADING{Get,
IDLgrFilterChain::SetProperty - Sets the value of a property or
Init, Set}={0 |1}] [, TICKINTERVAL{Get, Set}=value] group of properties for the filter chain object.
[, TICKLEN{Get, Init, Set}=value] Obj->[IDLgrFilterChain::]SetProperty
[, USE_TEXT_ALIGNMENTS{Get, Init, Set}=value] [, PROPERTY=value]
[, XCOORD_CONV{Get, Init, Set}=vector]
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get, IDLgrFont - Represents a typeface, style, weight, and point size that
may be associated with text objects.
Init, Set}=vector] [, YRANGE{Get}=variable]
Properties: [, ALL{Get}=variable] [, SIZE{Get, Init,
[, ZCOORD_CONV{Get, Init, Set}=vector]
Set}=points] [, SUBSTITUTE{Get, Init,
[, ZRANGE{Get}=variable]
Set}={'Helvetica' | 'Courier' | 'Times' | 'Symbol' |
IDLgrContour::Cleanup - Performs all cleanup on the object. 'Hershey'}] [, THICK{Get, Init,
OBJ_DESTROY, Obj or Obj->[IDLgrContour::]Cleanup Set}=points{1.0 to 10.0}] [, UVALUE{Get, Init,
IDLgrContour::GetCTM - Returns the 4 x 4 graphics transform Set}=value]
matrix from the current object
IDLgrFont::Cleanup - Performs all cleanup on the object.
Result = Obj->[IDLgrContour::]GetCTM OBJ_DESTROY, Obj or Obj->[IDLgrFont::]Cleanup
([, DESTINATION=objref] [, PATH=objref(s)]
[, TOP=objref] ) IDLgrFont::GetProperty - Retrieves the value of a property or
group of properties for the font.
IDLgrContour::GetLabelInfo - Retrieves information about the Obj->[IDLgrFont:]GetProperty [, PROPERTY=variable]
labels for a contour
Obj->[IDLgrContour::]GetLabelInfo, Destination, IDLgrFont::Init - Initializes the font object.
LevelIndex [, LABEL_OFFSETS=variable] Obj = OBJ_NEW('IDLgrFont'[, Fontname]
[, LABEL_POLYS=variable] [, PROPERTY=value])
[, LABEL_OBJECTS=variable] or
Result = Obj->[IDLgrFont::]Init([Fontname]
IDLgrContour::GetProperty - Retrieves the value of a property
or group of properties for the contour. [, PROPERTY=value])
Obj->[IDLgrContour::]GetProperty IDLgrFont::SetProperty - Sets the value of a property or group of
[, PROPERTY=variable] properties for the font.
Obj->[IDLgrFont:]SetProperty[, PROPERTY=value]
IDLgrContour::Init - Initializes the contour object.
Obj = OBJ_NEW('IDLgrContour'[, Values] IDLgrImage - Represents a mapping from a 2D array of data values to
a 2D array of pixel colors.
[, PROPERTY=value]) or
Properties: [, ALL{Get}=variable]
Result = Obj->[IDLgrContour::]Init([Values]
[, ALPHA_CHANNEL=value]
[, PROPERTY=value])
[, BLEND_FUNCTION{Get, Init, Set}=vector]
IDLgrContour::SetProperty - Sets the value of a property or [, CHANNEL{Get, Init, Set}=hexadecimal bitmask]
group of properties for the contour.
[, CLIP_PLANES{Get, Init, Set}=array] [, DATA{Get,
Obj->[IDLgrContour::]SetProperty[, PROPERTY=value]
Init, Set}=nxm, 2xnxm, 3xnxm, or 4xnxm array of image
IDLgrFilterChain - Provides a way to apply a sequence of image fil- data] [, DEPTH_OFFSET=value]
tering shader programs in the order that they are added to this spe- [, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
cialized container object (if there is sufficient graphics hardware
support). [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
Properties: [, /FORCE_FILTER{Get, Init}] 3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
Init, Set}={0 | 1 | 2}] [, DIMENSIONS{Get, Init,
IDLgrFilterChain::Cleanup - Performs all cleanup on the object.
Set}=[width, height]] [, /GREYSCALE{Get, Init, Set}]
OBJ_DESTROY, Obj or Obj->[IDLgrFilterChain::] [, /HIDE{Get, Init, Set}] [, IMAGE_1D{Get, Init,
Cleanup Set}=value] [, INTERLEAVE{Get, Init, Set}={0 | 1 | 2}]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 95

IDLgrImage Properties - continued IDLgrImage::SetProperty - Sets the value of the property or


[, INTERNAL_DATA_TYPE{Get, Init, Set}=value] group of properties for the image.
[, /INTERPOLATE{Get, Init, Set}] [LOCATION{Get, Obj->[IDLgrImage::]SetProperty[, PROPERTY=value]
Init, Set}=[x, y] or [x, y, z]] [, /ORDER{Get, Init, Set}] [, /NO_COPY]
[, PALETTE{Get, Init, Set}=objref] [, PARENT IDLgrImage::SetTileData - Stores tile data in the tile data cache.
{Get}=variable] [, /REGISTER_PROPERTIES{Get, Init, Obj->[IDLgrImage::]SetTileData, TileInfo, TileData,
Set}] [,RENDER_METHOD=value] [, NO_FREE=value]
[, /RESET_DATA{Init, Set}] [, SHADER{Get, Init,
IDLgrImage::TileDataLoaded - Queries an image tile to deter-
Set}=objref] [, SHARE_DATA{Init, Set}=objref] mine whether data is loaded.
[, SUB_RECT{Get, Init, Set}=[x, y, xdim, ydim]] Result = Obj->[IDLgrImage::]TileData( TileInfo)
[, TILE_BORDER_SIZE{Get, Init, Set}=value]
[, TILE_COLOR{Get, Init, Set}=[red, green, blue]] IDLgrLegend - Provides a simple interface for displaying a legend.
[, TILE_CURRENT_LEVEL{Get, Init, Set}=value] Properties: [, ALL{Get}=variable]
[, TILE_DIMENSIONS{Get, Init, Set}=[width, height]] [, BORDER_GAP{Get, Init, Set}=value]
[, TILE_LEVEL_MODE{Get, Init, Set}={0 | 1 }] [, COLUMNS{Get, Init, Set}=integer]
[, TILE_NUM_LEVELS{Get, Init, Set}=value] [, FILL_COLOR{Get, Init, Set}=index or RGB vector]
[, TILE_SHOW_BOUNDARIES{Get, Init, Set}={0 | 1 }] [, FONT{Get, Init, Set}=objref] [, GAP{Get, Init,
[, TILED_IMAGE_DIMENSIONS{Get, Init, Set}=value] [, GLYPH_WIDTH{Get, Init, Set}=value]
Set}=[width, height]] [, /TILING{Get, Init, Set}] [, /HIDE{Get, Init, Set}] [, ITEM_COLOR{Get, Init,
[, TRANSFORM_MODE={0 | 1}] Set}=array of colors] [, ITEM_LINESTYLE{Get, Init,
[, XCOORD_CONV{Get, Init, Set}=vector] Set}=integer array] [, ITEM_NAME{Get, Init,
[, XRANGE{Get}=variable] [YCOORD_CONV{Get, Set}=string array] [, ITEM_OBJECT{Get, Init,
Init, Set}=vector] [, YRANGE{Get}=variable] Set}=array of IDLgrSymbol or IDLgrPattern objrefs]
[, ZCOORD_CONV{Get, Init, Set}=vector] [, ITEM_THICK{Get, Init, Set}=float array{each
[, ZRANGE{Get}=variable] element 1.0 to 10.0}] [, ITEM_TYPE{Get, Init, Set}=int
array{each element 0 or 1}] [, OUTLINE_COLOR{Get,
IDLgrImage::Cleanup - Performs all cleanup on the object.
Init, Set}=index or RGB vector] [, OUTLINE_THICK
OBJ_DESTROY, Obj or Obj->[IDLgrImage::]Cleanup
{Get, Init, Set}=points{1.0 to 10.0}] [, PARENT
IDLgrImage::DeleteTileData - Removes tile data stored in the {Get}=variable] [, RECOMPUTE{Set}={0 | 1}{0
cache. prevents recompute, 1 is the default}]
Obj->[IDLgrImage::]DeleteTileData, TileInfo, [, /ALL] [, /SHOW_FILL{Get, Init, Set}]
IDLgrImage::GetCTM - Returns the 4 x 4 graphics transform [, /SHOW_OUTLINE{Get, Init, Set}]
matrix from the current object. [, TEXT_COLOR{Get, Init, Set}=index or RGB vector]
Result = Obj->[IDLgrImage::]GetCTM( [, TITLE{Get, Init, Set}=objref]
[, DESTINATION=objref] [, PATH=objref(s)] [, XCOORD_CONV{Get, Init, Set}=vector]
[, TOP=objref to IDLgrModel object] ) [, XRANGE{Get}=variable] [, YCOORD_CONV{Get,
IDLgrImage::GetProperty - Retrieves the value of the property or Init, Set}=vector] [, YRANGE{Get}=variable]
group of properties for the image. [, ZCOORD_CONV{Get, Init, Set}=vector]
Obj->[IDLgrImage::]GetProperty [, ZRANGE{Get}=variable]
[, PROPERTY=variable] IDLgrLegend::Cleanup - Performs all cleanup on the object.
IDLgrImage::Init - Initializes the image object. OBJ_DESTROY, Obj or Obj->[IDLgrLegend::]Cleanup
Obj = OBJ_NEW('IDLgrImage'[, ImageData] IDLgrLegend::ComputeDimensions - Retrieves the dimen-
[, PROPERTY=value] [, /NO_COPY]) or sions of a legend object for the given destination object.
Result = Obj->[IDLgrImage::]Init([ImageData] Result = Obj->[IDLgrLegend::]ComputeDimensions(
[, PROPERTY=value] [, /NO_COPY]) DestinationObj [, PATH=objref(s)] )
IDLgrImage::ReadFilteredData - Returns the image data after IDLgrLegend::GetProperty - Retrieves the value of a property or
the application of one or more IDLgrShader programs to the image. group of properties for the legend.
data = Obj->[IDLgrImage::]ReadFilteredData( Dest Obj->[IDLgrLegend::]GetProperty
[, DATA_TYPE=value] [, READ_POSITION=value] [, PROPERTY=variable]
[, TILE=tileinfo]

IDL Quick Reference


96 Alphabetical List of IDL Routines

IDLgrLegend::Init - Initializes the legend object. IDLgrModel::Add - Adds a child to this Model.
Obj = OBJ_NEW('IDLgrLegend'[, aItemNames] Obj->[IDLgrModel::]Add, Object [, /ALIAS]
[, PROPERTY=value]) or [, POSITION=index]
Result = Obj->[IDLgrLegend::]Init([aItemNames] IDLgrModel::Cleanup - Performs all cleanup on the object.
[, PROPERTY=value])
OBJ_DESTROY, Obj or Obj->[IDLgrModel::]Cleanup
IDLgrLegend::SetProperty - Sets the value of a property or
group of properties for the legend. IDLgrModel::Draw - Draws the specified picture to the specified
graphics destination. This method is provided for purposes of sub-
Obj->[IDLgrLegend::]SetProperty[, PROPERTY=value] classing only, and is intended to be called only from the Draw
method of a subclass of IDLgrModel.
IDLgrLight - Represents a source of illumination for 3D graphic
objects. Obj->[IDLgrModel::]Draw, Destination, Picture
Properties: [, ALL{Get}=variable] IDLgrModel::GetByName - Finds contained objects by name and
[, ATTENUATION{Get, Init, Set}=[constant, linear, returns the object reference to the named object.
quadratic]] [, COLOR{Get, Init, Set}=[R, G, B]] Result = Obj->[IDLgrModel::]GetByName(Name)
[, CONEANGLE{Get, Init, Set}=degrees] IDLgrModel::GetCTM - Returns the 4 x 4 graphics transform
[, DIRECTION{Get, Init, Set}=3-element vector] matrix from the current object
[, FOCUS{Get, Init, Set}=value] [, /HIDE{Get, Init, Result = Obj->[IDLgrModel::]GetCTM(
Set}] [, INTENSITY{Get, Init, Set}=value{0.0 to 1.0}] [, DESTINATION=objref] [, PATH=objref(s)]
[, LIGHT_INDEX{Get, Init, Set}=value] [, TOP=objref to IDLgrModel object] )
[, LOCATION{Get, Init, Set}=[x, y, z]]
IDLgrModel::GetProperty - Retrieves the value of a property or
[, PARENT{Get}=variable] group of properties for the model.
[, /REGISTER_PROPERTIES{Get, Init, Set}] Obj->[IDLgrModel::]GetProperty
[, SHADER{Get, Init, Set}=objref] [, TYPE{Get, Init, [, PROPERTY=variable]
Set}={0 | 1 | 2 | 3}] [, XCOORD_CONV{Get, Init,
Set}=vector] [, YCOORD_CONV{Get, Init, IDLgrModel::Init - Initializes the model object.
Set}=vector] [, ZCOORD_CONV{Get, Init, Obj = OBJ_NEW('IDLgrModel'[, PROPERTY=value]) or
Set}=vector] Result = Obj->[IDLgrModel::]Init([PROPERTY=value])

IDLgrLight::Cleanup - Performs all cleanup on the object. IDLgrModel::Reset - Sets the current transform matrix for the
model object to the identity matrix.
OBJ_DESTROY, Obj or Obj->[IDLgrLight::]Cleanup
Obj->[IDLgrModel::]Reset
IDLgrLight::GetCTM - Returns the 4 x 4 graphics transform matrix IDLgrModel::Rotate - Rotates the model about the specified axis by
from the current object. the specified angle.
Result = Obj->[IDLgrLight::]GetCTM( Obj->[IDLgrModel::]Rotate, Axis, Angle
[, DESTINATION=objref] [, PATH=objref(s)] [, /PREMULTIPLY]
[, TOP=objref to IDLgrModel object] )
IDLgrModel::Scale - Scales model by the specified scaling factors.
IDLgrLight::GetProperty - Retrieves the value of a property or Obj->[IDLgrModel::]Scale, Sx, Sy, Sz [, /PREMULTIPLY]
group of properties for the light.
Obj->[IDLgrLight::]GetProperty [, PROPERTY=variable] IDLgrModel::SetProperty - Sets the value of a property or group
of properties for the model.
IDLgrLight::Init - Initializes the light object. Obj->[IDLgrModel::]SetProperty[, PROPERTY=value]
Obj = OBJ_NEW('IDLgrLight'[, PROPERTY=value]) or
IDLgrModel::Translate - Translates model by specified offsets.
Result = Obj->[IDLgrLight::]Init([PROPERTY=value])
Obj->[IDLgrModel::]Translate, Tx, Ty, Tz
IDLgrLight::SetProperty - Sets the value of a property or group of [, /PREMULTIPLY]
properties for the light.
Obj->[IDLgrLight::]SetProperty[, PROPERTY=value] IDLgrMPEG - Creates an MPEG movie from an array of image frames.
Properties: [, ALL{Get}=variable] [, BITRATE{Get, Init,
IDLgrModel - Represents a graphical item or group of items that can
be transformed (rotated, scaled, and/or translated). Set}=value] [, DIMENSIONS{Get, Init, Set}=2-element
array] [, FILENAME{Get, Init, Set}=string]
Properties: [, ACTIVE_POSITION{Get, Init,
[, FORMAT{Get, Init, Set}={0 | 1}] [, FRAME_RATE
Set}=integer] [, ALL{Get}=variable] [, /HIDE{Get, Init,
{Get, Init, Set} ={1 | 2 | 3 | 4 | 5 | 6 | 7 | 8}]
Set}] [, LIGHTING{Get, Init, Set}={0 | 1 | 2}]
[, IFRAME_GAP{Get, Init, Set}=integer value]
[, PARENT{Get}=variable]
[, /INTERLACED{Get, Init, Set}]
[, /REGISTER_PROPERTIES{Get, Init, Set}]
[, MOTION_VEC_LENGTH{Get, Init, Set}={1 | 2 | 3}]
[, RENDER_METHOD{Get, Init, Set}=integer]
[, QUALITY{Get, Init, Set}=value{0 to100}]
[, /SELECT_TARGET{Get, Init, Set}]
[, TRANSFORM{Get, Init, Set}=4x4 transform matrix]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 97

IDLgrMPEG Properties - continued IDLgrPalette::LoadCT - Loads one of the IDL predefined color
[, SCALE{Get, Init, Set}=[xscale, yscale]] tables into an IDLgrPalette object.
[, /STATISTICS{Get, Init, Set}] Obj->[IDLgrPalette::]LoadCT, TableNum
[, TEMP_DIRECTORY{Init}=string] [, FILENAME=colortable filename]

IDLgrMPEG::Cleanup - Performs all cleanup on the object. IDLgrPalette::NearestColor - Returns the index of the color in
the palette that best matches the given RGB values.
OBJ_DESTROY, Obj or Obj->[IDLgrMPEG::]Cleanup
Result = Obj->[IDLgrPalette::]NearestColor(Red, Green,
IDLgrMPEG::GetProperty - Retrieves the value of a property or Blue)
group of properties for the MPEG object.
Obj->[IDLgrMPEG::]GetProperty IDLgrPalette::SetRGB - Sets the color values at a specified index
in the palette to the specified Red, Green and Blue values.
[, PROPERTY=variable] Obj->[IDLgrPalette::]SetRGB, Index, Red, Green, Blue
IDLgrMPEG::Init - Initializes the MPEG object. IDLgrPalette::SetProperty - Sets the value of a property or group
Obj = OBJ_NEW('IDLgrMPEG'[, PROPERTY=value]) or of properties for the palette.
Result = Obj->[IDLgrMPEG::]Init([PROPERTY=value]) Obj->[IDLgrPalette::]SetProperty[, PROPERTY=value]

IDLgrMPEG::Put - Puts a given image into the MPEG sequence at IDLgrPattern - Describes which pixels are filled and which are left
blank when an area is filled.
the specified frame.
Properties: [, ALL{Get}=variable] [, NAME{Get, Init,
Obj->[IDLgrMPEG::]Put, Image[, Frame]
Set}=string] [, ORIENTATION{Get, Init, Set}=ccw
IDLgrMPEG::Save - Encodes and saves an MPEG sequence to a degrees from horiz] [, PATTERN{Get, Init, Set}=32 x 32
file.
bit array] [, SPACING{Get, Init, Set}=points]
Obj->[IDLgrMPEG::]Save [, FILENAME=string] [, STYLE{Get, Init, Set}={0 | 1 | 2}]
IDLgrMPEG::SetProperty - Sets the value of a property or group [, THICK{Init}=points{1.0 to 10.0}] [, UVALUE{Get,
of properties for the MPEG object. Init, Set}=value]
Obj->[IDLgrMPEG::]SetProperty[, PROPERTY=value] IDLgrPattern::Cleanup - Performs all cleanup on the object.
IDLgrPalette - Represents a color lookup table that maps indices to OBJ_DESTROY, Obj or Obj->[IDLgrPattern::]Cleanup
red, green, and blue values. IDLgrPattern::GetProperty - Retrieves the value of a property or
Properties: [, ALL{Get}=variable] group of properties for the pattern.
[, BLUE_VALUES{Get, Init, Set}=vector] Obj->[IDLgrPattern::]GetProperty
[, BOTTOM_STRETCH{Get, Init, Set}=value{0 to [, PROPERTY=variable]
100}] [, GAMMA{Get, Init, Set}=value{0.1 to 10.0}] IDLgrPattern::Init - Initializes the pattern object.
[, GREEN_VALUES{Get, Init, Set}=vector] Obj = OBJ_NEW('IDLgrPattern'[, Style]
[, N_COLORS{Get}=variable] [, NAME{Get, Init, [, PROPERTY=value]) or
Set}=string] [, RED_VALUES{Get, Init, Set}=vector] Result = Obj->[IDLgrPattern::]Init([Style]
[, TOP_STRETCH{Get, Init, Set}=value{0 to 100}] [, PROPERTY=value])
[, UVALUE{Get, Init, Set}=value]
IDLgrPattern:SetProperty - Sets the value of a property or group
IDLgrPalette::Cleanup - Performs all cleanup on the object. of properties for the pattern.
OBJ_DESTROY, Obj or Obj->[IDLgrPalette::]Cleanup Obj->[IDLgrPattern::]SetProperty[, PROPERTY=value]
IDLgrPalette::GetRGB - Returns the RGB values contained in the IDLgrPlot - Creates set of polylines connecting data points in 2D space.
palette at the given index. Properties: [, ALL{Get}=variable]
Result = Obj->[IDLgrPalette::]GetRGB(Index) [,ALPHA_CHANNEL{Get, Init, Set}=value]
[, CLIP_PLANES{Get, Init, Set}=array] [, COLOR{Get,
IDLgrPalette::GetProperty - Retrieves the value of a property or
group of properties for the palette. Init, Set}=index or RGB vector | , VERT_COLORS{Get,
Obj->[IDLgrPalette::]GetProperty Init, Set}=vector] [, DATA{Get}=variable] [, DATAX
[, PROPERTY=variable] {Init, Set}=vector] [, DATAY{Init, Set}=vector]
[, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
IDLgrPalette::Init - Initializes a palette object. [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
Obj = OBJ_NEW('IDLgrPalette', aRed, aGreen, aBlue 3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
[, PROPERTY=value]) or Init, Set}={0 | 1 | 2}] [, DOUBLE{Get, Init,
Result = Obj->[IDLgrPalette::]Init([aRed, aGreen, aBlue] Set}=value][, /HIDE{Get, Init, Set}]
[, PROPERTY=value]) [, /HISTOGRAM{Get, Set}] [, LINESTYLE{Get, Init,
Set}=integer or two-element vector]
[, MAX_VALUE{Get, Init, Set}=value]

IDL Quick Reference


98 Alphabetical List of IDL Routines

IDLgrPLOT Properties - continued IDLgrPolygon Properties - continued


[, MIN_VALUE{Get, Init, Set}=value] [, NSUM{Get, [, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
Init, Set}=value] [, PALETTE{Get, Init, Set}=objref] [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
[, PARENT{Get}=variable] [, /POLAR{Get, Init, Set}] 3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
[, /REGISTER_PROPERTIES{Get, Init, Set}] Init, Set}={0 | 1 | 2}] [, DIFFUSE{Get, Init, Set}=RGB
[, /RESET_DATA{Init, Set}] [, SHADER{Get, Init, vector] [, DOUBLE{Get, Init, Set}=value]
Set}=objref] [, SHARE_DATA{Init, Set}=objref] [, EMMISION{Get, Init, Set}=RGB vector]
[, SYMBOL{Get, Init, Set}=objref(s)] [, THICK{Get, [, FILL_PATTERN{Get, Init, Set}=objref to
Init, Set}=points{1.0 to 10.0}] [, /USE_ZVALUE{Init}] IDLgrPattern object] [, /HIDDEN_LINES{Init}]
[, XCOORD_CONV{Get, Init, Set}=vector] [, /HIDE{Get, Init, Set}] [, LINESTYLE{Get, Init,
[, XRANGE{Get, Init, Set}=[xmin, xmax]] Set}=value] [, NAME{Get, Init, Set}=string]
[, YCOORD_CONV{Get, Init, Set}=vector] [, NORMALS{Get, Init, Set}=array]
[, YRANGE{Get, Init, Set}=[ymin, ymax]] [, PALETTE{Init}=objref] [, PARENT{Get}=variable]
[, ZCOORD_CONV{Get, Init, Set}=vector] [, PART_COLORS=vector] [, PART_HIDE=vector]
[, ZRANGE{Get}=variable] [, ZVALUE{Get, Init, [, POLYGONS{Get, Init, Set}=array of polygon
Set}=value] descriptions] [, /REGISTER_PROPERTIES{Get, Init,
Set}] [, REJECT{Get, Init, Set}={0 | 1 | 2}]
IDLgrPlot::Cleanup - Performs all cleanup on the object.
[, /RESET_DATA{Init, Set}] [, SHADE_RANGE{Get,
OBJ_DESTROY, Obj or Obj->[IDLgrPlot::]Cleanup
Init, Set}=array] [, SHADER{Get, Init, Set}=objref]
IDLgrPlot::GetCTM - Returns the 4 x 4 graphics transform matrix [, SHADING{Get, Init, Set}={0 | 1}]
from the current object upward through the graphics tree.
[, SHARE_DATA{Init, Set}=objref] [, SHININESS{Get,
Result = Obj->[IDLgrPlot::]GetCTM( Init, Set}=value] [, SPECULAR{Get, Init, Set}= RGB
[, DESTINATION=objref] [, PATH=objref(s)] vector] [, STYLE{Get, Init, Set}={0 | 1 | 2}]
[, TOP=objref to IDLgrModel object] ) [, TEXTURE_COORD{Get, Init, Set}=array]
IDLgrPlot::GetProperty - Retrieves the value of the property or [, /TEXTURE_INTERP{Get, Init, Set}]
group of properties for the plot. [, TEXTURE_MAP{Get,Init, Set}=objref to IDLgrImage
Obj->[IDLgrPlot::]GetProperty[, PROPERTY=variable] object] [, THICK{Get, Init, Set}=points{1.0 to 10.0}]
IDLgrPlot::GetVertexAttributeData - Retrieves the value of the [, XCOORD_CONV{Get, Init, Set}=vector]
attribute variable specified in the Name argument (a case-sensitive [, XRANGE{Get}=variable] [, YCOORD_CONV{Get,
string). Init, Set}=vector] [, ZCOORD_CONV{Get, Init,
Obj->[IDLgrPlot::]GetVertexAttributeData, Name, Value Set}=vector] [, YRANGE{Get}=variable]
IDLgrPlot::Init - Initializes the plot object. [, ZERO_OPACITY_SKIP{Get, Init, Set}={0 | 1}]
Obj = OBJ_NEW('IDLgrPlot'[, [X,] Y] [, ZRANGE{Get}=variable]
[, PROPERTY=value]) or IDLgrPolygon::Cleanup - Performs all cleanup on the object.
Result = Obj->[IDLgrPlot::]Init([[X,] Y] OBJ_DESTROY, Obj or Obj->[IDLgrPolygon::]Cleanup
[, PROPERTY=value])
IDLgrPolygon::GetCTM - Returns the 4 x 4 graphics transform
IDLgrPlot::SetProperty - Sets the value of the property or group matrix from the current object upward through the graphics tree.
of properties for the plot. Result = Obj->[IDLgrPolygon::]GetCTM(
Obj->[IDLgrPlot::]SetProperty[, PROPERTY=value] [, DESTINATION=objref] [, PATH=objref(s)]
IDLgrPlot::SetVertexAttributeData - Sets the value of the ver- [, TOP=objref to IDLgrModel object] )
tex attribute data variable specified in the Name argument (a case-
sensitive string). IDLgrPolygon::GetProperty - Retrieves the value of the property
or group of properties for the polygons.
Obj->[IDLgrPlot::]SetVertexAttributeData, Name, Value
Obj->[IDLgrPolygon::]GetProperty
IDLgrPolygon - Represents one or more polygons that share a set of [, PROPERTY=variable]
vertices and rendering attributes.
Properties: [, ALL{Get}=variable] IDLgrPolygon::GetMultiTextureCoord - Retrieves the texture
coordinates associated with the specified Unit argument.
[,ALPHA_CHANNEL{Get, Init, Set}=value]
Obj->[IDLgrPolygon::]GetMultiTextureCoord, Unit,
[, AMBIENT{Get, Init, Set}=RGB vector]
TexCoord
[, BOTTOM{Get, Init, Set}=index or RGB vector]
[, CLIP_PLANES{Get, Init, Set}=array] [, COLOR{Get, IDLgrPolygon::GetVertexAttributeData - Retrieves the value
Init, Set}=index or RGB vector | , VERT_COLORS{Get, of the attribute variable specified in the Name argument (a case-sen-
sitive string).
Init, Set}=vector] [, DATA{Get, Init, Set}=array]
Obj->[IDLgrPolygon::]GetVertexAttributeData, Name,
[, DEPTH_OFFSET{Get, Init, Set}=value]
Value

Objects IDL Quick Reference


Alphabetical List of IDL Routines 99

IDLgrPolygon::Init - Initializes the polygons object. IDLgrPolyline::Cleanup - Performs all cleanup on the object.
Obj = OBJ_NEW('IDLgrPolygon'[, X [, Y[, Z]]] OBJ_DESTROY, Obj or Obj->[IDLgrPolyline::]Cleanup
[, PROPERTY=value]) or
IDLgrPolyline::GetCTM - Returns the 4 x 4 graphics transform
Result = Obj->[IDLgrPolygon::]Init([X, [Y, [Z]]] matrix from the current object upward through the graphics tree.
[, PROPERTY=value]) Result = Obj->[IDLgrPolyline::]GetCTM(
IDLgrPolygon::SetMultiTextureCoord - Sets the texture coor- [, DESTINATION=objref] [, PATH=objref(s)]
dinates associated with the specified Unit argument. [, TOP=objref to IDLgrModel object] )
Obj->[IDLgrPolygon::]SetMultiTextureCoord, Unit,
IDLgrPolyline::GetProperty - Retrieves the value of a property
TexCoord or group of properties for the polylines.
IDLgrPolygon::SetProperty - Sets the value of the property or Obj->[IDLgrPolyline::]GetProperty
group of properties for the polygons. [, PROPERTY=variable]
Obj->[IDLgrPolygon::]SetProperty [, PROPERTY=value] IDLgrPolyline::GetVertexAttributeData - Retrieves the value
IDLgrPolygon::SetVertexAttributeData - Sets the value of of the attribute variable specified in the Name argument (a case-sen-
the vertex attribute data variable specified in the Name argument (a sitive string).
case-sensitive string). Obj->[IDLgrPolyline::]GetVertexAttributeData, Name,
Obj->[IDLgrPolygon::]SetVertexAttributeData, Name, Value
Value
IDLgrPolyline::Init - Initializes the polylines object.
IDLgrPolyline - Represents one or more polylines that share a set of Obj = OBJ_NEW('IDLgrPolyline' [, X [, Y[, Z]]]
vertices and rendering attributes. [, PROPERTY=value]) or
Properties: [, ALL{Get}=variable] Result = Obj->[IDLgrPolyline::]Init( [X, [Y, [Z]]]
[,ALPHA_CHANNEL{Get, Init, Set}=value] [, PROPERTY=value])
[, CLIP_PLANES{Get, Init, Set}=array] [, COLOR{Get,
Init, Set}=index or RGB vector | , VERT_COLORS{Get, IDLgrPolyline::SetProperty - Sets the value of a property or
group of properties for the polylines.
Init, Set}=vector] [, DATA{Get, Init, Set}=array]
Obj->[IDLgrPolyline::]SetProperty [, PROPERTY=value]
[, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
[, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 | IDLgrPolyline::SetVertexAttributeData - Sets the value of the
vertex attribute data variable specified in the Name argument (a
3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get, case-sensitive string).
Init, Set}={0 | 1 | 2}] [, DOUBLE{Get, Init, Set}=value] Obj->[IDLgrPolyline::]SetVertexAttributeData, Name,
[, /HIDE{Get, Init, Set}] [, LABEL_NOGAPS{Get, Init, Value
Set}=vector] [, LABEL_OBJECTS{Get, Init,
Set}=objref] [, LABEL_OFFSETS{Get, Init, Set}=scalar IDLgrPrinter - Represents a hardcopy graphics destination.
or vector of offsets}] [, LABEL_POLYLINES{Get, Init, Properties: [, ALL{Get}=variable]
Set}=scalar or vector of polyline indices] [, COLOR_MODEL{Get, Init}={0 | 1}]
[, LABEL_USE_VERTEX_COLOR{Get, Init, [, DIMENSIONS{Get}=variable]
Set}=value] [, LINESTYLE{Get, Init, Set}=value] [, GRAPHICS_TREE{Get, Init, Set}=objref of type
[, PALETTE{Get, Init, Set}=objref] IDLgrScene, IDLgrViewgroup, or IDLgrView]
[, PARENT{Get}=variable] [, PART_COLORS=vector] [, /LANDSCAPE{Get, Init, Set}] [, N_COLORS{Get,
[, PART_HIDE=vector] [, POLYLINES{Get, Init, Init}=integer{2 to 256}] [, N_COPIES{Get, Init,
Set}=array of polyline descriptions] Set}=integer] [, NAME{Get, Init, Set}=string]
[, /REGISTER_PROPERTIES{Get, Init, Set}] [, PALETTE{Get, Init, Set}=objref]
[, /RESET_DATA{Init, Set}][, SHADER{Get, Init, [, PRINT_QUALITY{Get, Init, Set}={0 | 1 | 2}]
Set}=objref] [, SHADING{Get, Init, Set}={0 | 1}] [PRINTER_NAME{Get}=variable] [, QUALITY{Get,
[, SHARE_DATA{Init, Set}=objref] [, SYMBOL{Get, Init, Set}={0 | 1 | 2}] [, /REGISTER_PROPERTIES{Get,
Init, Set}=objref(s)] [, THICK{Get, Init, Init, Set}] [, RESOLUTION{Get}=variable]
Set}=points{1.0 to 10.0}] [, USE_LABEL_COLOR{Get, [, UNITS{Get, Init, Set}={0 | 1 | 2 | 3}]
Init, Set}=vector] [, USE_LABEL_ORIENTATION{Get, IDLgrPrinter::Cleanup - Performs all cleanup on the object.
Init, Set}=vector] [, /USE_TEXT_ALIGNMENTS{Get, OBJ_DESTROY, Obj or Obj->[IDLgrPrinter::]Cleanup
Init, Set}] [, XCOORD_CONV{Get, Init, Set}=vector]
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get, IDLgrPrinter::Draw - Draws a picture to this graphics destination.
Init, Set}=vector] [, YRANGE{Get}=variable] Obj->[IDLgrPrinter::]Draw [, Picture]
[, ZCOORD_CONV{Get, Init, Set}=vector] [, VECT_SORTING={ 0 | 1 } ]
[, ZRANGE{Get}=variable] [, VECT_TEXT_RENDER_METHOD={ 0 | 1 } ]
[, VECTOR={ 0 | 1 } ]

IDL Quick Reference


100 Alphabetical List of IDL Routines

IDLgrPrinter::GetContiguousPixels - Returns an array of IDLgrROI Properties - continued


long integers whose length is equal to the number of colors avail- [, XCOORD_CONV{Get, Init, Set}=[s0, s1] ]
able in the index color mode (value of N_COLORS property).
[, XRANGE{Get}=variable]
Return = Obj->[IDLgrPrinter::]GetContiguousPixels( )
[, YCOORD_CONV{Get, Init, Set}=[s0, s1] ]
IDLgrPrinter::GetFontnames - Returns the list of available fonts [, YRANGE{Get}=variable]
that can be used in IDLgrFont objects.
[, ZCOORD_CONV{Get, Init, Set}=[s0,
Return = Obj->[IDLgrPrinter::]GetFontnames( s1] ] [, ZRANGE{Get}=variable]
FamilyName [, IDL_FONTS={0 | 1 | 2}]
[, STYLES=string] ) IDLgrROI::Cleanup - Performs all cleanup for the object.
OBJ_DESTROY, Obj or Obj –> [IDLgrROI::]Cleanup
IDLgrPrinter::GetProperty - Retrieves the value of a property or
group of properties for the printer. IDLgrROI::GetProperty - Retrieves the value of a property or
Obj->[IDLgrPrinter::]GetProperty group of properties for the Object Graphics region.
[, PROPERTY=variable] Obj –> [IDLgrROI::]GetProperty[, PROPERTY=variable]
IDLgrPrinter::GetTextDimensions - Retrieves the dimensions IDLgrROI::Init - Initializes an Object Graphics region of interest.
of a text object that will be rendered on the printer. Obj = OBJ_NEW( 'IDLgrROI' [, X[, Y[, Z]]]
Result = Obj->[IDLgrPrinter::]GetTextDimensions( [, PROPERTY=value]) or
TextObj [, DESCENT=variable] [, PATH=objref(s)] ) Result = Obj –> [IDLgrROI::]Init([X[, Y[, Z]]]
IDLgrPrinter::Init - Initializes the printer object. [, PROPERTY=value])
Obj = OBJ_NEW('IDLgrPrinter'[, PROPERTY=value]) or IDLgrROI::PickVertex - Picks a vertex of the region that, when pro-
Result = Obj->[IDLgrPrinter::]Init([PROPERTY=value]) jected onto the given destination device, is nearest to the given 2D
device coordinate.
IDLgrPrinter::NewDocument - Closes current document (page Result = Obj –> [IDLgrROI::]PickVertex( Dest, View, Point
or group of pages), which causes pending output to be sent to the
printer, finishing the printer job. [, PATH=objref] )
Obj->[IDLgrPrinter::]NewDocument IDLgrROI::SetProperty - Sets the value of a property or group of
properties for the Object Graphics region.
IDLgrPrinter::NewPage - Issues new page command to printer.
Obj –> [IDLgrROI::]SetProperty[, PROPERTY=value]
Obj->[IDLgrPrinter::]NewPage
IDLgrROIGroup - Object Graphics representation of a group of
IDLgrPrinter::QueryRequiredTiles - Returns an array of regions of interest.
named structures containing information regarding which tile data
is needed for display. Used with a tiled IDLgrImage object. Properties: [, ALL{Get}=variable]
Result = Obj->[IDLgrPrinter::]QueryRequiredTiles (View, [, CLIP_PLANES{Get, Init, Set}=array]
Image [, COUNT=variable] [, ALL_VISIBLE=value] [, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
[, PATH=objref(s)]) [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
IDLgrPrinter::SetProperty - Sets the value of a property or group Init, Set}={0 | 1 | 2}] [, /HIDE{Get, Init, Set}]
of properties for the printer.
[, SHADER{Get, Init, Set}=objref]
Obj->[IDLgrPrinter::]SetProperty[, PROPERTY=value]
[, PARENT{Get}=variable]
IDLgrROI - Object graphics representation of a region of interest. [, XCOORD_CONV{Get, Init, Set}=[s0, s1] ]
Properties: [, ALL{Get}=variable] [, XRANGE{Get}=variable]
[,ALPHA_CHANNEL{Get, Init, Set}=value] [, YCOORD_CONV{Get, Init, Set}=[s0, s1] ]
[, CLIP_PLANES{Get, Init, Set}=array] [, YRANGE{Get}=variable]
[, COLOR{Get, Init, Set}=vector] [, ZCOORD_CONV{Get, Init, Set}=[s0, s1] ]
[, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}] [, ZRANGE{Get}=variable]
[, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 | IDLgrROIGroup::Add - Adds a region to the region group.
3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
Obj –> [IDLgrROIGroup::]Add, ROI
Init, Set}={0 | 1 | 2}] [, DOUBLE{Get, Init, Set}=value]
[, /HIDE{Get, Init, Set}] [, LINESTYLE{Get, Init, IDLgrROIGroup::Cleanup - Performs all cleanup for the object.
Set}=value] [, PALETTE{Get, Init, Set}=objref] OBJ_DESTROY, Obj or
[, /REGISTER_PROPERTIES{Get, Init, Set}] Obj –> [IDLgrROIGroup::]Cleanup
[, SHADER{Get, Init, Set}=objref] [, STYLE{Get, Init, IDLgrROIGroup::GetProperty - Retrieves the value of a prop-
Set}={ 0 | 1 | 2 } ] [, SYMBOL{Get, Init, Set}=objref] erty or group of properties for the region group.
[, THICK{Get, Init, Set}=points{1.0 to 10.0}] Obj –> [IDLgrROIGroup::]GetProperty
[, PROPERTY=variable]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 101

IDLgrROIGroup::Init - Initializes an Object Graphics region of IDLgrShader Properties - continued


interest group object. [, VERTEX_PROGRAM_FILENAME{Get, Init,
Obj = OBJ_NEW('IDLgrROIGroup'[, PROPERTY=value]) Set}=string] [, VERTEX_PROGRAM_STRING{Get,
or Result = Obj –> [IDLgrROIGroup::]Init( Init, Set}=string]
[, PROPERTY=value])
IDLgrShader::Cleanup - Performs all cleanup on the object.
IDLgrROIGroup::PickRegion - Picks a region within the group OBJ_DESTROY, Obj or Obj->[IDLgrShader::]Cleanup
that, when projected onto the given destination device, is nearest to
the given 2D device coordinate. IDLgrShader::Filter - provides a software fallback for an image fil-
Result = Obj –> [IDLgrROIGroup::]PickRegion( Dest, tering operation when there is not support for the shader program.
View, Point [, PATH=objref] ) Implemented only in an IDLgrShader subclass.
Result = Obj->[IDLgrShader subclass::]Filter(Image )
IDLgrROIGroup::Remove - Removes an object from the ROI
group. IDLgrShader::GetProperty - Retrieves the value of a property or
Obj->[IDLgrROIGroup::]Remove [, Child_object] group of properties for the shader.
[, POSITION=index] [, /ALL] Obj->[IDLgrShader::]GetProperty
[, PROPERTY=variable]
IDLgrROIGroup::SetProperty - Sets the value of a property or
group of properties for the region group. IDLgrShader::GetUniformVariable - Retrieves the value of the
Obj –> [IDLgrROIGroup::]SetProperty uniform variable specified in the Name argument (a case-sensitive
string).
[, PROPERTY=value]
Obj->[IDLgrShader::]GetUniformVariable, Name, Value
IDLgrScene - Represents the entire scene to be drawn and serves as a
container of IDLgrView or IDLgrViewgroup objects. IDLgrShader::Init - Initializes the shader object.
Properties: [, ALL{Get}=variable] [, COLOR{Get, Init, Obj = OBJ_NEW('IDLgrShader' [, PROPERTY=value]) or
Set}=index or RGB vector] [, /HIDE{Get, Init, Set}] Result = Obj->[IDLgrShader::]Init
[, /REGISTER_PROPERTIES{Get, Init, Set}] ([, PROPERTY=value])
[, /TRANSPARENT{Get, Init, Set}] IDLgrShader::SetProperty - Sets the value of a property or group
of properties for the shader.
IDLgrScene::Add - Verifies that the added item is an instance of an
IDLgrView or IDLgrViewgroup object. Obj->[IDLgrShader::]SetProperty[, PROPERTY=value]
Obj->[IDLgrScene::]Add, View [, POSITION=index] IDLgrShader::SetUniformVariable - Sets the value of the uni-
form variable specified in the Name argument (a case-sensitive
IDLgrScene::Cleanup - Performs all cleanup on the object. string).
OBJ_DESTROY, Obj or Obj->[IDLgrScene::]Cleanup Obj->[IDLgrShader::]SetUniformVariable, Name, Value
IDLgrScene::GetByName - Finds contained objects by name and IDLgrShaderBytscl - Performs byte-scale operations on image data
returns the object reference to the named object. as it is draw to the screen using a shader program if there is suffi-
Result = Obj->[IDLgrScene::]GetByName(Name) cient graphics hardware support or using a software fallback.
Properties: [, IN_RANGE{Get, Init}=array]
IDLgrScene::GetProperty - Retrieves the value of a property or
group of properties for the contour. [, OUT_RANGE{Get, Init, Set}=array]
Obj->[IDLgrScene::]GetProperty [, PROPERTY=variable] [, UNITS_IN_RANGE{Get, Init, Set}=value]

IDLgrScene::Init - Initializes the scene object. IDLgrShaderBytscl::Cleanup - Performs all cleanup on the
object.
Obj = OBJ_NEW('IDLgrScene'[, PROPERTY=value]) or OBJ_DESTROY, Obj or Obj-
Result = Obj->[IDLgrScene::]Init([, PROPERTY=value]) >[IDLgrShaderBytscl::]Cleanup
IDLgrScene::SetProperty - Sets the value of one or more proper- IDLgrShaderBytscl::GetProperty - Retrieves the value of a
ties for the scene.
property or group of properties for the byte-scale shader.
Obj->[IDLgrScene::]SetProperty[, PROPERTY=value] Obj->[IDLgrShader::]GetProperty
IDLgrShader - Exposes the OpenGL shading language to IDL object [, PROPERTY=variable]
graphics. This lets you associate a shader program (which is exe-
cuted on the graphics card processing unit) with a graphic object, IDLgrShaderBytscl::Init - Initializes the byte-scale shader object.
increasing performance and interactivity. Obj = OBJ_NEW('IDLgrShaderBytscl'
Properties: [, CACHE_RESULT{Get, Init, Set}=value] [, PROPERTY=value]) or
[, /FORCE_FILTER{Get, Init}] Result = Obj->[IDLgrShaderBytscl::]Init
[, FRAGMENT_PROGRAM_FILENAME{Get, Init, ([, PROPERTY=value])
Set}=string]
[, FRAGMENT_PROGRAM_STRING{Get, Init, IDLgrShaderBytscl::SetProperty - Sets the value of a property
or group of properties for the byte-scale shader.
Set}=string] [, OUTPUT_DATA_TYPE{Get, Init,
Obj->[IDLgrShaderBytscl::]SetProperty
Set}=value]
[, PROPERTY=value]

IDL Quick Reference


102 Alphabetical List of IDL Routines

IDLgrShaderConvol3 - Performs a convolution operation (smooth, IDLgrSurface Properties - continued


sharpen, edge detection, or custom) on image data as it is draw to [, SHARE_DATA{Init, Set}=objref] [, SHININESS{Get,
the screen using a shader (with sufficient graphics hardware sup-
port). Init, Set}=value] [, /SHOW_SKIRT{Get, Init, Set}]
Properties: [, BASE_BLEND_FACTOR{Get, Init, [, SKIRT{Get, Init, Set}=Z value] [, SPECULAR{Get,
Set}=value] [, CONVOL_BLEND_FACTOR{Get, Init, Init, Set}=RGB vector] [, STYLE{Get, Init, Set}={0 | 1 |
Set}=value] [, KERNEL{Get, Init, Set}=value or 9- 2 | 3 | 4 | 5 | 6}] [, TEXTURE_COORD{Get, Init,
element numerical array] Set}=array] [, /TEXTURE_HIGHRES{Get, Init, Set}]
[, /TEXTURE_INTERP{Get, Init, Set}]
IDLgrShaderConvol3::Cleanup - Performs all cleanup on the
object. [, TEXTURE_MAP{Get, Init, Set}=objref to
IDLgrImage] [, THICK{Get, Init,
OBJ_DESTROY, Obj or Obj->[IDLgrShaderConvol3::]
Cleanup Set}=points{1.0 to 10.0}] [, /USE_TRIANGLES{Get,
Init, Set}] [, VERT_COLORS{Get, Init, Set}=vector]
IDLgrShaderConvol3::GetProperty - Retrieves the value of a [, XCOORD_CONV{Get, Init, Set}=vector]
property or group of properties for the convolution shader.
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get,
Obj->[IDLgrConvol3::]GetProperty
Init, Set}=vector] [, YRANGE{Get}=variable]
[, PROPERTY=variable]
[, ZCOORD_CONV{Get, Init, Set}=vector]
IDLgrShaderConvol3::Init - Initializes the convolution shader [, ZERO_OPACITY_SKIP{Get, Init, Set}={0 | 1}]
object. [, ZRANGE{Get}=variable]
Obj = OBJ_NEW('IDLgrShaderConvol3'
[, PROPERTY=value]) or IDLgrSurface::Cleanup - Performs all cleanup on the object.
Result = Obj->[IDLgrShaderConvol3::]Init OBJ_DESTROY, Obj or Obj->[IDLgrSurface::]Cleanup
([, PROPERTY=value]) IDLgrSurface::GetCTM - Returns the 4 x 4 graphics transform
matrix from the current object upward through the graphics tree.
IDLgrShaderConvol3::SetProperty - Sets the value of a prop-
erty or group of properties for the convolution shader. Result = Obj->[IDLgrSurface::]GetCTM(
Obj->[IDLgrShaderConvol3::]SetProperty [, DESTINATION=objref] [, PATH=objref(s)]
[, PROPERTY=value] [, TOP=objref to IDLgrModel object] )

IDLgrSurface - A shaded or vector representation of a mesh grid. IDLgrSurface::GetMultiTextureCoord - Retrieves the texture
coordinates associated with the specified Unit argument.
Properties: [, ALL{Get}=variable]
Obj->[IDLgrSurface::]SetMultiTextureCoord, Unit,
[,ALPHA_CHANNEL{Get, Init, Set}=value]
TexCoord
[, AMBIENT{Get, Init, Set}=RGB vector]
[, BOTTOM{Get, Set}=index or RGB vector] IDLgrSurface::GetProperty - Retrieves the value of a property or
group of properties for the surface.
[, CLIP_PLANES{Get, Init, Set}=array] [, COLOR{Get,
Obj->[IDLgrSurface::]GetProperty
Init, Set}=index or RGB vector] [, DATAX{Init,
[, PROPERTY=variable]
Set}=vector or 2D array] [, DATAY{Init, Set}=vector or
2D array] [, DATAZ{Init, Set}=2D array] IDLgrSurface::GetVertexAttributeData - Retrieves the value
[, DEPTH_OFFSET{Get, Init, Set}=value] of the attribute variable specified in the Name argument (a case-sen-
sitive string).
[, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
Obj->[IDLgrSurface::]GetVertexAttributeData, Name,
[, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
Value
3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
Init, Set}={0 | 1 | 2}] [, DIFFUSE{Get, Init, Set}=RGB IDLgrSurface::Init - Initializes the surface object.
vector] [, DOUBLE{Get, Init, Set}=value] Obj = OBJ_NEW('IDLgrSurface' [, Z [, X, Y]]
[, EMMISION{Get, Init, Set}=RGB vector] [, PROPERTY=value]) or
[, /EXTENDED_LEGO{Get, Init, Set}] Result = Obj->[IDLgrSurface::]Init([Z [, X, Y]]
[, /HIDDEN_LINES{Get, Init, Set}] [, /HIDE{Get, Init, [, PROPERTY=value])
Set}] [, LINESTYLE{Get, Init, Set}=value] IDLgrSurface::SetMultiTextureCoord - Sets the texture coor-
[, MAX_VALUE{Get, Init, Set}=value] dinates associated with the specified Unit argument.
[, MIN_VALUE{Get, Init, Set}=value] [, PALETTE{Get, Obj->[IDLgrSurface::]SetMultiTextureCoord, Unit,
Init, Set}=objref] [, PARENT{Get}=variable] TexCoord
[, /REGISTER_PROPERTIES{Get, Init, Set}]
IDLgrSurface::SetProperty - Sets the value of a property or
[, /RESET_DATA{Init, Set}] [, SHADE_RANGE{Get, group of properties for the surface.
Init, Set}=[index of darkest pixel, index of brightest Obj->[IDLgrSurface::]SetProperty[, PROPERTY=value]
pixel]] [, SHADER{Get, Init, Set}=objref]
[, SHADING{Get, Init, Set}={0 | 1}]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 103

IDLgrSurface::SetVertexAttributeData - Sets the value of the IDLgrText - Represents one or more text strings that share common
vertex attribute data variable specified in the Name argument (a rendering attributes.
case-sensitive string).
Properties: [, ALL{Get}=variable] [, ALIGNMENT{Get,
Obj->[IDLgrSurface::]SetVertexAttributeData, Name, Init, Set}=value{0.0 to 1.0}]
Value [, ALPHA_CHANNEL{Get, Init, Set}=value{0.0 to
IDLgrSymbol - Represents a graphical element that is plotted relative 1.0}] [, BASELINE{Get, Init, Set}=vector]
to a particular position. [, CHAR_DIMENSIONS{Get, Init, Set}=[width, height]]
Properties: [, ALL{Get}=variable] [, CLIP_PLANES{Get, Init, Set}=array]
[,ALPHA_CHANNEL{Get, Init, Set}=value] [, COLOR{Get, Init, Set}=index or RGB vector]
[, COLOR{Get, Init, Set}=index or RGB vector] [, DEPTH_TEST_DISABLE{Get, Init, Set}={0 | 1 | 2}]
[, DATA{Get, Init, Set}=integer or objref] [, NAME{Get, [, DEPTH_TEST_FUNCTION{Get, Init, Set}={0 | 1 | 2 |
Init, Set}=string] [, SIZE{Get, Init, Set}=vector] 3 | 4 | 5 | 6 | 7 | 8}] [, DEPTH_WRITE_DISABLE{Get,
[, THICK{Get, Init, Set}=points{1.0 to 10.0}] Init, Set}={0 | 1 | 2}] [, DRAW_CURSOR{Get, Set}={0 |
[, UVALUE{Get, Init, Set}=value] 1}][, /ENABLE_FORMATTING{Get, Init, Set}]
IDLgrSymbol::Cleanup - Performs all cleanup on the object. [, /FILL_BACKGROUND{Get, Init, Set}]
OBJ_DESTROY, Obj or Obj->[IDLgrSymbol::]Cleanup [, FILL_COLOR{Get, Init, Set}=index or RGB vector]
[, FONT{Get, Init, Set}=objref] [, /HIDE{Get, Init, Set}]
IDLgrSymbol::GetProperty - Retrieves the value of a property or [, /KERNING{Get, Init, Set}] [, LOCATIONS{Get, Init,
group of properties for the symbol.
Set}=array] [, NAME{Get, Init, Set}=string]
Obj->[IDLgrSymbol::]GetProperty
[, /ONGLASS{Get, Init, Set}] [, PALETTE{Get, Init,
[, PROPERTY=variable]
Set}=objref] [, PARENT{Get}=variable]
IDLgrSymbol::Init - Initializes the plot symbol. [, RECOMPUTE_DIMENSIONS{Get, Init, Set}={0 | 1 |
Obj = OBJ_NEW('IDLgrSymbol'[, Data] 2}] [, /REGISTER_PROPERTIES{Get, Init, Set}]
[, PROPERTY=value]) or [, RENDER_METHOD{Get, Init, Set}={0 | 1}]
Result = Obj->[IDLgrSymbol::]Init([Data] [, SELECTION_LENGTH{Get, Set}={value}]
[, PROPERTY=value]) [, SELECTION_START{Get, Set}={value}]
[, SHADER{Get, Init, Set}=objref] [, STRINGS{Get,
IDLgrSymbol::SetProperty - Sets the value of a property or
group of properties for the symbol. Init, Set}=string or vector of strings] [, UPDIR{Get, Init,
Obj->[IDLgrSymbol::]SetProperty[, PROPERTY=value] Set}=vector] [, UVALUE{Get, Init, Set}=value]
[, VERTICAL_ALIGNMENT{Get, Init, Set}=value{0.0
IDLgrTessellator - Converts a simple concave polygon (or a simple to 1.0}] [, XCOORD_CONV{Get, Init, Set}=vector]
polygon with “holes”) into a number of simple convex polygons
(general triangles). [, XRANGE{Get}=variable] [, YCOORD_CONV{Get,
IDLgrTessellator::AddPolygon - Adds a polygon to the tessel- Init, Set}=vector] [, YRANGE{Get}=variable]
lator object. [, ZCOORD_CONV{Get, Init, Set}=vector]
Obj->[IDLgrTessellator::]AddPolygon, X [, Y[, Z]] [, ZRANGE{Get}=variable]
[, AUXDATA=array of auxiliary data] [, /INTERIOR] IDLgrText::Cleanup - Performs all cleanup on the object.
[, POLYGON=array of polygon descriptions]
OBJ_DESTROY, Obj or Obj->[IDLgrText::]Cleanup
IDLgrTessellator::Cleanup - Performs all cleanup on the object.
IDLgrText::GetCTM - Returns the 4 x 4 graphics transform matrix
OBJ_DESTROY,Obj or from the current object upward through the graphics tree.
Obj->[IDLgrTessellator::]Cleanup Result = Obj->[IDLgrText::]GetCTM(
IDLgrTessellator::Init - Initializes the tessellator object. [, DESTINATION=objref] [, PATH=objref(s)]
Obj = OBJ_NEW('IDLgrTessellator') or [, TOP=objref to IDLgrModel object] )
Result = Obj->[IDLgrTessellator::]Init() IDLgrText::GetIndexAtCoord - Returns the index of the charac-
ter in the string closest to a specified screen coordinate.
IDLgrTessellator::Reset - Resets the object’s internal state.
Result = Obj->[IDLgrText::]GetIndexAtCoord(Window,
Obj->[IDLgrTessellator::]Reset
X, Y)
IDLgrTessellator::Tessellate - Performs the actual tessellation.
IDLgrText::GetIndexRelativeTo - returns the index of the char-
Result = Obj->[IDLgrTessellator::]Tessellate( Vertices, acter in the string closest to a given coordinate.
Poly [, AUXDATA=variable] [, /QUIET] ) Result = Obj->[IDLgrText::]GetIndexRelativeTo
(Window, Index, Above)
IDLgrText::GetProperty - Retrieves the value of a property or
group of properties for the text.
Obj->[IDLgrText::]GetProperty[, PROPERTY=variable]

IDL Quick Reference


104 Alphabetical List of IDL Routines

IDLgrText::Init - Initializes the text object. IDLgrView::Add - Adds a child to this view.
Obj = OBJ_NEW('IDLgrText'[, String/string array] Obj->[IDLgrView::]Add, Model [, POSITION=index]
[, PROPERTY=value]) or
IDLgrView::Cleanup - Performs all cleanup on the object.
Result = Obj->[IDLgrText::]Init( String/sting array]
OBJ_DESTROY, Obj or Obj->[IDLgrView::]Cleanup
[, PROPERTY=value])
IDLgrView::GetByName - Finds contained objects by name.
IDLgrText::SetProperty - exposes all of the properties and meth-
ods of the IDLgrText superclass. Result = Obj->[IDLgrView::]GetByName(Name)
Obj->[IDLgrText::]SetProperty[, PROPERTY=value] IDLgrView::GetProperty - Retrieves the value of the property or
group of properties for the view.
IDLgrTextEdit - Represents one or more text strings that share com-
mon rendering attributes. Obj->[IDLgrView::]GetProperty [, PROPERTY=variable]
Properties: IDgrTextEdit inherits all properties from the IDLgrView::Init - Initializes the view object.
IDLgrText superclass. See ““IDLgrText” on page 103” Obj = OBJ_NEW('IDLgrView'[, PROPERTY=value]) or
for details. Result = Obj->[IDLgrView::]Init([PROPERTY=value])
IDLgrTextEdit::Cleanup - Performs all cleanup on the object. IDLgrView::SetProperty - Sets the value of the property or group
OBJ_DESTROY, Obj or Obj->[IDLgrTextEdit::]Cleanup of properties for the view.
Obj->[IDLgrView::]SetProperty[, PROPERTY=value]
IDLgrText::Delete - Removes text from a string at the current cursor
position. IDLgrViewgroup - A simple container object that contains one or
Obj->[IDLgrTextEdit::]DELETE [, /AFTER] more IDLgrView objects. An IDLgrScene can contain one or more
of these objects.
[, TEXT=variable]
Properties: [, ALL{Get}=variable] [, /HIDE{Get, Init,
IDLgrText::GetProperty - Retrieves the value of a property or Set}] [, PARENT{Get}=variable]
group of properties for the text.
[, /REGISTER_PROPERTIES{Get, Init, Set}]
Obj-
>[IDLgrTextEdit::]GetProperty[, PROPERTY=variable] IDLgrViewgroup::Add - Verifies that the added item is not an
instance of the IDLgrScene or IDLgrViewgroup object.
IDLgrTextEdit::Init - Initializes the text object. Obj->[IDLgrViewgroup::]Add, Object
Obj = OBJ_NEW('IDLgrTextEdit'[, String/string array] [, POSITION=index]
[, PROPERTY=value]) or
Result = Obj->[IDLgrTextEdit::]Init( String/sting array] IDLgrViewgroup::Cleanup - Performs all cleanup on the object.
[, PROPERTY=value]) OBJ_DESTROY,Obj or
Obj->[IDLgrViewgroup::]Cleanup
IDLgrTextEdit::Insert - Inserts text at the current cursor position.
Obj->[IDLgrTextEdit::]Insert, Text IDLgrViewgroup::GetByName - Finds contained objects by
name.
IDLgrTextEdit::MoveCursor - Moves the cursor one space in Result = Obj->[IDLgrViewgroup::]GetByName(Name)
the direction indicated by the direction argument.
IDLgrViewgroup::GetProperty - Retrieves the value of a prop-
Obj->[IDLgrTextEdit::]MoveCursor [, DIRECTION={0 | erty or group of properties for the viewgroup object.
1 | 2 | 3}] [, /SELECT] [, WINDOW=objref] Obj->[IDLgrViewgroup::]GetProperty
IDLgrTextEdit::SetProperty - exposes all of the properties and [, PROPERTY=variable]
methods of the IDLgrText superclass.
IDLgrViewgroup::Init - Initializes the viewgroup object.
Obj->[IDLgrTextEdit::]SetProperty[, PROPERTY=value]
Obj = OBJ_NEW('IDLgrViewgroup'[, PROPERTY=value])
IDLgrView - Represents a rectangular area in which graphics objects or Result = Obj->[IDLgrViewgroup::]Init(
are drawn. It is a container for objects of the IDLgrModel class.
[PROPERTY=value])
Properties: [, ALL{Get}=variable]
[, PARENT{Get}=variable] [, COLOR{Get, Init, IDLgrViewgroup::SetProperty - Sets the value of a property or
group of properties for the viewgroup.
Set}=index or RGB vector] [, DEPTH_CUE{Get, Init,
Set}=[zbright, zdim]] [, DIMENSIONS{Get, Init, Obj->[IDLgrViewgroup::]SetProperty
Set}=[width, height]] [, DOUBLE {Get, Init, Set}=value] [, PROPERTY=value]
[, EYE{Get, Init, Set}=distance] [, LOCATION{Get, Init, IDLgrVolume - Represents mapping from a 3D array of data to a 3D
Set}=[x, y]] [, PROJECTION{Get, Init, Set}={1 | 2}] array of voxel colors, which, when drawn, are projected to two
dimensions.
[, /REGISTER_PROPERTIES{Get, Init, Set}]
Properties: [, ALL{Get}=variable]
[, /TRANSPARENT{Get, Init, Set}] [, UNITS{Get, Init,
[,ALPHA_CHANNEL{Get, Init, Set}=value]
Set}={0 | 1 | 2 | 3}] [, VIEWPLANE_RECT{Get, Init,
[, AMBIENT{Get, Init, Set}=RGB vector]
Set}=[x, y, width, height]] [, ZCLIP{Get, Init,
Set}=[near, far]]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 105

IDLgrVolume Properties - continued IDLgrVolume::PickVoxel - Computes the coordinates of the voxel


[, BOUNDS{Get, Init, Set}=[xmin, ymin, zmin, xmax, ymax, projected to a location specified by the 2D device coordinates point,
[xi, yi], and the current Z-buffer.
zmax]] [, CLIP_PLANES{Get, Init, Set}=array]
[, COMPOSITE_FUNCTION{Get, Init, Set}={0 | 1 | 2 | 3}] Result = Obj->[IDLgrVolume::]PickVoxel ( Win, View,
[, DATA0{Get, Init, Set}=[dx, dy, dz]] [, DATA1{Get, Init, Point [, PATH=objref(s)] )
Set}=[dx, dy, dz]] [, DATA2{Get, Init, Set}=[dx, dy, dz]] IDLgrVolume::SetProperty - Sets the value of a property or
[, DATA3{Get, Init, Set}=[dx, dy, dz]] [, DEPTH_CUE{Get, group of properties for the volume.
Init, Set}=[zbright, zdim]] [, /HIDE{Get, Init, Set}] Obj->[IDLgrVolume::]SetProperty[, PROPERTY=value]
[, HINTS{Get, Init, Set}={0 | 1 | 2 | 3}] [, /NO_COPY]
[, /INTERPOLATE{Get, Init, Set}] IDLgrVRML - Saves the contents of an Object Graphics hierarchy into
[, /LIGHTING_MODEL{Get, Init, Set}] a VRML 2.0 format file.
[, OPACITY_TABLE0{Get, Init, Set}=256-element byte Properties: [, ALL{Get}=variable]
array] [, OPACITY_TABLE1{Get, Init, Set}=256-element [, SCREEN_DIMENSIONS{Get}=variable]
byte array] [, PARENT{Get}=variable] [, COLOR_MODEL{Get, Init}={0 | 1}]
[, RENDER_STEP{Get, Init, Set}=[x, y, z]] [, DIMENSIONS{Get, Init, Set}=[width, height]]
[, RGB_TABLE0{Get, Init, Set}=256 x 3-element byte [, FILENAME{Get, Init, Set}=string]
array] [, RGB_TABLE1{Get, Init, Set}=256 x 3-element [, GRAPHICS_TREE{Get, Init, Set}=objref]
byte array] [, /REGISTER_PROPERTIES{Get, Init, Set}] [, N_COLORS{Get, Init}=integer{2 to 256}]
[, SHADER{Get, Init, Set}=objref] [, /TWO_SIDED{Get, [, PALETTE{Get, Init, Set}=objref] [, QUALITY{Get,
Init, Set}] [, VALID_DATA{Get}=variable] Init, Set}={0 | 1 | 2}] [, /REGISTER_PROPERTIES{Get,
[, VOLUME_SELECT{Get, Init, Set}={0 | 1 | 2}] Init, Set}] [, RESOLUTION{Get, Init, Set}=[xres, yres]]
[, XCOORD_CONV{Get, Init, Set}=vector] [, UNITS{Get, Init, Set}={0 | 1 | 2 | 3}]
[, XRANGE{Get}=variable] [, YCOORD_CONV{Get, [, WORLDINFO{Init}=string array]
Init, Set}=vector] [, YRANGE{Get}=variable] [, WORLDTITLE{Init}=string]
[, /ZBUFFER{Get, Init, Set}] [, ZCOORD_CONV{Get,
IDLgrVRML::Cleanup - Performs all cleanup on the object.
Init, Set}=vector] [, ZRANGE{Get}=variable]
OBJ_DESTROY, Obj or Obj->[IDLgrVRML::]Cleanup
[, ZERO_OPACITY_SKIP{Get, Init, Set}={0 | 1}]
IDLgrVRML::Draw - Draws a picture to this graphics destination.
IDLgrVolume::Cleanup - Performs all cleanup on the object.
Obj->[IDLgrVRML::]Draw [, Picture]
OBJ_DESTROY, Obj or Obj->[IDLgrVolume::]Cleanup
IDLgrVRML::GetDeviceInfo - Returns information that allows
IDLgrVolume::ComputeBounds - Computes the smallest IDL applications to make decisions for optimal performance.
bounding box that contains all voxels whose opacity lookup is
greater than a given opacity value. Obj–>[IDLgrVRML::]GetDeviceInfo [, ALL=variable]
Obj->[IDLgrVolume::]ComputeBounds [, MAX_NUM_CLIP_PLANES=variable]
[, OPACITY=value] [, /RESET] [, VOLUMES=int array] [, MAX_TEXTURE_DIMENSIONS=variable]
[, MAX_VIEWPORT_DIMENSIONS=variable]
IDLgrVolume::GetCTM - Returns the 4 x 4 graphics transform [, NAME=variable] [, NUM_CPUS=variable]
matrix from the current object upward through the graphics tree.
[, VENDOR=variable] [, VERSION=variable]
Result = Obj->[IDLgrVolume::]GetCTM(
[, DESTINATION=objref] [, PATH=objref(s)] IDLgrVRML::GetFontnames - Returns the list of available fonts
[, TOP=objref to IDLgrModel object] ) that can be used in IDLgrFont objects.
Return = Obj->[IDLgrVRML::]GetFontnames
IDLgrVolume::GetProperty - Retrieves the value of a property or
group of properties for the volume. ( FamilyName [, IDL_FONTS={0 | 1 | 2}]
[, STYLES=string] )
Obj->[IDLgrVolume::]GetProperty
[, PROPERTY=variable] [, /NO_COPY] IDLgrVRML::GetProperty - Retrieves the value of a property or
group of properties for the VRML object.
IDLgrVolume::Init - Initializes the volume object. Obj->[IDLgrVRML::]GetProperty
Obj = OBJ_NEW('IDLgrVolume' [, vol0 [, vol1 [, vol2 [, PROPERTY=variable]
[, vol3]]]] [, PROPERTY=value] [, /NO_COPY]) or
Result = Obj->[IDLgrVolume::]Init( [vol0 [, vol1 [, vol2 IDLgrVRML::GetTextDimensions - Retrieves the dimensions
of a text object that will be rendered in the clipboard buffer.
[, vol3]]]] [, PROPERTY=value] [, /NO_COPY])
Result = Obj->[IDLgrVRML::]GetTextDimensions(
TextObj [, DESCENT=variable] [, PATH=objref(s)] )

IDL Quick Reference


106 Alphabetical List of IDL Routines

IDLgrVRML::Init - Initializes the VRML object. IDLgrWindow::GetDeviceInfo - Returns information that allows
Obj = OBJ_NEW('IDLgrVRML'[, PROPERTY=value]) or IDL applications to make decisions for optimal performance.
Result = Obj->[IDLgrVRML::]Init([PROPERTY=value]) Obj –> [IDLgrWindow::]GetDeviceInfo [, ALL=variable]
[, FRAMEBUFFER_OBJECT_EXTENSION=variable]
IDLgrVRML::SetProperty - Sets the value of a property or group [, MAX_FRAGMENT_UNIFORM_COMPONENTS=
of properties for the VRML world.
variable] [, MAX_NUM_CLIP_PLANES=variable]
Obj->[IDLgrVRML::]SetProperty[, PROPERTY=value]
[, MAX_TEXTURE_DIMENSIONS=variable]
IDLgrWindow - Represents an on-screen area on a display device that [, MAX_TILE_DIMENSIONS=variable]
serves as a graphics destination.
[, MAX_TEXTURE_IMAGE_UNITS=variable]
Properties: [, ALL{Get}=variable] [, MAX_VERTEX_ATTRIBUTES=variable]
[, COLOR_MODEL{Get, Init}={0 | 1}] [, MAX_VERTEX_TEXTURE_IMAGE_UNITS=
[, DIMENSIONS{Get, Init, Set} =[width, height]] variable]
[, DISPLAY_NAME{Get}(X Windows Only)=variable] [, MAX_VERTEX_UNIFORM_COMPONENTS=
[, IMAGE_DATA{Get}=variable] variable]
[, GRAPHICS_TREE{Get, Init, Set}=objref of type [, MAX_VIEWPORT_DIMENSIONS=variable]
IDLgrScene, IDLgrViewgroup, or IDLgrView] [, NAME=variable] [, NUM_CPUS=variable]
[, LOCATION{Get, Init, Set}=[x, y]] [, SHADING_LANGUAGE_VERSION=variable]
[, MINIMUM_VIRTUAL_DIMENSIONS{Get, Init, [, VENDOR=variable] [, VERSION=variable]
Set}=[width, height]] [, N_COLORS{Get,
Init}=integer{2 to 256}] [, PALETTE{Get, Init, IDLgrWindow::GetDimensions - Returns a two-element vec-
tor, [width, height], representing the visible dimensions (in device
Set}=objref] [, QUALITY{Get, Init, Set}={0 | 1 | 2}] units) of this window.
[, /REGISTER_PROPERTIES{Get, Init, Set}] Result = Obj –> [IDLgrWindow::]GetDimensions( [,
[, RENDERER{Get, Init}={0 | 1}] [, RESOLUTION MINIMUM_VIRTUAL_DIMENSIONS=variable]
{Get}=variable] [, RETAIN{Get, Init}={0 | 1 | 2}] [, ORIGINAL_VIRTUAL_DIMENSIONS=variable]
[, SCREEN_DIMENSIONS{Get}=variable] [, VIRTUAL_DIMENSIONS=variable]
[, TITLE{Get, Init, Set}=string] [, UNITS{Get, Init, [, VISIBLE_LOCATION=variable] )
Set}={0 | 1 | 2 | 3}]
[, VIEWPORT_DIMENSIONS{Get}=[width, height]] DLgrWindow::GetFontnames - Returns the list of available
fonts that can be used in IDLgrFont objects.
[, VIRTUAL_DIMENSIONS{Get, Init, Set}=[width,
Return = Obj-
height]] [, VISIBLE_LOCATION{Get, Init, Set}=[x, y]]
>[IDLgrWindow::]GetFontnames(FamilyName
[, ZBUFFER_DATA{Get}=variable]
[, IDL_FONTS={0 | 1 | 2}] [, STYLES=string] )
[, ZOOM_BASE{Get, Init, Set}=value]
[, ZOOM_NSTEP{Get}=variable] IDLgrWindow::GetProperty - Retrieves the value of a property
or group of properties for the window.
IDLgrWindow::Cleanup - Performs all cleanup on the object. Obj->[IDLgrWindow::]GetProperty
OBJ_DESTROY, Obj or Obj->[IDLgrWindow::]Cleanup [, PROPERTY=variable]
IDLgrWindow::Draw - Draws the specified scene or view object to IDLgrWindow::GetTextDimensions - Retrieves the dimen-
this graphics destination. sions of a text object that will be rendered in the window.
Obj->[IDLgrWindow::]Draw [, Picture] Result = Obj->[IDLgrWindow::]GetTextDimensions(
[, CREATE_INSTANCE={1 | 2}] TextObj [, DESCENT=variable] [, PATH=objref(s)] )
[, DRAW_INSTANCE={1 | 2}]
IDLgrWindow::Iconify - Iconifies or de-iconifies the window.
IDLgrWindow::Erase - Erases the entire contents of the window. Obj->[IDLgrWindow::]Iconify, IconFlag
Obj->[IDLgrWindow::]Erase [, COLOR=index or RGB
IDLgrWindow::Init - Initializes the window object.
vector]
Obj = OBJ_NEW('IDLgrWindow'[, PROPERTY=value])
IDLgrWindow::GetContiguousPixels - Returns an array of or Result = Obj->[IDLgrWindow::]Init(
long integers whose length is equal to the number of colors avail-
able in the index color mode (value of N_COLORS property). [, PROPERTY=value])
Return = Obj->[IDLgrWindow::]GetContiguousPixels( ) IDLgrWindow::OnEnter - Handles notification from the window
that a mouse enter event has occurred.
Obj->[IDLgrWindow::]OnEnter
IDLgrWindow::OnExit - Handles notification from the window
that a mouse exit event has occurred.
Obj->[IDLgrWindow::]OnExit

Objects IDL Quick Reference


Alphabetical List of IDL Routines 107

IDLgrWindow::OnExpose - Handles notification from the win- IDLgrWindow::SetCurrentZoom - Sets the current zoom factor
dow that an expose event has occurred. for this window. The current zoom factor, the virtual canvas dimen-
sions, and the visible dimensions of the window are updated to
Obj->[IDLgrWindow::]OnExpose, X, Y, Width, Height reflect the new zoom factor.
IDLgrWindow::OnKeyboard - Handles notification (from the Obj->[IDLgrWindow::]SetCurrentZoom , ZoomFactor
native window device) that a keyboard event has occurred, and [, /RESET]
passes along that notification to all observers in the list of window
event observers. IDLgrWindow::SetProperty - Sets the value of a property or
Obj->[IDLgrWindow::]OnKeyboard, IsASCII, Character, group of properties for the window.
KeySymbol, X, Y, Press, Release, Modifiers Obj->[IDLgrWindow::]SetProperty [, PROPERTY=value]
IDLgrWindow::OnMouseDown - Handles notification (from the IDLgrWindow::Show - Exposes or hides a window.
native window device) that a mouse down event has occurred, and Obj->[IDLgrWindow::]Show, Position
passes along that notification to all observers in the list of window
event observers. IDLgrWindow::ZoomIn - causes the current zoom factor for this
Obj->[IDLgrWindow::]OnMouseDown, X, Y, ButtonMask, window to be increased (that is, multiplied by the factor given by
Modifiers, NumClicks the window's ZOOM_BASE property).
Obj->[IDLgrWindow::]ZoomIn
IDLgrWindow::OnMouseMotion - Handles notification (from
the native window device) that a mouse motion event has occurred, IDLgrWindow::ZoomOut - causes the current zoom factor for this
and passes along that notification to all observers in the list of win- window to be decreased (that is, divided by the factor given by the
dow event observers. window's ZOOM_BASE property).
Obj->[IDLgrWindow::]OnMouseMotion, X, Y, Modifiers Obj->[IDLgrWindow::]ZoomOut
IDLgrWindow::OnMouseUp - Handles notification (from the IDLitCommand - The base functionality for the iTools command
native window device) that a mouse up event has occurred, and buffer system.
passes along that notification to all observers in the list of window
event observers. Properties: [, SKIP_REDO{Get, Init, Set}=0 | 1]
Obj->[IDLgrWindow::]OnMouseUp, X, Y, ButtonMask [, SKIP_UNDO{Get, Init, Set}=0 | 1]
[, TARGET_IDENTIFIER{Get, Init, Set}=string]
IDLgrWindow::OnResize - Handles notification (from the native [, OPERATION_IDENTIFIER{Get, Init, Set}=string]
window device) that a resize event has occurred.
Obj->[IDLgrWindow::]OnResize, Width, Height IDLitCommand::AddItem - Adds the specified data item to the
data dictionary associated with this object.
IDLgrWindow::OnWheel - Handles notification (from the native Result = Obj->[IDLitCommand::]AddItem(StrItem, Item [,
window device) that a mouse wheel event has occurred.
/OVERWRITE])
Obj->[IDLgrWindow::]OnWheel, X, Y, Delta, Modifiers
IDLitCommand::Cleanup - Performs all cleanup on the object.
IDLgrWindow::Pickdata - Maps a point in the 2D device space of
the window to a point in the 3D data space of an object tree. OBJ_DESTROY, Obj or
Result = Obj->[IDLgrWindow::]Pickdata( View, Object, Obj-> [IDLitCommand::]Cleanup()
Location, XYZLocation [, DIMENSIONS=[width,height]] IDLitCommand::GetItem - Retrieves the specified item from the
[, PATH=objref(s)] [, PICK_STATUS=variable]) data dictionary associated with this object.
Result = Obj->[IDLitCommand::]GetItem(StrItem, Item)
IDLgrWindow::QueryRequiredTiles - Returns an array of
named structures containing information regarding which tile data IDLitCommand::GetProperty - Retrieves the value of a property
is needed for display. Used with a tiled IDLgrImage object. or group of properties of a command object.
Result = Obj->[IDLgrWindow::]QueryRequiredTiles Obj->[IDLitCommand::]GetProperty
(View, Image [, COUNT=variable] [, PROPERTY=variable]
[, ALL_VISIBLE=value] [, PATH=objref(s)])
IDLitCommand::GetSize - Returns an approximate value for the
IDLgrWindow::Read - Reads an image from a window. amount of memory being used by the items in the data dictionary
associated with this object.
Result = Obj->[IDLgrWindow::]Read( )
Result = Obj->[IDLitCommand::]GetSize(
IDLgrWindow::Select - Returns a list of objects selected. [, /KILOBYTES])
Result = Obj->[IDLgrWindow::]Select( Picture, XY
IDLitCommand::Init - Initializes the object and allows specification
[, DIMENSIONS=[width, height]] [, /ORDER] of items associated with it.
[, SUB_SELECTION=variable] [, UNITS={0 | 1 | 2 | 3}])
Obj = OBJ_NEW('IDLitCommand' [, PROPERTY=value])
IDLgrWindow::SetCurrentCursor - Sets the current cursor or
image to be used while positioned over a drawing area. Result = Obj->[IDLitCommand::]Init(
Obj->[IDLgrWindow::]SetCurrentCursor [, CursorName] [PROPERTY=value])
[, IMAGE=16 x 16 bitmap] [, MASK=16 x 16 bitmap]
[, HOTSPOT=[x, y]]
X Windows Only Keywords: [, STANDARD=index]

IDL Quick Reference


108 Alphabetical List of IDL Routines

IDLitCommand::SetProperty - Sets the value of a property or IDLitComponent::Init - Initializes the IDLitComponent object
group of properties for the command object. Obj = OBJ_NEW(’IDLitComponent’ [, PROPERTY=value] )
Obj->[IDLitCommand::]SetProperty or
[, PROPERTY=value] Result = Obj->[IDLitComponent::]Init(
IDLitCommandSet - A container for IDLitCommand objects, which [, PROPERTY=value])
allows a group of commands to be managed as a single item.
IDLitComponent::NotifyBridge - Broadcasts a notification mes-
IDLitCommandSet::Cleanup - Performs all cleanup on the object. sage to the Export Bridge object that is wrapping the IDLitComponent
OBJ_DESTROY, Obj or object.
Obj-> [IDLitCommandSet::]Cleanup() Result = Obj-> [IDLitComponent::]NotifyBridge(IdMessage,
Value)
IDLitCommandSet::GetSize - Returns an approximate value for the
amount of memory being used by the items contained by this com- IDLitComponent::QueryProperty - Checks whether a property
mand set. identifier is registered, or retrieves a list of all registered properties.
Result = Obj->[IDLitCommand::]GetSize( [/KILOBYTES]) Result = Obj->[IDLitComponent::]QueryProperty(
IDLitCommandSet::Init - Initializes the object. [PropertyIdentifier])
Obj = OBJ_NEW('IDLitCommandSet') IDLitComponent::RegisterProperty - Registers a property as
or belonging to the component.
Result = Obj->[IDLitCommandSet::]Init() Obj->[IDLitComponent::]RegisterProperty,
PropertyIdentifier [, Type] [, /BOOLEAN] [, /COLOR]
IDLitComponent - A core or base component, from which all other
components subclass. [, DESCRIPTION=string] [, ENUMLIST=stringvector]
Properties: [, COMPONENT_VERSION{Get}=value] [, /FLOAT] [, /HIDE] [, /INTEGER] [, /LINESTYLE]
[, DESCRIPTION{Get, Init, Set}=string] [, ICON{Get, Init, [, NAME=string] [, /SENSITIVE] [, /STRING]
Set}=string] [, HELP{Get, Init, Set}=string] [, /SYMBOL] [, /THICKNESS] [, /UNDEFINED]
[, IDENTIFIER{Get, Init, Set}=string] [, NAME{Get, Init, [, USERDEF=string] [, VALID_RANGE=vector]
Set}=string] [, /PRIVATE{Get, Init, Set}] [, UVALUE{Get, IDLitComponent::Restore - Performs any transitional work
Init, Set}=value] required after an object has been restored from a SAVE file.
Obj->[IDLitComponent::]Restore
IDLitComponent::Cleanup - Performs all cleanup on the object.
OBJ_DESTROY, Obj or IDLitComponent::SetProperty - Sets the value of an IDLitCompo-
nent property or properties.
Obj->[IDLitComponent::]Cleanup
Obj->[IDLitComponent::]SetProperty [, PROPERTY=value]
IDLitCompoment::EditUserDefProperty - Defines the inter- [, /NO_COPY]
face that is displayed when a user selects the “Edit” button on a user-
defined property in the property sheet interface. IDLitComponent::SetPropertyAttribute - Sets one or more
Result = Obj->[IDLitComponent::]EditUserDefProperty( property attributes for a registered property.
iTool, PropertyIdentifier) Obj->[IDLitComponent::]SetPropertyAttribute,
PropertyIdentifier
IDLitComponent::GetFullIdentifier - Navigates the iTool object
container hierarchy of the object on which it is called and retrieves the IDLitComponent::SetPropertyByIdentifier - Sets the value of
fully-qualified object identifier. an IDLitComponent property.
Result = Obj->[IDLitComponent::]GetFullIdentifier( Obj->[IDLitComponent::]SetPropertyByIdentifier,
[Objref]) PropertyIdentifier, Value
IDLitComponent::GetProperty - Retrieves the value of an IDLit- IDLitComponent::UpdateComponentVersion - Updates the
Component property or properties. value of the COMPONENT_VERSION property for the specified
Obj->[IDLitComponent::]GetProperty object to the current release of IDL.
[, PROPERTY=variable] [, /NO_COPY] Obj->[IDLitComponent::]UpdateComponentVersion
IDLitComponent::GetPropertyAttribute - Retrieves property IDLitContainer - A specialization of the IDL_Container class that man-
attribute values for a registered property. ages a collection of IDLitComponents and provides methods for
working with the Identifier system of the iTools framework.
Obj->[IDLitComponent::]GetPropertyAttribute,
PropertyIdentifier [, TYPE=variable] IDLitContainer::Add - Adds items to the container object.
Obj->[IDLitContainer::]Add, Components [, /NO_NOTIFY]
IDLitComponent::GetPropertyByIdentifier - Retrieves the
value of an IDLitComponent property. IDLitContainer::AddByIdentifier - Adds an object to the container
Result = Obj->[IDLitComponent::]GetPropertyByIdentifier( hierarchy in the position specified by the Identifier argument.
PropertyIdentifier, Value) Obj->[IDLitContainer::]AddByIdentifier, Identifier, Item
[, FOLDER_CLASSNAME=string]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 109

IDLitContainer::Cleanup - Performs all cleanup on the object. IDLitData::GetProperty - Retrieves the value of an IDLitData
OBJ_DESTROY, Obj or Obj->[IDLitContainer::]Cleanup property.
Obj->[IDLitData::]GetProperty[, PROPERTY=variable]
IDLitContainer::FindIdentifiers - Retrieves the full identifiers
for items within an iTool container. IDLitData::GetSize - Returns an approximate value for the amount
Result = Obj->IDLitContainer::FindIdentifiers([Pattern] of memory being used by the data object.
[, COUNT=variable] [, /LEAF_NODES] ) Result = Obj->[IDLitData::]GetSize()

IDLitContainer::Get - Retrieves items from the container. IDLitData::Init - Initializes the IDLitData object.
Result = Obj->[IDLitContainer::]Get([, /ALL] Obj = OBJ_NEW('IDLitData'[, Data]
[, COUNT=variable] [, ISA=string or array of strings] [, PROPERTY=value]) or
[, POSITION=index or array of indices] Result = Obj->[IDLitData::]Init([Data]
[, /SKIP_PRIVATE]) [, PROPERTY=value])

IDLitContainer::GetByIdentifier - Retrieves an object from a IDLitData::NotifyDataChange - Is called when a data object has
container hierarchy using the specified identifier to locate the been changed; it is part of the notification process that allows data
object. updates to be reflected by visualizations that use the data. It works
in conjunction with the NotifyDataComplete method to provide a
Result = Obj->[IDLitContainer::]GetByIdentifier( two-pass change notification system that minimizes the number of
Identifier) operations performed when a data object changes.
Obj->[IDLitData::]NotifyDataChange
IDLitContainer::Init - Initializes the object.
Obj = OBJ_NEW(‘IDLitContainer’) or IDLitData::NotifyDataComplete - Is called after a data object
has been changed; it is part of the notification process that allows
Result = Obj->[IDLitContainer::]Init() data updates to be reflected by visualizations that use the data. It
works in conjunction with the NotifyDataChange method to pro-
IDLitContainer::Remove - Removes items from the container. vide a two-pass change notification system that minimizes the num-
Obj->[IDLitContainer::]Remove, Components ber of operations performed when a data object changes.
[, /NO_NOTIFY] Obj->[IDLitData::]NotifyDataComplete
IDLitContainer::RemoveByIdentifier - Removes an object IDLitData::RemoveDataObserver - Unregisters an object that
from a container hierarchy using the specified identifier to locate has been registered as an observer of this data object.
the object. Obj->[IDLitData::]RemoveDataObserver, Observer
Result = Obj->[IDLitContainer::]RemoveByIdentifier(
IDLitData::SetData - Copies the data from an IDL variable or
Identifier) expression into the data object, and notifies all its observers that the
data has changed.
IDLitData - A generic data storage object that can hold any IDL data
type available. It provides typing, metadata, and data change notifi- Result = Obj->[IDLitData::]SetData(Data[, Identifier]
cation functionality. When coupled with IDLitDataContainer, it [, /NO_COPY] [, /NULL])
forms the element for the construction of composite data types.
Properties: [, /HIDE{Get, Init, Set}] IDLitData::SetProperty - Sets the value of an IDLitData property
[, READ_ONLY{Init}] [, TYPE{Get, Init}=string] Obj->[IDLitData::]SetProperty[, PROPERTY=value]
IDLitData::AddDataObserver - Specifies an object (the IDLitDataContainer - A container for IDLitData and IDLitData-
Observer) that will be notified when the contents of the data object Container objects. This container is used to form hierarchical data
are changed. structures. Data and DataContainer objects can be added and
removed to/from a DataContainer during program execution, allow-
Obj->[IDLitData::]AddDataObserver, Observer ing for dynamic creation of composite data types.
IDLitData::Cleanup - Performs all cleanup operations on the object IDLitDataContainer::Add - Adds items to the data container
OBJ_DESTROY, Obj or Obj->[IDLitData::]Cleanup object.
Obj->[IDLitDataContainer::]Add, Data [, /NO_NOTIFY]
IDLitData::Copy - Returns an exact copy of the data object and its
contents, including registered property values. IDLitDataContainer::Cleanup - Performs all cleanup operations
Result = Obj->[IDLitData::]Copy() on the object.
OBJ_DESTROY, Obj or
IDLitData::GetByType - Returns all contained objects of the speci-
fied iTool data type. Obj->[IDLitDataContainer::]Cleanup
Result = Obj->[IDLitData::]GetByType(Type IDLitDataContainer::GetData - Retrieves the data value con-
[, COUNT=variable]) tained in the data object specified by the Identifier argument.
Result = Obj->[IDLitDataContainer::]GetData(Data
IDLitData::GetData - Retrieves the data stored in the object.
[, Identifier] [, /NO_COPY])
Result = Obj->[IDLitData::]GetData(Data[, Identifier]
[, NAN=variable] [, /NO_COPY])

IDL Quick Reference


110 Alphabetical List of IDL Routines

IDLitDataContainer::GetIdentifiers - Retrieves the object IDLitDataOperation::SetProperty - Sets the value of a property


identifiers for all data and data container objects contained in the or group of properties for the operation.
data container object.
Obj->[IDLitDataOperation::]SetProperty
Result = Obj->[IDLitDataContainer::]GetDataIdentifiers( [, PROPERTY=value]
[Pattern] [, /LEAF])
IDLitDataOperation::UndoExecute - IS called when a user
IDLitDataContainer::GetProperty - Retrieves the value of an selects the Undo operation after executing an IDLitDataOperation
IDLitDataContainer property that sets the value of the REVERSIBLE_OPERATION property to
1.
Obj->[IDLitDataContainer::]GetProperty
[, PROPERTY=variable] Result = Obj->[IDLitDataOperation::]UndoExecute( Data)

IDLitDataContainer::Init - Initializes the IDLitDataContainer IDLitDirectWindow - A representation of an on-screen area on a


object. display device that serves as a graphics destination. In contrast to
IDLgrWindow and IDLitWindow, the IDLitDirectWindow uses
Obj = OBJ_NEW('IDLitDataContainer'[, Data] Direct Graphics. This object is only for use with the Export
[, PROPERTY=value]) or Bridges.
Result = Obj->[IDLitDataContainer::]Init([Data] Properties: [, WINDOW_INDEX=integer]
[, PROPERTY=value]) IDLitDirectWindow::Cleanup - Performs all cleanup on the
object.
IDLitDataContainer::SetData - Stores data in the IDLitData
object specified by Identifier. OBJ_DESTROY, Obj or
Result = Obj->[IDLitDataContainer::]SetData(Data, Obj->[IDLitDirectWindow::]Cleanup
Identifier[, /NO_COPY] [, /NULL]) IDLitDirectWindow::GetProperty - Retrieves the value of an
IDLitDirectWindow property
IDLitDataContainer::SetProperty - Sets the value of an IDLit-
DataContainer property. Obj->[IDLitDirectWindow::]GetProperty
Obj->[IDLitDataContainer::]SetProperty [, PROPERTY=variable]
[, PROPERTY=value] IDLitDirectWindow::Init - Initializes the window object.
IDLitDataOperation - A subclass to IDLitOperation that automates Obj = OBJ_NEW('IDLitDirectWindow'
data access and automatically records information for the undo- [, PROPERTY=value]) or
redo system.
Result = Obj->[IDLitDirectWindow::]Init(
Properties: [, WITHIN_UI{GET}=1 | 0] [, PROPERTY=value])
IDLitDataOperation::Cleanup - Performs all cleanup on the IDLitDirectWindow::MakeCurrent - Sets the current graphics
object.
device to the window device and sets the current output window to
OBJ_DESTROY, Obj or the IDLitDirectWindow's window.
Obj->[IDLitOperation::]Cleanup Obj->[IDLitDirectWindow::]MakeCurrent
IDLitDataOperation::DoExecuteUI - Provides a way for the IDLitDirectWindow::OnEnter - Handles notification from the
iTool developer to request user input before performing an opera- window that a mouse enter event has occurred.
tion.
Obj->[IDLitDirectWindow::]OnEnter
Result = Obj->[IDLitDataOperation::]DoExecuteUI()
IDLitDirectWindow::OnExit - Handles notification from the win-
IDLitDataOperation::Execute - Contains the execution logic for dow that a mouse exit event has occurred.
the operation.
Obj->[IDLitDirectWindow::]OnExit
Result = Obj->[IDLitDataOperation::]Execute(Data)
IDLitDirectWindow::OnExpose - Handles notification from the
IDLitDataOperation::GetProperty - Retrieves the value of a window that an expose event has occurred.
property or group of properties of an operation object.
Obj->[IDLitDirectWindow::]OnExpose, X, Y, Width,
Obj->[IDLitDataOperation::]GetProperty Height
[, PROPERTY=variable]
IDLitDirectWindow::OnKeyboard - Handles notification (from
IDLitDataOperation::Init - Initializes the IDLitDataOperation the native window device) that a keyboard event has occurred, and
object and sets properties that define the behavior the operation pro- passes along that notification to all observers in the list of window
vides. event observers.
Obj = OBJ_NEW('IDLitDataOperation' Obj->[IDLitDirectWindow::]OnKeyboard, IsASCII,
[, PROPERTY=variable]) or Character, KeySymbol, X, Y, Press, Release, Modifiers
Result = Obj->[IDLitDataOperation::]Init(
IDLitDirectWindow::OnMouseDown - Handles notification
[, PROPERTY=variable]) (from the native window device) that a mouse down event has
occurred, and passes along that notification to all observers in the
list of window event observers.
Obj->[IDLitDirectWindow::]OnMouseDown, X, Y,
ButtonMask, Modifiers, NumClicks

Objects IDL Quick Reference


Alphabetical List of IDL Routines 111

IDLitDirectWindow::OnMouseMotion - Handles notification IDLitIMessaging::PromptUserText - Is used to prompt the


(from the native window device) that a mouse motion event has iTool user with a question and retrieve a text answer.
occurred, and passes along that notification to all observers in the
list of window event observers. Result = Obj->[IDLitIMessaging::PromptUserText(
StrPrompt, Answer [, TITLE=string])
Obj->[IDLitDirectWindow::]OnMouseMotion, X, Y,
Modifiers IDLitIMessaging::PromptUserYesNo - Is used to prompt the
user with a yes or no question and return an answer.
IDLitDirectWindow::OnMouseUp - Handles notification (from
the native window device) that a mouse up event has occurred, and Result = Obj->[IDLitIMessaging::PromptUserYesNo(
passes along that notification to all observers in the list of window StrPrompt, Answer [, TITLE=string])
event observers.
IDLitIMessaging::RemoveOnNotifyObserver - Is used to
Obj->[IDLitDirectWindow::]OnMouseUp, X, Y, un-register a specified iTool component object as wishing to receive
ButtonMask messages generated by the DoOnNotify method of another speci-
fied iTool component object.
IDLitDirectWindow::OnResize - Handles notification (from the Obj->[IDLitIMessaging::]RemoveOnNotifyObserver,
native window device) that a resize event has occurred.
IdObserver, IdSubject
Obj->[IDLitDirectWindow::]OnResizel, Width, Height
IDLitIMessaging::SignalError - Is used to signal an error in the
IDLitDirectWindow::OnWheel - Handles notification (from the system.
native window device) that a mouse wheel event has occurred.
Obj->[IDLitIMessaging::]SignalError, StrMessage
Obj->[IDLitDirectWindow::]OnWheel, X, Y, Delta,
[, CODE=string] [, SEVERITY=integer]
Modifiers
IDLitIMessaging::StatusMessage - Is used to display a status
IDLitDirectWindow::SetProperty - Sets the value of an IDLit- message to the user.
DirectWindow property.
Obj->[IDLitIMessaging::]StatusMessage, StrMessage
Obj->[IDLitDirectWindow::]SetProperty[,
[, SEGMENT_IDENTIFIER=string]
PROPERTY=value]
IDLitManipulator - The base functionality of the iTools manipulator
IDLitIMessaging - An interface providing common methods to send system.
or trigger messaging and error actions, which may occur during
execution. Properties: [, /BUTTON_EVENTS{Get, Init, Set}]
IDLitIMessaging::AddOnNofityObserver - Is used to register [, DEFAULT_CURSOR{Init}=string]
a specified iTool component object to receive messages generated [, DESCRIPTION{Get, Init, Set}=string]
by the DoOnNotify method of another specified iTool component
object. [, /DISABLE{Get, Init, Set}] [, DRAG_QUALITY{Get,
Init, Set}={0 | 1 | 2}] [, /KEYBOARD_EVENTS{Get,
Obj->[IDLitIMessaging::]AddOnNotifyObserver,
Init, Set}] [, /MOTION_EVENTS{Get, Init, Set}]
IdObserver, IdSubject
[, OPERATION_IDENTIFIER{Get, Init, Set}=string]
IDLitIMessaging::DoOnNotify - Is used to broadcast a notifica- [, PARAMETER_IDENTIFIER{Get, Init, Set}=string}]
tion message to iTool component objects that are observing the
source of the message. [, TRANSIENT_DEFAULT{Get, Init, Set}={0 | 1 | 2 | 3}]
Obj->[IDLitIMessaging::]DoOnNotify, IdOriginator, [, /TRANSIENT_MOTION{Get, Init, Set}]
IdMessage, Value [, TYPES{Get, Init}=string vector]
[, /VIEWS_ONLY{Init}] [VISUAL_TYPE{Get, Init,
IDLitIMessaging::ErrorMessage - Is used to display an error Set}=string]
message to the user.
Obj->[IDLitIMessaging::]ErrorMessage, StrMessage IDLitManipulator::Cleanup - Performs all cleanup on the object.
[, SEVERITY=integer] [, TITLE=string] OBJ_DESTROY, Obj or
[, /USE_LAST_ERROR] Obj->[IDLitManipulator::]Cleanup()
IDLitIMessaging::GetTool - Returns an object reference to the IDLitManipulator::CommitUndoValues - Is used to complete
iTool object associated with the object on which it is called. a transaction that is occurring as a result of the manipulator interac-
tion.
Result = Obj->[IDLitIMessaging::]GetTool()
Result = Obj->[IDLitManipulator::]CommitUndoValues(
IDLitIMessaging::ProbeStatusMessage - Is used to display [/UNCOMMENT])
a status message to the user, which is displayed in a data-specific
region of the user interface. IDLitManipulator::GetCursorType - Retrieves the name of the
Obj->[IDLitIMessaging::]ProbeStatusMessage, cursor to display for the manipulator.
StrMessage Result = Obj->[IDLitManipulator::]GetCursorType(
TypeIn, KeyMods)
IDLitIMessaging::ProgressBar - Is used to display a progress
bar to the user and update the displayed values. IDLitManipulator::GetProperty - Retrieves the value of an IDL-
Result = Obj->[IDLitIMessaging::]ProgressBar( itManipulator property
StrMessage [, CANCEL=string] [, PERCENT=value] Obj->[IDLitManipulator::]GetProperty
[, /SHUTDOWN]) [, PROPERTY=variable]

IDL Quick Reference


112 Alphabetical List of IDL Routines

IDLitManipulator::Init - Initializes the IDLitManipulator object IDLitManipulatorContainer::GetCurrent - Is used to get the


Obj = OBJ_NEW('IDLitManipulator' object reference of the current manipulator of the container.
[, PROPERTY=value]) or Result = Obj->[IDLitManipulatorContainer::] GetCurrent()
Result = Obj->[IDLitManipulator::]Init( IDLitManipulatorContainer::GetCurrentManipulator - Is
[, PROPERTY=value]) used to get the current manipulator of the system.
Result = Obj->[IDLitManipulatorContainer::]
IDLitManipulator::OnKeyboard - Is used when a keyboard
event occurs on the target window (Win). GetCurrentManipulator([, /IDENTIFIER])
Obj->[IDLitManipulator::]OnKeyboard, Win, IsASCII, IDLitManipulatorContainer::GetProperty - Retrieves the
Character, Key Value, X, Y, Press, Release, KeyMods value of an IDLitManipulatorContainer property
Obj->[IDLitManipulatorContainer::]GetProperty
IDLitManipulator::OnLoseCurrentManipulator - Is used
when this manipulator is no longer the current manipulator in the [, PROPERTY=variable]
system.
IDLitManipulatorContainer::Init - Initializes the IDLitManipu-
Obj->[IDLitManipulator::]OnLoseCurrentManipulator latorContainer object.
IDLitManipulator::OnMouseDown - Is used when a mouse Obj = OBJ_NEW('IDLitManipulatorContainer'
down event occurs on the target window. [, PROPERTY=value]) or
Obj->[IDLitManipulator::]OnMouseDown, Win, X, Y, Result = Obj->[IDLitManipulatorContainer::]Init(
IButton, KeyMods, NClicks [PROPERTY=value])
IDLitManipulator::OnMouseMotion - Manages the setting of IDLitManipulatorContainer::OnKeyboard - Is used when a
the cursor on the window if no mouse button is down. keyboard event occurs on the target window (Win).
Obj->[IDLitManipulator::]OnMouseMotion, Win, X, Y, Obj->[IDLitManipulator::]OnKeyboard, Win, IsASCII,
KeyMods Character, KeyValue, X, Y, Press, Release, KeyMods
IDLitManipulator::OnMouseUp - Is used when a mouse up IDLitManipulatorContainer::OnMouseDown - Is used
event occurs on the target window. when a mouse down event occurs on the target window.
Obj->[IDLitManipulator::]OnMouseUp, Win, X, Y, IButton Obj->[IDLitManipulatorContainer::]OnMouseDown, Win,
IDLitManipulator::OnWheel - Handles notification (from the X, Y, IButton, KeyMods, NClicks
native window device) that a mouse wheel event has occurred. IDLitManipulatorContainer::OnMouseMotion - Manages
Obj->[IDLitManipulator::]OnWheel, X, Y, Delta, Modifiers the setting of the cursor on the window if no mouse button is down.

IDLitManipulator::RecordUndoValues - Is used to begin Obj->[IDLitManipulatorContainer::]OnMouseMotion,


recording the transaction that is occurring as a result of the manipu- Win, X, Y, KeyMods
lator interaction. This method works in conjunction with the Com-
mitUndoValues method. IDLitManipulatorContainer::OnMouseUp - Is used when a
mouse up event occurs on the target window.
Result = Obj->[IDLitManipulator::]RecordUndoValues()
Obj->[IDLitManipulatorContainer::]OnMouseUp, Win, X,
IDLitManipulator::RegisterCursor - Defines the appearance Y, IButton
and name of the cursor associated with the manipulator.
Obj->[IDLitManipulator::]RegisterCursor, ArrCursor, IDLitManipulatorContainer::OnWheel - Handles notification
(from the native window device) that a mouse wheel event has
Name [, /DEFAULT] occurred.
IDLitManipulator::SetCurrentManipulator - Sets the manip- Obj->[IDLitManipulatorContainer::]OnWheel, X, Y, Delta,
ulator as the current manipulator in the system. Modifiers
Obj->[IDLitManipulator::]SetCurrentManipulator
IDLitManipulatorContainer::SetCurrent - Is used to set a
IDLitManipulator::SetProperty - Sets the value of an IDLitMa- manipulator within the container to be the current manipulator.
nipulator property Obj->[IDLitManipulatorContainer::]SetCurrent,
Obj->[IDLitManipulator::]SetProperty Manipulator
[, PROPERTY=value]
IDLitManipulatorContainer::SetCurrentManipulator - Is
IDLitManipulatorContainer - A container for IDLitManipulator used to set the current child manipulator in a manipulator hierarchy.
objects, which allows for the construction of manipulator hierar- Obj->[IDLitManipulatorContainer::]
chies. This container implements the concept of a current manipula-
tor for the items it contains. SetCurrentManipulator, Identifier
Property: [, /AUTO_SWITCH{Get, Init, Set}] IDLitManipulatorContainer::SetProperty - Sets the value of
an IDLitManipulatorContainer property
IDLitManipulatorContainer::Add - Is used to add a new manip-
ulator to the container. Obj->[IDLitManipulator::]SetProperty
Obj->[IDLitManipulatorContainer::]Add, Manipulator [, PROPERTY=value]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 113

IDLitManipulatorManager - A specialization of the manipulator IDLitOperation - The basis for all iTool operations. It defines how an
container (IDLitManipulatorContainer), which acts as the root of operation is executed and how information about the operation is
the manipulator hierarchy. recorded for the command transaction (undo-redo) system.
IDLitManipulatorManager::Add - Is used to add manipulators Properties: [, /EXPENSIVE_COMPUTATION{Get, Init}]
to the manipulator manager. [, /REVERSIBLE_OPERATION{Get, Init}]
Obj->[IDLitManipulatorManager::]Add, Manipulator [, /SHOW_EXECUTION_UI{Get, Init}] [, TYPES{Get,
[, /DEFAULT] Init}=string or string array]
IDLitManipulatorManager::AddManipulatorObserver - IDLitOperation::Cleanup - Performs all cleanup on the object.
Is used to add an observer to the manipulator system. OBJ_DESTROY, Obj or
Obj->[IDLitManipulatorManager::] Obj->[IDLitOperation::]Cleanup
AddManipulatorObserver, Observer
IDLitOperation::DoAction - Is called when an operation is
IDLitManipulatorManager::GetDefaultManipulator - requested by the iTools system, either as the result of a user action
Returns a reference to the manipulator that was most recently added such as selection of a menu item or toolbar button, or by another
operation.
as the default manipulator.
Result = Obj->[IDLitManipulatorManager::]-> Result = Obj->[IDLitOperation::]DoAction(Tool)
GetDefaultManipulator() IDLitOperation::GetProperty - Retrieves the value of a property
or group of properties of an operation object.
IDLitManipulatorManager::Init - Initializes the IDLitManipula-
torManager object Obj->[IDLitOperation::]GetProperty
Obj = OBJ_NEW('IDLitManipulatorManager' [, PROPERTY=variable]
[, PROPERTY=value]) or IDLitOperation::Init - Initializes the IDLitOperation object and sets
Result = Obj->[IDLitManipulatorManager::]Init( properties that define the behavior the operation provides.
[PROPERTY=value]) Obj = OBJ_NEW('IDLitOperation'
[, PROPERTY=variable]) or
IDLitManipulatorManager::RemoveManipulatorObserv
Result = Obj->[IDLitOperation::]Init(
er - Is used to remove a manipulator observer from the manipulator
object. [, PROPERTY=variable])
Obj->[IDLitManipulatorManager::] IDLitOperation::QueryAvailability - Determines whether an
RemoveManipulatorObserver, Observer operation is applicable for the selected data and/or visualization.
Result = Obj->[IDLitOperation::]QueryAvailability(Tools,
IDLitManipulatorVisual - The basis of all visual elements associ-
ated with an interactive manipulator. SelTypes)
Properties: [, /UNIFORM_SCALE] DLitOperation::RecordFinalValues - Records the information
[, VISUAL_TYPE=string] needed to redo an operation.
Result =
IDLitManipulatorVisual::Cleanup - Performs all cleanup on the
object. Obj->[IDLitOperation::]RecordFinalValues(CommandSe
OBJ_DESTROY, Obj or t, Targets [, IdProperty])
Obj->[IDLitManipulatorVisual::]Cleanup IDLitOperation::RecordInitialValues - Records the informa-
tion needed to undo an operation.
IDLitManipulatorVisual::GetProperty - Retrieves the value of
an IDLitManipulatorVisual property. Result = Obj->[IDLitOperation::]RecordInitialValues(
Obj->[IDLitManipulatorVisual::]GetProperty CommandSet, Targets[, IdProperty])

IDLitManipulatorVisual::Init - Initializes the IDLitManipulator- IDLitOperation::RedoOperation - Is called by the iTool system


Visual object. when the user requests the re-execution of an operation (usually by
selecting Redo from the iTool Edit menu or toolbar).
Obj = OBJ_NEW('IDLitManipulatorVisual'
Result = Obj->[IDLitOperation::]RedoOperation(
[, PROPERTY=value]) or
CommandSet)
Result = Obj->[IDLitManipulatorVisual::]Init(
[, PROPERTY=value]) IDLitOperation::SetProperty - Sets the value of a property or
group of properties for the operation.
IDLitManipulatorVisual::SetProperty - Sets the value of an Obj->[IDLitOperation::]SetProperty
IDLitManipulatorVisual property.
[, PROPERTY=value]
Obj->[IDLitManipulatorVisual::]SetProperty
[, PROPERTY=value] IDLitOperation::UndoOperation - Is called by the iTool system
when the user requests the un-execution of an operation (usually by
selecting Undo from the iTool Edit menu or toolbar).
Result = Obj->[IDLitOperation::]UndoOperation(
CommandSet)

IDL Quick Reference


114 Alphabetical List of IDL Routines

IDLitParameter - An interface providing parameter management IDLitParameter::SetParameterSet - Is used to associate an


methods to associate parameter names with IDLitData objects. IDLitParameterSet object with the visualization object’s parameter
interface.
IDLitParameter::Cleanup - Removes the data observer from each
data object in the visualization object’s parameter set, and cleans up Result =
the objects and pointers defined to hold parameter data when the Obj->[IDLitParameter::]SetParameterSet(ParamSet)
visualization object was created.
OBJ_DESTROY, Obj or IDLitParameterSet - A specialized subclass of the IDLitDataCon-
tainer class. This class provides the ability to associate names with
Obj->[IDLitParameter::]Cleanup() contained IDLitData objects.
IDLitParameter::GetParameter - Retrieves the IDLitData object IDLitParameterSet::Add - Is used to add data to the parameter set.
associated with a registered parameter. Obj->[IDLitParameterSet::]Add, Data
Result = Obj->[IDLitParameter::]GetParameter(Name [, PARAMETER_NAME=string]
[, /ALL] [, COUNT=variable]) [, /PRESERVE_LOCATION]
IDLitParameter::GetParameterAttribute - Retrieves the IDLitParameterSet::Cleanup - Performs all cleanup on the
value of an attribute associated with a registered parameter. parameter set object.
Obj->[IDLitParameter::]GetParameterAttribute, OBJ_DESTROY, Obj or
ParamName [, ATTRIBUTE=variable] Obj->[IDLitParameterSet::]Cleanup()
IDLitParameter::GetParameterSet - Returns a reference to the IDLitParameterSet::Copy - Returns a copy of the parameter set
IDLitParameterSet object associated with the visualization object. and its contents.
Result = Obj->[IDLitParameter::]GetParameterSet( Result = Obj->[IDLitParameterSet::]Copy()
[, /DEEP_COPY)
IDLitParameterSet::Get - Is used to retrieve one or more IDLit-
IDLitParameter::Init - Initializes object instance fields that contain Data objects from the parameter set.
parameter data. Result = Obj->[IDLitParameterSet::]Get([, /ALL]
Result = Obj->[IDLitParameter::]Init() [, COUNT=variable] [, NAME=variable]
IDLitParameter::OnDataChangeUpdate - Is called when a [, POSITION=integer])
data value has been updated or a new data object has been associ-
ated with the visualization object. IDLitParameterSet::GetByName - Returns the IDLitData
object associated with a specified named parameter.
Obj->[IDLitParameter::]OnDataChangeUpdate, Data,
Result = Obj->[IDLitParameterSet::]GetByName(Names
ParameterName
[, COUNT=variable] [, NAME=variable])
IDLitParameter::OnDataDisconnect - Is called when a data
value has been disconnected from a parameter. IDLitParameterSet::GetParameterName - Retrieves the
name of a specified parameter using a provided data object.
Obj->[IDLitParameter::]OnDataDisconnect,
Result = Obj->[IDLitParameterSet::]
ParameterName
GetParameterName(Data, Name)
IDLitParameter::QueryParamter - Checks whether a parame-
ter is registered, or retrieves a list of the of all registered parameters. IDLitParameterSet:Init: - Initializes the IDLitParameter object.
Result = Obj = OBJ_NEW('IDLitParameterSet') or
Obj->[IDLitParameter::]QueryParameter(ParamName Result = Obj->[IDLitParameterSet::]Init()
[, COUNT=variable] IDLitParameterSet::Remove - Is used to remove a data item
from the parameter set.
IDLitParameter::RegisterParameter - Registers a parameter
with the visualization object. Obj->[IDLitParameterSet::]Remove [, Items] [, /ALL]
Obj->[IDLitParameter::]RegisterParameter, Name [, POSITION=integer]
[, /BY_VALUE] [, DESCRIPTION=string] [, /INPUT] IDLitReader - The definition of the interface and the process used to
[, /OPTARGET] [, /OPTIONAL] [, /OUTPUT] construct file readers for the iTools framework. When a new file
[, TYPES=string] reader is constructed for the iTools system, a new class is sub-
classed from this IDLitReader class.
IDLitParameter::SetData - Is used to set data in this interface, IDLitReader::Cleanup - Performs all cleanup on the object, and
associating a data object with a given parameter. should be called by the subclass’ Cleanup method.
Result = Obj->[IDLitParameter::]SetData(Data OBJ_DESTROY, Obj or Obj->[IDLitReader::]Cleanup
[, /BY_VALUE] [, PARAMETER_NAME=string]
IDLitReader::GetData - Is called by the system to retrieve the data
[, /NO_UPDATE] from the current file, creating an iTool data object.
IDLitParameter::SetParameterAttribute - Sets one or more Result = Obj->[IDLitReader::]GetData(Data)
parameter attributes for a registered parameter.
IDLitReader::GetFileExtensions - Is called by the system to
Obj->[IDLitParameter::]SetParameterAttribute, retrieve the file extensions supported by this particular reader.
ParamName [, ATTRIBUTE=variable] Result = Obj->[IDLitReader::]GetFileExtensions(
[COUNT=variable])

Objects IDL Quick Reference


Alphabetical List of IDL Routines 115

IDLitReader::GetFilename - Is called by the system to retrieve IDLitTool::DoAction - Initiates an operation or action in the tool
the current filename associated with this reader. object.
Result = Obj->[IDLitReader::]GetFilename() Result = Obj->[IDLitTool::]DoAction(Identifier)
IDLitReader::GetProperty - Retrieves the value of an IDLi- IDLitTool::DoSetProperty - Sets a property on a target compo-
tReader property. nent object, and places the change in the undo/redo transaction
buffer.
Obj->[IDLitReader::]GetProperty
[, PROPERTY=variable] Result = Obj->[IDLitTool::]DoSetProperty(
TargetIdentifier, PropertyIdentifier, Value)
IDLitReader::Init - Initializes the IDLitReader object.
Obj = OBJ_NEW('IDLitReader', [, Extensions] IDLitTool::DoUIService - Initiates a request for a UI service to
execute.
[, PROPERTY=value]) or
Result = Obj->[IDLitTool::]DoUIService(
Result = Obj->[IDLitReader::]Init([, Extensions]
ServiceIdentifier, Requestor)
[, PROPERTY=value])
IDLitTool::EnableUpdates - Re-enables all drawing updates to
IDLitReader::IsA - Is called by the system to determine if the given the current window and UI updates (menu sensitivity) being passed
file is of the type supported by this file reader. to the user interface.
Result = Obj->[IDLitReader::]IsA(Filename) Obj->[IDLitTool]::EnableUpdates
IDLitReader::ReadData - Is to retrieve the data from the current IDLitTool::FindIdentifiers - Retrieve the full identifiers for items
file, creating regular IDL variables. within the tool container
Result = Obj->[IDLitReader::]ReadData(Data, Palette) Result = Obj->IDLitTool::FindIdentifiers([Pattern]
IDLitReader::SetFilename - Is called by the system to set the cur- [, /ANNOTATIONS] [, /COUNT=variable]
rent filename associated with this reader. [, /DATA_MANAGER] [, /FILE_READERS]
Obj->[IDLitReader::]SetFilename, Filename [, /FILE_WRITERS] [, /LEAF_NODES]
[, /MANIPULATORS] [, /OPERATIONS]
IDLitReader::SetProperty - Sets the value of an IDLitReader
property. [, /VISUALIZATIONS] )
Obj->[IDLitReader::]SetProperty[, PROPERTY=value] IDLitTool::GetCurrentManipulator - Returns the current
manipulator in the system.
IDLitTool - All the functionality provided by a particular instance of an
IDL Intelligent Tool (iTool). This object provides the management Result = Obj->[IDLitTool]::GetCurrentManipulator()
systems for the underlying tool functionality.
IDLitTool::GetFileReader - Retrieves a file reader registered with
Properties: [, DESCRIPTION{Get, Init, Set}=string] the tool object.
[, ICON{Get, Init, Set}=string] [, NAME{Get, Init, Result = Obj->[IDLitTool::]GetFileReaders(Identifier
Set}=string] [TYPE{Init, Set}=string or string array] [, /ALL] [, COUNT=variable])
[, /UPDATE_BYTYPE{Init, Set}] [, /VERBOSE{Get,
Init, Set}] [, VERSION{Get, Init}=variable] IDLitTool::GetFileWriter - Retrieves a file writer registered with
the tool object.
IDLitTool::ActivateManipulator - Activates a manipulator that Result = Obj->[IDLitTool::]GetFileWriters(Identifier
has been registered with this tool. [, /ALL] [, COUNT=variable])
Obj->ActivateManipulator, Identifier[, /DEFAULT]
IDLitTool::GetManipulators - Retrieves the manipulators regis-
IDLitTool::Add - Adds any item to the tool. tered with the tool object.
Obj->[IDLitTool::]Add, Item Result = Obj->[IDLitTool::]GetManipulators(
[COUNT=variable])
IDLitTool::AddService - Adds a service to the tool.
Obj->[IDLitTool::]AddService, Service IDLitTool::GetOperations - Retrieves the operations registered
with the tool object.
IDLitTool::Cleanup - Performs all cleanup on the object Result = Obj->[IDLitTool::]GetOperations(
OBJ_DESTROY, Obj or Obj->[IDLitTool::]Cleanup [, IDENTIFIER=string] [, COUNT=variable])
IDLitTool::CommitActions - Commits all pending transactions to IDLitTool::GetProperty - Retrieves the value of an IDLitTool
the undo-redo buffer and causes a refresh of the current window. property.
Obj->[IDLitTool::]CommitActions Obj->[IDLitTool::]GetProperty, [PROPERTY=variable]
IDLitTool::DisableUpdates - Disables all drawing updates to the IDLitTool::GetSelectedItems - Returns a vector of references to
current window and UI updates (menu sensitivity) being passed to the objects currently selected within the current window in the tool.
the user interface.
Result = Obj->[IDLitTool::]GetSelectedItems(
Obj->[IDLitTool::]DisableUpdates (
[COUNT=variable])
[, PREVIOUSLY_DISABLED=variable])

IDL Quick Reference


116 Alphabetical List of IDL Routines

IDLitTool::GetService - Retrieves a service that has been regis- IDLitTool::RegisterStatusBarSegment - Registers a status
tered with the tool. message bar segment with the tool.
Result = Obj->[IDLitTool::]GetService(IdService) Obj->[IDLitTool::]RegisterStatusBarSegment, Name,
[, IDENTIFIER=string] [, NORMALIZED_WIDTH=scalar]
IDLitTool::GetThumbnail - Retrieves a thumbnail image of the
current iTool. IDLitTool::RegisterVisualization - Registers a visualization
Result = Obj->[IDLitTool::]GetThumbnail( component with the tool.
[, THUMBBACKGROUND=variable] Obj->[IDLitTool::]RegisterVisualization, Name,
[, THUMBORDER=variable] ClassName [, /DEFAULT] [, DESCRIPTION=string]
[, THUMBSIZE=variable]) [, ICON=string] [, IDENTIFIER=string]
[, PROXY=string]
IDLitTool::GetVisualization - Retrieves a visualization regis-
tered with the tool object. IDLitTool::SetProperty - Sets the value of an IDLitTool property
Result = Obj->[IDLitTool::]GetVisualizations(Identifier Obj->[IDLittool::]SetProperty[, PROPERTY=value]
[, /ALL] [, COUNT=variable])
IDLitTool::UnRegister - Unregisters a component with the tool.
IDLitTool::Init - Initializes the IDLitTool object Obj->[IDLitTool::]UnRegister, Identifier
Obj = OBJ_NEW(’IDLitTool’[, PROPERTY=value]) or
Result = Obj->[IDLitTool::]Init([PROPERTY=value]) IDLitTool::UnRegisterCustomization - Unregisters an opera-
tion class (that was previously registered as the graphics customiza-
IDLitTool::RefreshCurrentWindow - Redraws the current win- tion operation to be associated with this tool).
dow of the tool. Obj->[IDLitTool::]UnRegisterCustomization
Obj->[IDLitTool]::RefreshCurrentWindow IDLitTool::UnRegisterFileReader - Unregisters a file reader
IDLitTool::Register - Registers a generic component with the tool. component with the tool.
Obj->[IDLitTool::]Register, Name, ClassName Obj->[IDLitTool::]UnRegisterFileReader, Identifier
[, /DEFAULT] [, DESCRIPTION=string] IDLitTool::UnRegisterFileWriter - Unregisters a component
[, ICON=string] [, IDENTIFIER=string] with the tool.
[, PROXY=string] Obj->[IDLitTool::]UnRegisterFileWriter, Identifier
IDLitTool::RegisterCustomization - Registers an operation IDLitTool::UnRegisterManipulator - Unregisters a manipulator
class that represents the graphics customization operation to be component with the tool.
associated with this tool. Obj->[IDLitTool::]UnRegisterManipulator, Identifier
Obj->[IDLitTool::]RegisterCustomization, Name, ClassName
IDLitTool::UnRegisterOperation - Unregisters an operation
IDLitTool::RegisterFileReader - Registers a file reader compo- component with the tool.
nent with the tool. Obj->[IDLitTool::]UnRegisterOperation, Identifier
Obj->[IDLitTool::]RegisterFileReader, Name, ClassName
IDLitTool::UnRegisterStatusBarSegment - Unregisters a
[, /DEFAULT][, DESCRIPTION=string] [, ICON=string] status message bar segment.
[, IDENTIFIER=string] [, PROXY=string]
Obj->[IDLitTool::]UnRegisterStatusBarSegment,
IDLitTool::RegisterFileWriter - Registers a file writer compo- Identifier
nent with the tool.
IDLitTool::UnRegisterVisualization - Unregisters a visualiza-
Obj->[IDLitTool::]RegisterFileWriter, Name, ClassName tion component with the tool.
[, /DEFAULT][, DESCRIPTION=string] [, ICON=string]
Obj->[IDLitTool::]UnRegisterVisualization, Identifier
[, IDENTIFIER=string] [, PROXY=string]
IDLitUI - A link between the underlying functionality of an iTool and
IDLitTool::RegisterManipulator - Registers a manipulator com- the IDL widget interface.
ponent with the tool.
Property: [, GROUP_LEADER=WidgetID]
Obj->[IDLitTool::]Manipulator, Name, ClassName
[, /DEFAULT] [, DESCRIPTION=string] IDLitUI::AddOnNofityObserver - Is used to register a specified
iTool component object as wishing to receive messages generated
[, ICON=string] [, IDENTIFIER=string] by the DoOnNotify method of another specified iTool component
object.
IDLitTool::RegisterOperation - Registers an operation compo-
nent with the tool. Obj->[IDLitUI::]AddOnNotifyObserver, IdObserver,
Obj->[IDLitTool::]RegisterOperation, Name, ClassName IdSubject
[, ACCELERATOR=string] [, /CHECKED] IDLitUI::Cleanup - Performs all cleanup on the object
[, DESCRIPTION=string] [, /DROPLIST_EDIT] OBJ_DESTROY, Obj or Obj->[IDLitUI::]Cleanup
[, DROPLIST_INDEX=value]
[, DROPLIST_ITEMS=string array] [, ICON=string] IDLitUI::DoAction - Initiates an operation or action in the tool object
associated with this user interface.
[, IDENTIFIER=string] [, PROXY=string]
Result = Obj->[IDLitUI::]doAction(Identifier)
[, /SEPARATOR]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 117

IDLitUI::GetProperty - Retrieves the value of an IDLitUI property. IDLitVisualization::BeginManipulation - Handles notifica-


Obj->[IDLitUI::]GetProperty, [PROPERTY=variable] tions that an IDLitManipulator object is about to manipulate this
visualization.
IDLitUI::GetTool - Returns an object reference to the iTool with Obj->[IDLitVisualization::]BeginManipulation,
which the user interface is associated. Manipulator
Result = Obj->[IDLitUI::]GetTool()
IDLitVisualization::Cleanup - Performs all cleanup on the object
IDLitUI::GetWidgetByName - returns the IDL Widget ID of a OBJ_DESTROY, Obj or
widget that has been registered with the user interface object via a
call to the IDLitUI::RegisterWidget method. Obj->[IDLitVisualization::]Cleanup
Result = Obj->[IDLitUI::]GetWidgetByName(Name) IDLitVisualization::EndManipulation - Handles notifications
that an IDLitManipulator object has finished manipulating this
IDLitUI::Init - Initializes the IDLitUI object visualization.
Obj = OBJ_NEW('IDLitUI', oTool) or Obj->[IDLitVisualization::]EndManipulation,
Result = Obj->[IDLitUI::]Init(oTool) Manipulator
IDLitUI::RegisterUIService - Registers a user interface service IDLitVisualization::Get - Retrieves object(s) from the visualiza-
with the user interface. tion.
Result = Obj->[IDLitUI::]RegisterUIService(Name, Result = Obj->[IDLitVisualization::]Get([, /ALL]
Callback) [, COUNT=variable] [, ISA=string or array of strings]
IDLitUI::RegisterWidget - Registers an IDL widget hierarchy with [, POSITION=index or array of indices]
the user interface object. [, /SKIP_PRIVATE])
Result = Obj->[IDLitUI::]RegisterWidget(wID, Name,
IDLitVisualization::GetCenterRotation - Returns the center
Callback[, /FLOATING]) of rotation for this visualization.
IDLitUI::RemoveOnNotifyObserver - Is used to un-register a Result = Obj->[IDLitVisualization::]GetCenterRotation
specified iTool component object as wishing to receive messages ([, /NO_TRANSFORM] [, XRANGE=[xmin, xmax]]
generated by the DoOnNotify method of another specified iTool
component object. [, YRANGE=[ymin, ymax]] [, ZRANGE=[zmin, zmax]])
Obj->[IDLitUI::]RemoveOnNotifyObserver, IdObserver, IDLitVisualization::GetCurrentSelectionVisual - Returns
IdSubject the currently active selection visual object for this visualization.
Result = Obj->[IDLitVisualization::]
IDLitUI::SetProperty - Sets the value of an IDLitUI property.
GetCurrentSelectionVisual()
Obj->[IDLitUI::]SetProperty[, PROPERTY=value]
IDLitVisualization::GetDataSpace - Returns a reference to the
parent data space object within the graphics hierarchy that contains
IDLitUI::UnRegisterUIService - Unregisters a user interface ser- the visualization.
vice with the user interface object. Result = Obj->[IDLitVisualization::]GetDataSpace(
Obj->[IDLitUI::]UnRegisterUIService, Name [, /UNNORMALIZED])
IDLitUI::UnRegisterWidget - Unregisters a widget with the user IDLitVisualization::GetDataString - Retrieves a description of
interface object. this visualization’s data at the given x, y, and z location.
Obj->[IDLitUI::]UnRegisterWidget, Name Result = Obj->[IDLitVisualization::]GetDataString(
IDLitVisualization - The basis for all iTool visualizations. All visu- XYZLocation)
alization components subclass from this class. IDLitVisualization::GetDefaultSelectionVisual - Returns
Properties: [, CENTER_OF_ROTATION{Get, Init, an object that serves as the default selection visual for this visual-
Set}=[x, y] or [x, y, z]] [, /IMPACTS_RANGE{Get, Init, ization.
Set}] [, ISOTROPIC{Get, Init, Set}] Result = Obj->[IDLitVisualization::]
[, /MANIPULATOR_TARGET{Get, Init, Set}] GetDefaultSelectionVisual()
[, /PROPERTY_INTERSECTION{Get, Init}] IDLitVisualization::GetManipulatorTarget - Retrieves the
[, TYPE{Init, Set}=string or string array] manipulator target associated with this visualization.
Result = Obj->[IDLitVisualization::]
IDLitVisualization::Add - Adds objects to the visualization con-
tainer. GetManipulatorTarget()
Obj->[IDLitVisualization::]Add, Objects IDLitVisualization::GetProperty - Retrieves the value of a prop-
[, /AGGREGATE] [, /NO_UPDATE] erty or group of properties for the object.
[, POSITION=index] Obj->[IDLitVisualization::]GetProperty
[, PROPERTY=variable]
IDLitVisualization::Aggregate - Adds the given object(s) to this
visualization's property aggregate.
Obj->[IDLitVisualization::]Aggregate, Objects

IDL Quick Reference


118 Alphabetical List of IDL Routines

IDLitVisualization::GetRequestedAxesStyle - Returns the IDLitVisualization::OnAxesStyleRequestChange -


axes style requested by this visualization. Ensures that objects that use the visualization’s data are notified when the
Result = Obj->[IDLitVisualization::] axes style of a contained object is changed.
GetRequestedAxesStyle() Obj->[IDLitVisualization::]OnAxesStyleRequestChange,
Notifier, StyleRequest
IDLitVisualization::GetSelectionVisual - Retrieves the selec-
tion visual for this visualization that corresponds to the given IDLitVisualization::OnDataChange - Ensures that objects that
manipulator. use the visualization’s data are notified when the visualization’s
Result = Obj->[IDLitVisualization::]GetSelectionVisual( data changes.
Manipulator) Obj->[IDLitVisualization::]OnDataChange, Notifier
IDLitVisualization::GetTypes - Identifies the types that this IDLitVisualization::OnDataComplete - Ensures that objects
visualization represents, including base types and any specializa- that use the visualization’s data are notified when changes to the
tions. visualization’s data are complete.
Result = Obj->[IDLitVisualization::]GetTypes() Obj->[IDLitVisualization::]OnDataComplete, Notifier
IDLitVisualization::GetXYZRange - Computes the x, y, and z IDLitVisualization::OnDataRangeChange - Ensures that
ranges of the overall contents of the visualization, taking into objects that use the visualization’s data are notified when the range
account the IMPACTS_RANGE property setting for itself and its of the visualization’s data changes.
contents. Obj->[IDLitVisualization::]OnDataRangeChange, Notifier,
Result = Obj->[IDLitVisualization::]GetXYZRange( XRange, YRange, Zrange
XRange,YRange, ZRange [, /DATA]
IDLitVisualization::OnDimensionChange - Ensures that
[, /NO_TRANSFORM]) objects that use the visualization’s data are notified when the visual-
ization’s dimensionality changes.
IDLitVisualization::Init - Initializes the visualization object.
Obj = OBJ_NEW('IDLitVisualization' Obj->[IDLitVisualization::]OnDimensionChange, Notifier,
[, PROPERTY=value] ) or Is3D
Result = Obj->[IDLitVisualization::]Init( IDLitVisualization::OnWorldDimensionChange - Ensures
[PROPERTY=value]) that objects that use the visualization’s data are notified when the
visualization’s parent dataspace’s dimensionality changes.
IDLitVisualization::Is3D - Determines whether or not this visual- Obj->[IDLitVisualization::]OnWorldDimensionChange,
ization (or any of its contents) is marked as being three-dimen-
sional. Notifier, Is3D
Result = Obj->[IDLitVisualization::]Is3D() IDLitVisualization::Remove - Removes the given object(s) from
the visualization.
IDLitVisualization::IsIsotropic - Indicates whether or not this
visualization (or any of its contents) is marked as being isotropic. Obj->[IDLitVisualization::]Remove, Object
Result = Obj->[IDLitVisualization::]IsIsotropic() [, /NO_UPDATE]

IDLitVisualization::IsManipulatorTarget - Determines IDLitVisualization::RequestsAxes - Indicates whether or not


the visualization requests axes. Returns a 1 if the visualization does
whether or not this visualization is a manipulator target. request axes, or 0 if does not request axes.
Result = Obj->[IDLitVisualization::] Result = Obj->[IDLitVisualization::]RequestsAxes( )
IsManipulatorTarget()
IDLitVisualization::Restore - Performs any transitional work
IDLitVisualization::IsSelected - Determines if this visualiza- required after an object has been restored from a SAVE file.
tion is currently selected or not.
Obj->[IDLitVisualization::]Restore
Result = Obj->[IDLitVisualization::]IsSelected()
IDLitVisualization::Rotate - Rotates this visualization about the
IDLitVisualization::Move - Changes the location of an object given axis by the given angle.
within the visualization container.
Obj->[IDLitVisualization::]Rotate, Axis, Angle
Obj->[IDLitVisualization::]Move, Source, Destination [, CENTER_OF_ROTATION=[x, y, z]]
IDLitVisualization::On2DRotate - Ensures that objects that use [, /PREMULTIPLY]
the visualization’s data are notified when the rotation of the parent
dataspace changes. IDLitVisualization::Scale - Scales the visualization by the given
scale factors.
Obj->[IDLitVisualization::]On2DRotate, Notifier,
IsRotated Obj->[IDLitVisualization::]Scale, SX, SY, SZ
[, CENTER_OF_ROTATION=[x, y] | [x, y, z]]
IDLitVisualization::OnAxesRequestChange - Ensures that [, /PREMULTIPLY]
objects that use the visualization’s data are notified when the axes
of a contained object are changed.
Obj->[IDLitVisualization::]OnAxesRequestChange,
Notifier, AxesRequest

Objects IDL Quick Reference


Alphabetical List of IDL Routines 119

IDLitVisualization::Select - Handles notification of mechanisms IDLitVisualization::WindowToVis - Transforms given points


that key off the current selection (such as the visualization browser) from window device coordinates to visualization data space.
when this visualization has been selected.
Obj->[IDLitVisualization::]WindowToVis, InX, InY, InZ,
Obj->[IDLitVisualization::]Select[, Mode] OutX, OutY, OutZ or Obj->[IDLitVisualization::]
[, /ADDITIVE | /SELECT | /TOGGLE | /UNSELECT] [, WindowToVis, InX, InY, OutX, OutY or
/NO_NOTIFY] Obj->[IDLitVisualization::]WindowToVis, InVerts,
DLitVisualization::Set3D - Sets a flag indicating this visualization OutVerts
is three-dimensional.
IDLitWindow - The basis for all iTool visualization windows. All
Obj->[IDLitVisualization::]Set3D, Is3D [, /ALWAYS] iTool visualization windows subclass from this class.
[, /AUTO_COMPUTE] Properties: IDLitWindow inherits all properties from the
IDLitVisualization::SetAxesRequest - Sets the current axes IDLgrWindow superclass. See “IDLgrWindow” on
request for this visualization. page 106 for details.
Obj->[IDLitVisualization::]SetAxesRequest, AxesRequest
IDLitWindow::Add - Adds the given object(s) to the window.
[, /ALWAYS | /AUTO_COMPUTE] [, /NO_NOTIFY]
Obj->[IDLitWindow::]Add, Objects [, POSITION=value]
IDLitVisualization::SetAxesStyleRequest - Sets the current
axes style request for this visualization. IDLitWindow::AddWindowEventObserver - Adds the given
object(s) to the list of observers that are to be notified of events that
Obj->[IDLitVisualization::]SetAxesStyleRequest, occur within this window.
StyleRequest [, /NO_NOTIFY] Obj->[IDLitWindow::]AddWindowEventObserver,
IDLitVisualization::SetCurrentSelectionVisual - Sets the Objects
current selection visual for the given manipulator.
IDLitWindow::Cleanup - Performs all cleanup on the object.
Obj->[IDLitVisualization::]SetCurrentSelectionVisual,
OBJ_DESTROY, Obj or Obj->[IDLitWindow::]Cleanup
Manipulator
IDLitWindow::ClearSelections - Clears the window’s list of
IDLitVisualization::SetData - Sets the data parameter of the visu- currently selected items (within its current view).
alization.
Obj->[IDLitWindow::]ClearSelections
Result = Obj->[IDLitVisualization::]SetData(Data)
IDLitWindow::DoHitTest - Performs a hit test to determine which
IDLitVisualization::SetDefaultSelectionVisual - Sets the visualizations within the destination are displayed at a given pixel
default selection visual to be associated with this visualization. location.
Obj->[IDLitVisualization::]SetDefaultSelectionVisual, Result = Obj->DoHitTest(X, Y [, DIMENSIONS=[width,
SelectionVisual [, POSITION=value] height]] [, /ORDER] [, SUB_HIT=variable] [, UNITS={0
IDLitVisualization::SetParameterSet - Associates a parameter | 1 | 2 | 3}])
set with this visualization.
IDLitWindow::GetEventMask - Returns a bitwise mask repre-
Result = Obj->[IDLitVisualization::]SetParameterSet( senting the events that are enabled for this window.
ParameterSet) Result = Obj->[IDLitWindow::]GetEventMask(
IDLitVisualization::SetProperty - Sets the value of a property [, BUTTON_EVENTS=variable]
or group of properties for the object. [, KEYBOARD_EVENTS=variable]
Obj->[IDLitVisualization::]SetProperty [, /MOTION_EVENTS=variable]
[, PROPERTY=value] [, TIMER_EVENTS=variable]
IDLitVisualization::UpdateSelectionVisual - Transforms [, /TRACKING_EVENTS=variable]
this visualization's selection visual to match the visualization's [, /WHEEL_EVENTS=variable])
geometry.
IDLitWindow::GetProperty - Retrieves the value of an IDLitWin-
Obj->[IDLitVisualization::]UpdateSelectionVisual dow property
IDLitVisualization::VisToWindow - Transforms given points Obj->[IDLitData::]GetProperty[, PROPERTY=variable]
from visualization data space to window device coordinates.
IDLitWindow::GetSelectedItems - Returns the currently
Obj->[IDLitVisualization::]VisToWindow, InX, InY, InZ, selected objects within this window’s scene, which represents a
OutX, OutY, OutZ [, /NO_TRANSFORM] or Obj- container for all of the views (and their corresponding visualization
>[IDLitVisualization::] VisToWindow, InX, InY, OutX, hierarchies) that appear within a window.
OutY [, /NO_TRANSFORM] or Obj- Result = Obj->[IDLitWindow::]GetSelectedItems([, /ALL]
>[IDLitVisualization::] VisToWindow, InVerts, OutVerts [, COUNT=named variable])
[, /NO_TRANSFORM] IDLitWindow::Init - Initializes the window object.
Obj = OBJ_NEW('IDLitWindow'[, PROPERTY=value]) or
Result = Obj->[IDLitWindow::]Init(
[, PROPERTY=value])

IDL Quick Reference


120 Alphabetical List of IDL Routines

IDLitWindow::OnEnter - Handles notification from the window IDLitWindow::SetCurrentZoom - Sets the current zoom factor
that a mouse enter event has occurred. for this window by changing its virtual dimensions.
Obj->[IDLitWindow::]OnEnter Obj->[IDLitWindow::]SetCurrentZoom, ZoomFactor
[, /RESET]
IDLitWindow::OnExit - Handles notification from the window that
a mouse exit event has occurred. IDLitWindow::SetEventMask - Enables the given events within
Obj->[IDLitWindow::]OnExit this window.
Obj->[IDLitWindow::]SetEventMask([EventMask]
IDLitWindow::OnExpose - Handles notification from the window
that an expose event has occurred. [, /BUTTON_EVENTS] [, /KEYBOARD_EVENTS]
Obj->[IDLitWindow::]OnExpose, X, Y, Width, Height [, /MOTION_EVENTS] [, /TIMER_EVENTS]
[, /TRACKING_EVENTS] [, /WHEEL_EVENTS])
IDLitWindow::OnKeyboard - Handles notification (from the
native window device) that a keyboard event has occurred, and IDLitWindow::SetManipulatorManager - Sets the given IDL-
passes along that notification to all observers in the list of window itManipulatorManager object as the current manager of this win-
event observers. dow’s manipulators.
Obj->[IDLitWindow::]OnKeyboard, IsASCII, Character, Obj->[IDLitWindow::]SetManipulatorManager, Manager
KeySymbol, X, Y, Press, Release, Modifiers
IDLitWindow::SetProperty - Sets the value of an IDLitWindow
IDLitWindow::OnMouseDown - Handles notification (from the property.
native window device) that a mouse down event has occurred, and Obj->[IDLitWindow::]SetProperty[, PROPERTY=value]
passes along that notification to all observers in the list of window
event observers. IDLitWindow::SetTimerInterval - Specifies the floating-point
Obj->[IDLitWindow::]OnMouseDown, X, Y, ButtonMask, number of seconds between timer events.
Modifiers, NumClicks Obj->[IDLitWindow::]SetProperty[, PROPERTY=value]
IDLitWindow::OnMouseMotion - Handles notification (from IDLitWindow::ZoomIn - Causes the current zoom factor for this
the native window device) that a mouse motion event has occurred, window to be increased (that is, multiplied by the factor given by
and passes along that notification to all observers in the list of win- the window’s ZOOM_BASE property).
dow event observers. Obj->[IDLitWindow::]ZoomIn
Obj->[IDLitWindow::]OnMouseMotion, X, Y, Modifiers
IDLitWindow::ZoomOut - Causes the current zoom factor for this
IDLitWindow::OnMouseUp - Handles notification (from the window to be decreased (that is, divided by the factor given by the
native window device) that a mouse up event has occurred, and window’s ZOOM_BASE property).
passes along that notification to all observers in the list of window Obj->[IDLitWindow::]ZoomOut
event observers.
Obj->[IDLitWindow::]OnMouseUp, X, Y, ButtonMask IDLitWriter - The definition of the interface and the process used to
construct file writers for the iTools framework. When a new file
IDLitWindow::OnResize - Handles notification (from the native writer is constructed for the iTools system, a new class is subclassed
window device) that a resize event has occurred. from this IDLitWriter class.
Obj->[IDLitWindow::]OnResize, Width, Height IDLitWriter::Cleanup - Performs all cleanup on the object
IDLitWindow::OnScroll - Handles notification (from the native OBJ_DESTROY, Obj or Obj->[IDLitWriter::]Cleanup
window device) that a scrolling event has occurred. IDLitWriter::GetFileExtensions - Is called by the system to
Obj->[IDLitWindow::]OnScroll, X, Y retrieve the file extensions supported by this particular writer.

IDLitWindow::OnTimer - handles notification (from the native Result = Obj->[IDLitWriter::]GetFileExtensions(


window device) that a timer event has occurred, and passes that [COUNT=count])
notification to all observers in the list of window event observers by
calling each observer's OnTimer method. IDLitWriter::GetFilename - Is called by the system to retrieve the
current filename associated with this writer.
Obj->[IDLitWindow::]OnTimer
Result = Obj->[IDLitWriter::]GetFilename()
IDLitWindow::OnWheel - Handles notification (from the native
window device) that a mouse wheel event has occurred. IDLitWriter::GetProperty - Retrieves the value of an IDLitWriter
property.
Obj->[IDLitWindow::]OnWheel, X, Y, Delta, Modifiers
Obj->[IDLitWriter::]GetProperty [, PROPERTY=variable]
IDLitWindow::Remove - Removes the given object(s) from the
window. IDLitWriter::Init - Initializes the IDLitWriter object
Obj->[IDLitWindow::]Remove, Object [, /ALL] Obj = OBJ_NEW('IDLitWriter', [, Extensions]
[, POSITION=index] [, PROPERTY=value]) or
Result = Obj->[IDLitWriter::]Init([, Extensions]
IDLitWindow::RemoveWindowEventObserver - Removes
the given object(s) from the list of observers that are notified of [, PROPERTY=value])
events that occur within this window.
IDLitWriter::IsA - Is called by the system to determine if the given
Obj->[IDLitWindow::]RemoveWindowEventObserver, file is of the type supported by this file writer.
Objects Result = Obj->[IDLitWriter::]IsA(Filename)

Objects IDL Quick Reference


Alphabetical List of IDL Routines 121

IDLitWriter::SetData - Is called by the system to set the data for the IDLnetOGCWCS Properties - continued
current file. [, URL_PATH {Get, Init, Set}=string] [, URL_PORT
Result = Obj->[IDLitWriter::]SetData(Data) {Get, Init, Set}=string] [, URL_QUERY_PREFIX {Get,
IDLitWriter::SetFilename - Is called by the system to set the cur- Init, Set}=string] [, URL_QUERY_SUFFIX {Get, Init,
rent filename associated with this writer. Set}=string] [, URL_SCHEME {Get, Init, Set}=string]
Obj->[IDLitWriter::]SetFilename, Filename [, USERNAME {Get, Init, Set}=string] [, VERBOSE
{Get, Init, Set}=value] [, WCS_VERSION {Get, Init,
IDLitWriter::SetProperty - Sets the value of an IDLitWriter prop-
erty Set}=string]
Obj->[IDLitWriter::]SetProperty[, PROPERTY=value] IDLnetOGCWCS::Cleanup - Performs all cleanup on the object.
IDLjavaObject - An IDL object encapsulating a Java object. IDL OBJ_DESTROY, Obj
provides data type and other translation services, allowing IDL or
programs to access the Java object’s methods and properties using
standard IDL syntax. Obj->[IDLnetOGCWCS::]Cleanup (Only in subclass'
Cleanup method)
IDLjavaObject::GetProperty - Retrieves properties (known as
data members in Java) from the Java object that underlies the IDL- IDLnetOGCWCS::DescribeCoverage - Retrieves an XML file
javaObject. containing one or more descriptive coverage offerings from a
Obj->[IDLjavaObject::]GetProperty remote OGC WCS server. Return value contains names of coverage
names.
[, PROPERTY=variable]
Result = Obj->[IDLnetOGCWCS::]DescribeCoverage
IDLjavaObject::Init - Instantiates the given Java object and estab- ([, COUNT= variable] [, FROM_FILE=value] ,
lishes a link between the resulting IDL object with the underlying
Java object. NAMES=value [, SCHEMA_CHECK=value])
Obj = OBJ_NEW('IDLjavaObject$JAVACLASSNAME', IDLnetOGCWCS::GetCapabilities - Retrieves an XML file
JavaClassName[, Arg1, ...]) or containing coverage offering briefs from a remote OGC WCS
server.
Result = Obj->[IDLjavaObject$JAVACLASSNAME::]Init(
JavaClassName [, Arg1, ...]) Result = Obj->[IDLnetOGCWCS::]GetCapabilities(
[, FROM_FILE=value] [, SCHEMA_CHECK=value])
IDLjavaObject::SetProperty - Sets properties (known as data
members in Java) for the Java object that underlies an instance of IDLnetOGCWCS::GetCoverage - Retrieves a data file contain-
IDLjavaObject. ing unrendered data from a remote OGC WCS server.
Obj->[IDLjavaObject::]SetProperty [, PROPERTY=value] Result = Obj->[IDLnetOGCWCS::]GetCoverage
(Coverage_Request)
IDLnetOGCWCS - Provides the ability to connect to a remote Open
Geospatial Consortium Web Coverage Service server and return IDLnetOGCWCS::GetCoverageOffering - Returns a complex
coverage offering briefs and unrendered data containing geograhpic structure containing details about a single coverage.
data.
Result = Obj->[IDLnetOGCWCS::]GetCoverageOffering
Properties: [, AUTHENTICATION {Get, Init,
([ INDEX=value])
Set}=value] [, CALLBACK_DATA {Get, Init,
Set}=variable] [, CALLBACK_FUNCTION {Get, Init, IDLnetOGCWCS::GetCoverageOfferingBriefs - Provides
Set}=string] [, CAPABILITIES_FILENAME {Get, Init, access to coverage offering briefs returned by GetCapabilities.
Set}=string] [, CONNECT_TIMEOUT {Get, Init, Result = Obj->[IDLnetOGCWCS::]GetCoverageOffering
Set}=value] [, CONTENT_TYPE {Get}=string] ([ COUNT=variable] [, NUMBER=value]
[, COVERAGE_FILENAME {Get, Init, Set}=string] [, INDEX=value])
[, DESCRIBE_COVERAGE_FILENAME {Get, Init, IDLnetOGCWCS::GetProperty - Retrieves the value of a prop-
Set}=string] [, ENCODE {Get, Init, Set}=value] erty or group of properties.
[, HEADERS {Get, Init, Set}=string] [, LAST_FILE Obj->[IDLnetOGCWCS::]GetProperty
{Get, Init, Set}=string] [, PASSWORD { Init, [, PROPERTY=variable]]
Set}=string] [, PROXY_AUTHENTICATION {Get, Init, IDLnetOGCWCS::GetServiceSection - Provides a structure
Set}=value] [, PROXY_HOSTNAME {Get, Init, that accesses Service section values contained in the XML file
Set}=string] [, PROXY_PASSWORD { Init, Set}=string] returned by GetCapabilities.
[, PROXY_PORT {Get, Init, Set}=string] Result = Obj->[IDLnetOGCWCS::]GetServiceSection( )
[, PROXY_USERNAME {Get, Init, Set}=string] IDLnetOGCWCS::Init - Initializes an OGC WCS object.
[, RESPONSE_HEADER {Get}=string] Obj =
[, SSL_CERTIFICATE_FILE {Get, Init, Set}=string] OBJ_NEW(IDLnetOGCWCS [PROPERTY=value])
[, SSL_VERIFY_HOST {Get, Init, Set}=Boolean] or
[, SSL_VERIFY_PEER {Get, Init, Set}=Boolean] Result = Obj->
[, TIMEOUT {Get, Init, Set}=value] [ IDLnetOGCWCS::]Init([PROPERTY=value]) (Only in
[, URL_HOSTNAME {Get, Init, Set}=string] a subclass' Init method)

IDL Quick Reference


122 Alphabetical List of IDL Routines

IDLnetOGCWCS::ParseUrl - Given a valid URL, populated IDLnetOGCWMS::GetFeatureInfo - Retrieves a information


required properties with portions of the URL string. about a feature on a map if supported by the WMS server and if the
information exists.
Obj->[IDLnetOGCWCS::]ParseUrl, URL
Result = Obj->[IDLnetOGCWMS::]GetFeatureInfo
IDLnetOGCWCS::SetProperty - Sets the value of a property or (Feature_Info_Request)
group of properties for the object.
Obj-> [ IDLnetOGCWCS::]SetProperty IDLnetOGCWCS::GetLayers - Provides access to layer details
returned by GetCapabilities.
[, PROPERTY=value]
Result = Obj->[IDLnetOGCWMS::]GetLayers
IDLnetOGCWMS - Provides the ability to connect to a remote Open ([ COUNT=variable] [, NUMBER=value]
Geospatial Consortium Web Map Service server and return one or
more layers as a rendered image. [, INDEX=value])
Properties: [, AUTHENTICATION {Get, Init, IDLnetOGCWCS::GetMap - Retrieves one or more layers as a
Set}=value] [, CALLBACK_DATA {Get, Init, rendered map image.
Set}=variable] [, CALLBACK_FUNCTION {Get, Init, Result = Obj->[IDLnetOGCWMS::]GetMap
Set}=string] [, CAPABILITIES_FILENAME {Get, Init, (Map_Request)
Set}=string] [, CONNECT_TIMEOUT {Get, Init, IDLnetOGCWMS::GetProperty - Retrieves the value of a prop-
Set}=value] [, CONTENT_TYPE {Get}=string] erty or group of properties.
[, ENCODE {Get, Init, Set}=value] Obj->[IDLnetOGCWMS::]GetProperty
[, FEATURE_INFO_FILENAME {Get, Init, Set}=string] [, PROPERTY=variable]]
[, HEADERS {Get, Init, Set}=string] [, LAST_FILE
IDLnetOGCWMS::GetServiceSection - Provides a structure
{Get, Init, Set}=string] [, MAP_FILENAME {Get, Init, that accesses Service section values contained in the XML file
Set}=string] [, PASSWORD { Init, Set}=string] returned by GetCapabilities.
[, PROXY_AUTHENTICATION {Get, Init, Set}=value] Result = Obj->[IDLnetOGCWMS::]GetServiceSection( )
[, PROXY_HOSTNAME {Get, Init, Set}=string]
IDLnetOGCWMS::Init - Initializes an OGC WMS object.
[, PROXY_PASSWORD { Init, Set}=string]
Obj =
[, PROXY_PORT {Get, Init, Set}=string]
OBJ_NEW(IDLnetOGCWMS [PROPERTY=value])
[, PROXY_USERNAME {Get, Init, Set}=string]
or
[, RESPONSE_HEADER {Get}=string]
Result = Obj->
[, SSL_CERTIFICATE_FILE {Get, Init, Set}=string]
[ IDLnetOGCWMS::]Init([PROPERTY=value]) (Only in
[, SSL_VERIFY_HOST {Get, Init, Set}=Boolean]
a subclass' Init method)
[, SSL_VERIFY_PEER {Get, Init, Set}=Boolean]
[, TIMEOUT {Get, Init, Set}=value] IDLnetOGCWMS::ParseUrl - Given a valid URL, populated
[, URL_HOSTNAME {Get, Init, Set}=string] required properties with portions of the URL string.
[, URL_PATH {Get, Init, Set}=string] [, URL_PORT Obj->[IDLnetOGCWMS::]ParseUrl, URL
{Get, Init, Set}=string] [, URL_QUERY_PREFIX {Get, IDLnetOGCWMS::SetProperty - Sets the value of a property or
Init, Set}=string] [, URL_QUERY_SUFFIX {Get, Init, group of properties for the object.
Set}=string] [, URL_SCHEME {Get, Init, Set}=string] Obj-> [ IDLnetOGCWMS::]SetProperty
[, USERNAME {Get, Init, Set}=string] [, VERBOSE [, PROPERTY=value]
{Get, Init, Set}=value] [, WMS_VERSION {Get, Init, IDLnetURL - Allows IDL to act as a client to an HTTP or FTP server.
Set}=string] Use this object to open a connection, create and send HTTP
requests, and receive responses from a remote HTTP or FTP server.
IDLnetOGCWMS::Cleanup - Performs all cleanup on the object. You can also use an IDLnetURL object to receive and write large
OBJ_DESTROY, Obj data files to disk at a user-specified location.
or Properties: [, AUTHENTICATION {Get, Init,
Obj->[IDLnetOGCWMS::]Cleanup (Only in subclass' Set}=value] [, CALLBACK_DATA {Get, Init,
Cleanup method) Set}=variable] [, CALLBACK_FUNCTION {Get, Init,
Set}=string] [, CONNECT_TIMEOUT {Get, Init,
IDLnetOGCWMS::GetCapabilities - Retrieves an XML file
containing layer information from a remote OGC WCS server. Set}=value] [, CONTENT_TYPE {Get}=string]
Result = Obj->[IDLnetOGCWMS::]GetCapabilities [, ENCODE {Get, Init, Set}=value]
( [/DISABLE_INHERITANCE] [, FROM_FILE=value] [, FTP_CONNECTION_MODE {Get, Init, Set}=value]
[, HEADERS {Get, Init, Set}=string]
[, SCHEMA_CHECK=value])
[, PROXY_AUTHENTICATION {Get, Init, Set}=value]
[, PROXY_HOSTNAME {Get, Init, Set}=string]
[, PROXY_PASSWORD { Init, Set}=string]
[, PROXY_PORT {Get, Init, Set}=string]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 123

IDLnetURL Properties - continued IDLnetURL::Put - Sends a file or a buffer of data to a remote HTTP
[, PROXY_USERNAME {Get, Init, Set}=string] or FTP server.
[, RESPONSE_CODE {Get}=value] Result = Obj->[IDLnetURL::] Put ( data, [, URL=string]
[, RESPONSE_FILENAME {Get}=string] [, RESPONSE_FILENAME=filename] [, /FTP_ASCII]
[, RESPONSE_HEADER {Get}=string] [, /FTP_EXPLICIT_SSL] [, /BUFFER] [, /POST])
[, SSL_CERTIFICATE_FILE {Get, Init, Set}=string] IDLnetURL::SetProperty - Sets the properties of an object that is
[, SSL_VERIFY_HOST {Get, Init, Set}=value] open for writing.
[, SSL_VERIFY_PEER {Get, Init, Set}=value] Obj->[IDLnetURL::] SetProperty [, PROPERTYNAME =
[, SSL_VERSION {Get, Init, Set}=value] [, TIMEOUT value]
{Get, Init, Set}=value] [, URL_HOSTNAME {Get, Init,
IDLsysMonitorInfo - Contains information about the display moni-
Set}=string] [, URL_PASSWORD {Init, Set}=string] tor or monitors attached to your system. Use this object to obtain
[, URL_PATH {Get, Init, Set}=string] [, URL_PORT information about the monitor(s) when building applications that
utilize multiple monitors.
{Get, Init, Set}=string] [, URL_QUERY {Get, Init,
Properties: [, DISPLAY_NAME {Get, Init, Set}=string]
Set}=string] [, URL_SCHEME {Get, Init, Set}=string]
[, URL_USERNAME {Get, Init, Set}=string] IDLsysMonitorInfo::Cleanup - Performs all cleanup on the
[, VERBOSE {Get, Init, Set}=boolean] object.
OBJ_DESTROY, Obj
IDLnetURL::Cleanup - Performs all cleanup operations on the or
object, and closes all open connections when the object is
destroyed. Obj->[IDLsysMonitorInfo::]Cleanup (Only in subclass'
OBJ_DESTROY, Obj Cleanup method)
or IDLsysMonitorInfo::GetMonitorNames - Retrieves into an
Obj->[IDLnetURL::]Cleanup (In a lifecycle method only.) array the X Window System display name strings associated with
each monitor on the system. There is one name string in the array
IDLnetURL::CloseConnections - Closes all the existing con- for each monitor.
nections to remote HTTP and FTP servers.
Result =
Obj->[IDLnetURL::]CloseConnections Obj->[IDLsysMonitorInfo::]GetMonitorNames()
IDLnetURL::FtpCommand - Executes FTP commands, as well as IDLsysMonitorInfo::GetNumberOfMonitors - Retrieves the
deletes files, makes directories, deletes directories, changes directo- number of monitors available on the system as an IDL integer.
ries, and so on, on the remote FTP server.
Result =
Result = Obj->[IDLnetURL::]FtpCommand( command,
Obj->[IDLsysMonitorInfo::]GetNumberOfMonitors()
[, URL=string] [, /FTP_ASCII]
[, /FTP_EXPLICIT_SSL] ) IDLsysMonitorInfo::GetPrimaryMonitorIndex - Retrieves
the index of the monitor that is considered the system's primary
IDLnetURL::Get - Retrieves a resource from a remote HTTP or FTP monitor as an IDL integer.
server and writes it to disk, a memory buffer, or an array of strings.
Result =
Result = Obj->[IDLnetURL::]Get( [, URL=string] Obj->[IDLsysMonitorInfo::] GetPrimaryMonitorIndex()
[, FILENAME=string] [, /BUFFER]
[, /STRING_ARRAY] [, /FTP_ASCII] IDLsysMonitorInfo::GetProperty - Retrieves the value of a
property or group of properties.
[, /FTP_EXPLICIT_SSL] )
Obj->[IDLsysMonitorInfo::]GetProperty
IDLnetURL::GetFtpDirList - Retrieves a list of files (returned as [, PROPERTY=variable]]
an array of strings) available from a remote FTP server on a particu-
lar path. IDLsysMonitorInfo::GetRectangles - Retrieves monitor pixel
Result = Obj->[IDLnetURL::]GetFtpDirList( coordinates and dimensions as a [4, n] IDL long array. There is one
row in the array for each monitor.
[, URL=string] [, /VERBOSE]
Result = Obj->[IDLsysMonitorInfo::]GetRectangles(
[, /FTP_EXPLICIT_SSL] )
[, /EXCLUDE_TASKBAR])
IDLnetURL::GetProperty - Returns information describing the
properties of an IDLnetURL object in the supplied variable/key- IDLsysMonitorInfo::GetResolutions - Retrieves monitor reso-
word pairs. lutions (pixel sizes) as a [2, n] IDL float array of x and y cm/pixel.
Obj->[IDLnetURL::] GetProperty [, PROPERTYNAME = Result = Obj->[IDLsysMonitorInfo::]GetResolutions()
value] IDLsysMonitorInfo::Init - Initializes a monitor information object.
IDLnetURL::Init - Initializes an IDLnetURL object. Obj =
obj =OBJ_NEW(‘IDLnetURL’) OBJ_NEW(IDLsysMonitorInfo [PROPERTY=value])
or or
Obj->[IDLnetURL::]Init (In a lifecycle method only.) Result = Obj->
[ IDLsysMonitorInfo::]Init([PROPERTY=value])

IDL Quick Reference


124 Alphabetical List of IDL Routines

IDLsysMonitorInfo::IsExtendedDesktop - Returns a Bool- TrackBall::Init - Initializes the TrackBall object.


ean value (0 or 1 as an IDL integer) that indicates if the display sys- Obj = OBJ_NEW('TrackBall', Center, Radius
tem is configured as an extended desktop across two or more
monitors. [, PROPERTY=value]) or
Result = Result = Obj->[TrackBall::]Init(Center, Radius
Obj->[IDLsysMonitorInfo::]IsExtendedDesktop() [, PROPERTY=value])
IDLsysMonitorInfo::SetProperty - Sets the value of a property Trackball::Reset - Resets the state of the TrackBall object.
or group of properties for the object. Obj->[TrackBall::]Reset, Center, Radius [, AXIS={0 | 1 |
Obj-> 2}] [, /CONSTRAIN] [, MOUSE={1 | 2 | 4}]
[ IDLsysMonitorInfo::]SetProperty[, PROPERTY=value]
TrackBall::Update - Updates the state of the TrackBall object based
TrackBall - Translates widget events from a draw widget (created with on the information contained in the input widget event structure.
the WIDGET_DRAW function) into transformations that emulate a Result = Obj->[TrackBall::]Update( sEvent [, MOUSE={1
virtual trackball (for transforming object graphics in three dimen-
sions). | 2 | 4}] [, TRANSFORM=variable] [, /TRANSLATE] )
Properties: [, AXIS{Init}={0 | 1 | 2}]
[, /CONSTRAIN{Init}] [, MOUSE{Init}={1 | 2 | 4}]

Objects IDL Quick Reference


Alphabetical List of IDL Routines 125

Statements
Assignment Loop Statements
FOR...DO - Executes one or more statements repeatedly, while incre-
variable = expression - Assigns a value to a variable. menting or decrementing a variable with each repetition, until a
condition is met.
variable[subscripts] = expression - Assigns a value to the ele-
ments of an array specified by the array subscripts. FOR Variable = Init, Limit [, Increment] DO statement
variable[subscript_range] = expression - Assigns a value to or
the elements of an array specified by the array subscript range. FOR Variable = Init, Limit [, Increment] DO BEGIN
statements
Program Control ENDFOR
REPEAT...UNTIL - Repeats statement(s) until expression evaluates to
true. Subject is always executed at least once.
Compound Statements REPEAT statement UNTIL expression
or
BEGIN...END - Defines a block of statements. REPEAT BEGIN
BEGIN statements
statements ENDREP UNTIL expression
END | ENDIF | ENDELSE | ENDFOR | ENDREP |
ENDWHILE WHILE...DO - Performs statement(s) as long as expression evaluates
to true. Subject is never executed if condition is initially false.
Conditional Statements WHILE expression DO statement
or
IF...THEN...ELSE - Conditionally executes a statement or block of WHILE expression DO BEGIN
statements. statements
IF expression THEN statement [ ELSE statement ] ENDWHILE
or
IF expression THEN BEGIN Jump Statements
statements
ENDIF [ ELSE BEGIN BREAK - Immediately exits from a loop (FOR, WHILE, REPEAT),
CASE, or SWITCH statement without resorting to GOTO state-
statements ments.
ENDELSE ] BREAK
CASE - Selects one statement for execution from multiple choices, CONTINUE - Immediately starts the next iteration of the enclosing
depending on the value of an expression. FOR, WHILE, or REPEAT loop.
CASE expression OF CONTINUE
expression: statement
GOTO - Transfers program control to point specified by label.
...
expression: statement GOTO, label
[ ELSE: statement ]
ENDCASE
SWITCH - Selects one statement for execution from multiple
choices, depending upon the value of an expression.
SWITCH expression OF
expression: statement
...
expression: statement
[ELSE: statement ]
ENDSWITCH

IDL Quick Reference


126 Alphabetical List of IDL Routines

Functions and Procedures Variable Scope


COMPILE_OPT - Gives IDL compiler information that changes the COMMON - Creates a common block.
default rules for compiling functions or procedures. COMMON Block_Name, Variable1, ..., Variablen
COMPILE_OPT opt1 [, opt2, ..., optn]
Note: optn can be IDL2, DEFINT32, HIDDEN,
LOGICAL_PREDICATE, OBSOLETE, STRICTARR, or
STRICTARRSUBS
FORWARD_FUNCTION - Causes argument(s) to be interpreted as
functions rather than variables (versions of IDL prior to 5.0 used
parentheses to declare arrays).
FORWARD_FUNCTION Name1, Name2, ..., Namen
FUNCTION - Defines a function.
FUNCTION Function_Name, parameter1, ..., parametern
PRO - Defines a procedure.
PRO Procedure_Name, argument1, ..., argumentn
Procedure_Name - Calls a procedure.
Procedure_Name, argument1, ..., argumentn
Result = FUNCTION( arg1, ..., argn ) - Calls a function.

Statements IDL Quick Reference


Alphabetical List of IDL Routines 127

Executive Commands
Executive commands must be entered at the IDL .RETURN - Continues execution until RETURN statement.
command prompt. They cannot be used in .RETURN
programs. .RNEW - Erases main program variables and then does .RUN.
.RNEW [File1,...,Filen]
.COMPILE - Compiles programs without running. To save listing in a file:.RNEW -L ListFile.lis File1
.COMPILE [File1,..., Filen] [, File2,..., Filen]
To compile from a temporary file: .COMPILE -f File To display listing on screen: .RNEW -T File1 [, File2,...,
TempFile Filen]
.CONTINUE - Continues execution of a stopped program. .RUN - Compiles and executes IDL commands from files or keyboard.
.CONTINUE .RUN [File1,..., Filen]
.EDIT - Opens files in editor windows of the IDL Workbench (Windows To save listing in a file:.RUN -L ListFile.lis File1
and Motif only). Note that filenames are separated by spaces, not [, File2,..., Filen]
commas.
To display listing on screen: .RUN -T File1 [, File2,...,
.EDIT File1 [File2 Filen] Filen]
.FULL_RESET_SESSION - Does everything .RESET_SESSION .SKIP - Skips over the next n statements and then single steps.
does, plus additional reset tasks such as unloading sharable librar-
ies. .SKIP [n]
.FULL_RESET_SESSION .STEP - Executes one or n statements from the current position.
.GO - Executes previously-compiled main program. .STEP [n] or .S [n]
.GO .STEPOVER - Executes a single statement if the statement doesn’t call
.OUT - Continues execution until the current routine returns. a routine.

.OUT .STEPOVER [n] or .SO [n]

.RESET_SESSION - Resets much of the state of an IDL session .TRACE - Similar to .CONTINUE, but displays each line of code
without requiring the user to exit and restart the IDL session. before execution.

.RESET_SESSION .TRACE

IDL Quick Reference


128 Alphabetical List of IDL Routines

Special Characters
The following table lists the characters that have a
special meaning in IDL:

Character Description

Ampersand (&) •Separates multiple commands on a single line

Apostrophe (') •Delimits string constants


•Indicates part of octal or hex constant

Asterisk (*) •Multiplication operator


•Array subscript range
•Pointer dereference (if in front of a valid pointer)

At Sign (@) •Include character: Used at beginning of a line to cause the IDL compiler to substitute the contents
of the file whose name appears after the @ symbol for the line.
•In interactive mode, @ is used to execute a batch file.

Colon (:) •Ends label identifiers


•Separates start and end subscript ranges

Dollar Sign ($) •Continue current command on the next line


•Issue operating system command if entered on a line by itself

Exclamation Point (!) •First character of system variable names and font-positioning commands

Period (.) •First character of executive commands


•Indicates floating-point numbers
•Indicates fields in a structure, such as in mystructure.field1

Question Mark (?) •Invokes online help when entered at the IDL command line
•Part of the ?: ternary operator used in conditional expressions

Semicolon (;) •First character of comment field. Everything after the semicolon is ignored by IDL. Semicolon
can be used as the first character or after an IDL command:
; This is a comment
COUNT = 5 ; Set variable COUNT to 5

Special Characters IDL Quick Reference


Alphabetical List of IDL Routines 129

Subscripts
Subscripts are used to designate array elements to
receive new values, and to retrieve the value of one
or more array elements. IDL arrays are zero-based,
meaning the first element is element 0.

Example Description

Vector[i] Element i + 1 of a vector. Vector[12] denotes the value of the 13th element of Vector.

Array[i, j] The element stored at column i, row j of an array.

Vector[i:j] Elements i through j of a vector.

Vector[i:*] Elements from i through the end of a vector.

Array[i, *] Column i of a two-dimensional array.

Array[*, j] The jth row of a two-dimensional array.

Array[i:j, m:n] Subarray of columns i though j, rows m through n.

Array[i:j:k] A range of subscripts, written [ k0:k1:k2 ], denoting every k2th element within the range of sub-
scripts k0 through k1 ( k0 must not be greater than k1). k2 is referred to as the subscript stride.

Array[i:*:k] Every k2th element from a given element to the last element of the dimension, written as [k0:*:k2].
k2 is referred to as the subscript stride.

Array[Array2] The elements of Array whose subscripts are the values of Array2.

(Array_Expression)[i] Element i of an array-valued expression.

IDL Quick Reference


130 Alphabetical List of IDL Routines

Operators
Mathematical Operators Relational Operators
+ Addition, String Concatenation EQ - Equal to
-. Subtraction and Negation GE. Greater than or equal to
*. Multiplication, Pointer dereference GT. Greater than
/. Division LE. Less than or equal to
^. Exponentiation LT. Less than
++. Increment NE. Not equal to
--. Decrement
MOD. Modulo Other Operators
Minimum/Maximum Operators [ ] Array concatenation, enclose array subscripts
( ) Group expressions to control order of evaluation
< The Minimum Operator = Assignment
>. The Maximum Operator op= Compound assignment
?: Conditional expression
Matrix Operators -> Object method invocation

# and ## Matrix Multiplication

Logical Operators
&& - Logical AND
||. Logical OR
~. Logical NOT
AND. Bitwise AND
NOT. Bitwise complement
OR. Bitwise OR
XOR. Bitwise exclusive OR

Operators IDL Quick Reference


Alphabetical List of IDL Routines 131

Operator Precedence
Operators with the highest precedence are evaluated
first. Operators with equal precedence are evaluated
from left to right.

Priority Operator
First (highest) ( ) (parentheses, to group expressions)
[ ] (brackets, to concatenate arrays)
Second . (structure field dereference)
[ ] (brackets, to subscript an array)
( ) (parentheses, used in a function call)
Third * (pointer dereference)
^ (exponentiation)
++ (increment)
-- (decrement)
Fourth * (multiplication)
# and ## (matrix multiplication)
/ (division)
MOD (modulus)
Fifth + (addition)
- (subtraction and negation)
< (minimum)
> (maximum)
NOT (bitwise negation)
~ (logical negation)
Sixth EQ (equality)
NE (not equal)
LE (less than or equal)
LT (less than)
GE (greater than or equal)
GT (greater than)
Seventh AND (bitwise AND)
OR (bitwise OR)
XOR (bitwise exclusive OR)
Eighth && (logical AND)
|| (logical OR)
Ninth ?: (conditional expression)

IDL Quick Reference


132 Alphabetical List of IDL Routines

System Variables
IDL system variables contain useful constants, FONT - integer specifying graphics text font system to use
control plotting defaults, and store information (-1 for Hershey, 0 for output device font, 1 for TrueType)
LINESTYLE - style of lines that connect points (see “Line
about the current IDL session. Styles” on page 136)
MULTI - integer array: [plots remaining on page, columns
Constant System Variables per page, rows per page, plots in Z direction, 0 for left to
right or 1 for top to bottom]
NOCLIP - if set, inhibits clipping of graphic vectors
!DPI - Double-precision pi (p).
NOERASE - set to nonzero value to prevent erasing
!DTOR - Degrees to radians, pi/180 ≈ 0.01745. NSUM - number of adjacent points to average
!MAP - Read-only system variable used by MAP_SET. POSITION - normalized coords of plot window (x0, y0, x1,
!PI - Single-precision pi (p). y1)
!RADEG - Radians to degrees, 180/pi ≈ 57.2958. PSYM - plotting symbol index (see “Plotting Symbols” on
!VALUES - Single- and double-precision NaN and Infinity values. page 136)
REGION - normalized coords of plot region (x0, y0, x1,
y1)
Graphics System Variables SUBTITLE - plot subtitle (under X axis label)
T - homogeneous 4 x 4 transformation matrix
!D - Information about current graphics device. T3D - enables 3D to 2D transformation
Fields: FILL_DIST - line interval, in device coordinates THICK - thickness of lines connecting points
FLAGS - longword of flags TITLE - main plot title
N_COLORS - number of simultaneously available colors TICKLEN - tick mark length (0.0 to 1.0)
NAME - string containing name of device !X, !Y, !Z - Axis structures for X, Y, and Z axes.
ORIGIN - pan/scroll offset (pan, scroll) Fields: CHARSIZE - character size of annotation when
TABLE_SIZE - number of color table indices Hershey fonts are selected
UNIT - logical number of file open for output CRANGE - output axis range
WINDOW - index of currently open window GRIDSTYLE - linestyle for tick marks/grids (see “Line
X_CH_SIZE, Y_CHAR_SIZE - width/height of rectangle Styles” on page 136)
that encloses the average character in current font, in MARGIN - 2-element array specifying plot window
device units (usually pixels) margins, in units of char size ([left or bottom, right or
X_PX_CM, Y_PX_CM - approx. number of pixels/cm top])
X_SIZE, Y_SIZE - total size of the display or window, in MINOR - number of minor tick marks
device units OMARGIN - 2-element array specifying plot window
X_VSIZE, Y_VSIZE - size of visible area of display or outer margins, in units of char size ([left or bottom, right
window or top])
ZOOM - X and Y zoom factors RANGE - 2-element vector specifying input axis range
!ORDER - Direction of image transfer: 0=bottom up, 1=top down. (min, max)
!P - Information for plotting procedures. REGION - normalized coords of region (2-element
Fields: floating-point array)
BACKGROUND - background color index S - 2-element array specifying scaling factors for
CHANNEL - default source or destination channel conversion between data and normalized coords
CHARSIZE - character size of annotation when Hershey STYLE - style of the axis encoded as bits in a longword.
fonts are selected 1=exact, 2=extend, 4=no axis, 8=no box, 16=inhibit
CHARTHICK - integer specifying thickness of vector setting Y axis min to 0 when data are all greater than 0
fonts (add values together for multiple effects)
CLIP - device coords of clipping window ( [x0, y0, z0), (x1, THICK - thickness of axis line
y1, z1)] TICKFORMAT - format string or string containing name
COLOR - default color index of function that returns format string used to format axis
tick mark labels

System Variables IDL Quick Reference


Alphabetical List of IDL Routines 133

!X, !Y, !Z - continued !EXCEPT - Controls when IDL checks for math error conditions
TICKINTERVAL - indicates the interval between major (0=never report exceptions, 1=report exceptions when interpreter is
returning to interactive prompt, 2=report exceptions at end of each
tick marks for the first axis level IDL statement).
TICKLAYOUT - indicates the tick layout style to be used !MOUSE - Status from the last cursor read operation.
to draw each level of the axis Fields: X, Y - location (in device coords) of cursor when
TICKLEN - tick mark length, in normal coords mouse button was pressed
TICKNAME - annotation for each tick (string array) BUTTON - specifies which mouse button was pressed (1 if
TICKS - number of major tick intervals left, 2 if middle, 4 if right) TIME - number of
TICKUNITS - indicates the units to be used for axis tick milliseconds since a base time
labeling
TICKV - data values for each tick mark (array) !WARN - Report use of obsolete routines.
TITLE - string containing axis title Fields: OBS_ROUTINES - if set to 1, IDL generates
TYPE - type of axis (0 for linear, 1 for logarithmic) warnings when it encounters use of obsolete routines
WINDOW - normalized coords of axis end points (2- OBS_SYSVARS - if set to 1, IDL generates warnings
element floating-point array when it encounters use of obsolete system variables
PARENS - if set to 1, IDL generates warnings when it
encounters use parentheses to index array
Error Handling/Informational
System Variables
!ERROR_STATE - Structure containing all error information.
Fields: NAME - string containing error name of IDL-
generated component of last error message (read-only).
BLOCK - string containing name of message block for
IDL-generated component of last error message (read-
only).
CODE - long-integer containing error code of IDL-
generated component of last error message.
SYS_CODE - long-integer containing error code of
operating system component of last error message.
SYS_CODE_TYPE - A string describing the type of
system code contained in SYS_CODE.
MSG - string containing text of IDL-generated component
of last error message (read-only).
MSG_PREFIX - string containing prefix string used for
error messages.
SYS_MSG - string containing text of operating system
generated component of last error message (read-only).

IDL Quick Reference


134 Alphabetical List of IDL Routines

IDL Environment System !DIR - Location of the main IDL directory.


!DLM_PATH - Indicates where IDL looks for Dynamically Loadable
Variables Modules when started. Read-only.
!EDIT_INPUT - Enables/disables keyboard line editing.
!HELP_PATH - Lists directories IDL will search for online help files
!CPU - Read-only variable that supplies information about the state of
the system processor, and of IDL's use of it. !JOURNAL - Logical unit number of journal output, or 0.
Fields: HW_VECTOR - True (1) if the system supports a !MORE - Set to 0 to prevent paginating help text.
vector unit (e.g. Macintosh Altivec/Velocity Engine) or !MAKE_DLL - Used to configure how IDL uses the
False (0) otherwise. CALL_EXTERNAL, DLMs, and LINKIMAGE for the current
VECTOR_ENABLE - True (1) if IDL will use a vector platform.
unit, if such a unit is available on the current system, and !PATH - Search path for IDL routines.
False (0) otherwise. UNIX: colon-separated list of directories.
HW_NCPU - The number of CPUs contained in the system Windows: semicolon-separated list of directories.
on which IDL is currently running. !PROMPT - String to be used for IDL prompt.
TPOOL_NTHREADS - The number of threads that IDL
!QUIET - Suppresses informational messages if set to nonzero.
will use in thread pool computations.
TPOOL_MIN_ELTS - The number of elements in a !VERSION - Type, architecture, and version of IDL.
computation that are necessary before IDL will use the Fields: ARCH - CPU hardware architecture of the system.
thread pool to perform the work OS - The name of the underlying operating system kernel
TPOOL_MAX_ELTS - The maximum number of elements e.g. sunos, Win32).
in a computation for which IDL will use the thread pool. OS_FAMILY - The generic name of the operating system
(e.g. UNIX, Windows).
OS_NAME - The vendor’s name for the operating
environment (e.g. Solaris, Microsoft Windows).
RELEASE - The IDL version number.
BUILD_DATE - Date the IDL exeuctable was compiled.

System Variables IDL Quick Reference


Alphabetical List of IDL Routines 135

Graphics Information
Direct Graphics Devices FONT - Text font index: -1 for vector, 0 for hardware fonts.
{XYZ}GRIDSTYLE - Linestyle index for tickmarks and grids.
LINESTYLE - LInestyle used to connect data points.
CGM - The CGM Device
{XYZ}MARGIN - Margin of plot window in character units.
HP - The HP-GL Device
{XYZ}MINOR - number of minor tick marks.
NULL - The Null Display Device
NOCLIP - Set to disable clipping of plot.
PCL - The PCL Device
NODATA - Set to plot only axes, titles, and annotation w/o data.
PRINTER - The Printer Device
NOERASE - Set to inhibit erasing before new plot.
PS - The PostScript Device
NORMAL - Set to plot in normal coordinates.
REGIS - The Regis Terminal Device
ORIENTATION - Angle (in degrees counter-clockwise) for text.
TEK - The Tektronix Device
POSITION - Position of plot window.
WIN - The Microsoft Windows Device
PSYM - Use plotting symbols to plot data points.
X - The X Windows Device
{XYZ}RANGE - Axis range.
Z - The Z-Buffer Device
{XYZ}STYLE - Axis type.
SUBTITLE - String for subtitle.
Graphics Keywords
SYMSIZE - Size of PSYM plotting symbols.
T3D - Set to use 3D transformation store in !P.T.
The following keywords are used with IDL plotting THICK - Overall line thickness.
routines (AXIS, CONTOUR, PLOT, OPLOT, {XYZ}THICK - Thickness of axis and tickmark lines.
SHADE_SURF, and SURFACE) and graphics {XYZ}TICKFORMAT - Allows advanced formatting of tick labels.
routines (CURSOR, ERASE, PLOTS, POLYFILL, {XYZ}TICKINTERVAL - Set to indicate the interval between major
TV, TVCRS, TVRD, and XYOUTS). Many have tick marks for the first axis level.

system variable equivalents. Not all keywords work {XYZ}TICKLAYOUT - Set to indicate the tick layout style to be used
to draw each level of the axes.
with all routines. Listings such as TICKLEN - Length of tickmarks in normal coordinates. 1.0 produces a
{XYZ}KEYWORD indicate that there are 3 grid. Negative values extend outside window.
keywords, one for each axis (e.g., XCHARSIZE, {XYZ}TICKLEN - Tickmark lengths for individual axes.
YCHARSIZE, ZCHARSIZE). {XYZ}TICKNAME - String array of up to 30 labels for tickmark
annotation.
BACKGROUND - Background color index when erasing. {XYZ}TICKS - Number of major tick intervals for axes.
CHANNEL - Channel index or mask for multi-channel displays. {XYZ}TICKUNITS - Set to indicate the units to be used for axis tick
CHARSIZE - Overall character size. labeling.

{XYZ}CHARSIZE - Character size for axes. {XYZ}TICKV - Array of up to 30 elements for tick mark values.
CHARTHICK - Overall thickness for vector fonts. {XYZ}TICK_GET - Variable in which to return values of tick marks.
CLIP - Coordinates of clipping window. TITLE - String for plot title.
COLOR - Color index for data, text, line, or polygon fill. {XYZ}TITLE - String for specified axis title.
DATA - Set to plot in data coordinates. ZVALUE - The Z coordinate for a 2D plot in 3D space.
DEVICE - Set to plot in device coordinates. Z - Z coordinate if Z argument not specified in 3D plot call.

IDL Quick Reference


136 Alphabetical List of IDL Routines

Line Styles Plotting Symbols


The LINESTYLE keyword to the Direct Graphics The PSYM keyword to Direct Graphics plotting
plotting routines OPLOT, PLOT, PLOTS, and routines OPLOT, PLOT, and PLOTS accepts the
SURFACE accepts the following values: following values:

Index Linestyle PSYM Value Plotting Symbol

0 Solid 1 Plus sign (+)

1 Dotted 2 Asterisk (*)

2 Dashed 3 Period (.)

3 Dash Dot 4 Diamond

4 Dash Dot Dot Dot 5 Triangle

5 Long Dashes 6 Square

7 X

8 User-defined. See USERSYM pro-


cedure.

9 Undefined

10 Histogram mode.

Graphics Information IDL Quick Reference


Scientific Data
Formats
This quick reference guide contains an alphabetical listing of all scientific data format routines including
CDF*, EOS* and HDF* routines. The alphabetical listing contains all functions, procedures, and statements
including the syntax of each.
• “CDF Routines” on page 138
• “EOS Routines” on page 140
• “HDF Routines” on page 144
• “HDF5 Routines” on page 149
• “NetCDF Routines” on page 153

IDL Quick Reference 137


138 Scientific Data Formats

CDF Routines CDF_CONTROL - Obtains or sets information for a CDF file.


CDF_CONTROL, Id [, ATTRIBUTE=name or number]
[, GET_ATTR_INFO=variable]
CDF_ATTCREATE - Creates a new attribute. [, GET_CACHESIZE=variable]
Result = CDF_ATTCREATE( Id, Attribute_Name [, GET_COPYRIGHT=variable]
[, /GLOBAL_SCOPE] [, /VARIABLE_SCOPE] ) [, GET_FILENAME=variable]
CDF_ATTDELETE - Deletes attribute from specified CDF file. [, GET_FORMAT=variable]
[, GET_NEGTOPOSFP0_MODE=variable]
CDF_ATTDELETE, Id, Attribute [, EntryNum]
[, GET_NUMATTRS=variable]
[, /ZVARIABLE]
[, GET_READONLY_MODE=variable]
CDF_ATTEXISTS - Determines whether specified attribute exists. [, GET_RVAR_CACHESIZE=variable]
Result = CDF_ATTEXISTS( Id, Attribute [, EntryNum] [, GET_VAR_INFO=variable]
[, /ZVARIABLE] ) [, GET_ZMODE=variable]
CDF_ATTGET - Reads an attribute entry from a CDF file. [, GET_ZVAR_CACHESIZE=variable]
CDF_ATTGET, Id, Attribute, EntryNum, Value [, SET_CACHESIZE=value]
[, CDF_TYPE= variable] [, /ZVARIABLE] [, SET_EXTENDRECS=records]
[, SET_INITIALRECS=records]
CDF_ATTINQ - Obtains information about specified attribute. [, /SET_NEGTOPOSFP0_MODE]
CDF_ATTINQ, Id, Attribute, Name, Scope, MaxEntry [, SET_PADVALUE=value]
[, MaxZEntry] [, /SET_READONLY_MODE]
CDF_ATTNUM - Returns an attribute number. [, SET_RVAR_CACHESIZE=value{See Note}]
Result = CDF_ATTNUM(Id, Attribute_Name) [, SET_RVARS_CACHESIZE=value{See Note}]
[, SET_ZMODE={0 | 1 | 2}]
CDF_ATTPUT - Writes an attribute entry to a CDF file. [, SET_ZVAR_CACHESIZE=value{See Note}]
CDF_ATTPUT, Id, Attribute, EntryNum, Value [, SET_ZVARS_CACHESIZE=value{See Note}]
[, /ZVARIABLE] [, VARIABLE=name or index] [, /ZVARIABLE]
CDF_ATTRENAME - Renames an existing attribute. Note: Use only with MULTI_FILE CDF files
CDF_ATTRENAME, Id, OldAttr, NewName CDF_CREATE - Creates a new Common Data Format file.
CDF_CLOSE - Closes specified Common Data Format file. Result = CDF_CREATE( Filename, [Dimensions]
CDF_CLOSE, Id [, /CLOBBER] [, /MULTI_FILE | , /SINGLE_FILE]
[, /COL_MAJOR | , /ROW_MAJOR] )
CDF_COMPRESSION - Sets or returns the compression mode for a Encoding Keywords (pick one):
CDF file and/or variables.
[, /ALPHAOSF1_ENCODING]
CDF_COMPRESSION, Id
[, /ALPHAVMSD_ENCODING]
[, GET_COMPRESSION=variable]
[, /ALPHAVMSG_ENCODING]
[, GET_GZIP_LEVEL=variable]
[, /DECSTATION_ENCODING]
[, GET_VAR_COMPRESSION=variable]
[, /HOST_ENCODING]
[, GET_VAR_GZIP_LEVEL=variable]
[, /HP_ENCODING] [, /IBMRS_ENCODING]
[, SET_COMPRESSION={0 | 1 | 2 | 3 | 5}]
[, /IBMPC_ENCODING] [, /MAC_ENCODING]
[, SET_GZIP_LEVEL=integer{1 to 9}]
[, /NETWORK_ENCODING] [, /NEXT_ENCODING]
[, SET_VAR_COMPRESSION={0 | 1 | 2 | 3 | 5}]
[, /SGI_ENCODING] [, /SUN_ENCODING]
[, SET_VAR_GZIP_LEVEL=integer{1 to 9}]
Decoding Keywords (pick one):
[, VARIABLE=variable name or index] [, /ZVARIABLE]
[, /ALPHAOSF1_DECODING]
[, /ALPHAVMSD_DECODING]
[, /ALPHAVMSG_DECODING]
[, /DECSTATION_DECODING]
[, /HOST_DECODING] [, /HP_DECODING]
[, /IBMRS_DECODING] [, /IBMPC_DECODING]
[, /MAC_DECODING] [, /NETWORK_DECODING]
[, /NEXT_DECODING] [, /SGI_DECODING]
[, /SUN_DECODING]

IDL Quick Reference


Scientific Data Formats 139

CDF_DELETE - Deletes specified Common Data Format file. CDF_PARSE_EPOCH16 - Parses input string into a double preci-
CDF_DELETE, Id sion value properly formatted for use as CDF_EPOCH16 variable.
Result = CDF_PARSE_EPOCH16(Epoch_string)
CDF_DOC - Gets documentation information about a CDF file.
CDF_DOC, Id, Version, Release, Copyright CDF_SET_CDF27_BACKWARD_COMPATIBLE - Allows
users of IDL version 6.3 and later to create a CDF file that can be
[, INCREMENT=variable] read by IDL 6.2 or earlier
CDF_ENCODE_EPOCH - Encodes CDF_EPOCH variable into a CDF_SET_CDF27_BACKWARD_COMPATIBLE
string. [, /YES | /NO ]
Result = CDF_ENCODE_EPOCH(Epoch [, EPOCH={0 | CDF_SET_MD5CHECKSUM - Calculates and inserts a MD5
1 | 2 | 3}] ) checksum into a CDF file.
CDF_ENCODE_EPOCH16 - Encodes CDF_EPOCH16 variable CDF_SET_MD5CHECKSUM, Id, [, /REMOVE]
into a string.
CDF_VARCREATE - Creates new variable in CDF file.
Result = CDF_ENCODE_EPOCH16(Epoch16
Result = CDF_VARCREATE( Id, Name [, DimVary]
[, EPOCH={0 | 1 | 2 | 3}] )
[, /CDF_BYTE | , /CDF_CHAR | , /CDF_DOUBLE | ,
CDF_EPOCH - Computes/breaks down CDF_EPOCH values. /CDF_EPOCH | , /CDF_FLOAT | , /CDF_INT1 | ,
CDF_EPOCH, Epoch, Year [, Month, Day, Hour, Minute, /CDF_INT2 | , /CDF_INT4 | , /CDF_REAL4 | ,
Second, Milli] [, /BREAKDOWN_EPOCH] /CDF_REAL8 | , /CDF_UCHAR | , /CDF_UINT1 | ,
[, /COMPUTE_EPOCH] /CDF_UINT2 | , /CDF_UINT4]
[, ALLOCATERECS=records] [, DIMENSIONS=array]
CDF_EPOCH_COMPARE - Compares two epoch (date and time)
values and returns an integer value of 1, 0, or -1. [, NUMELEM=characters] [, /REC_NOVARY | ,
Result = CDF_EPOCH_COMPARE(epoch1, epoch2) /REC_VARY] [, /ZVARIABLE] )

CDF_EPOCH_DIFF - Compares two epoch (date and time) values CDF_VARDELETE - Deletes variable from a SINGLE_FILE CDF file.
and returns the difference in milliseconds (default) or microsec- CDF_VARDELETE, Id, Variable [, /ZVARIABLE]
onds.
Result = CDF_EPOCH_DIFF(epoch1, epoch2 CDF_VARGET - Reads multiple values from CDF file variable.
[, /MILLI_SECONDS] [, /MICRO_SECONDS]) CDF_VARGET, Id, Variable, Value [, COUNT=vector]
[, INTERVAL=vector] [, OFFSET=vector]
CDF_EPOCH16 - Computes/breaks down CDF_EPOCH16 values.
[, REC_COUNT=records] [, REC_INTERVAL=value]
CDF_EPOCH16, Epoch, Year [, Month, Day, Hour, [, REC_START=record] [, /STRING{data in CDF file
Minute, Second, Milli, Micro, Nano, Pico] must be type CDF_CHAR or CDF_UCHAR}]
[, /BREAKDOWN_EPOCH] [, /COMPUTE_EPOCH] [, /ZVARIABLE]
CDF_ERROR - Returns explanation of a given status code. CDF_VARGET1 - Reads one value from a CDF file variable.
Result = CDF_ERROR(Status) CDF_VARGET1, Id, Variable, Value [, OFFSET=vector]
CDF_EXISTS - Returns True if CDF data format library is supported [, REC_START=record] [, /STRING{data in CDF file
on the current IDL platform. must be type CDF_CHAR or CDF_UCHAR}]
Result = CDF_EXISTS( ) [, /ZVARIABLE]
CDF_INQUIRE - Returns global information about CDF file. CDF_VARINQ - Returns structure containing information about spec-
Result = CDF_INQUIRE(Id) ified variable.
Result = CDF_VARINQ( Id, Variable [, /ZVARIABLE] )
CDF_LIB_INFO - Returns information about the CDF Library being
used. CDF_VARNUM - Returns variable number associated with given vari-
CDF_LIB_INFO [, COPYRIGHT=variable] able name.
[, INCREMENT=variable] [, RELEASE=variable] Result = CDF_VARNUM( Id, VarName [, IsZVar] )
[, SUBINCREMENT=variable] [, VERSION=variable] CDF_VARPUT - Writes value to a variable.
CDF_OPEN - Opens an existing Common Data Format file. CDF_VARPUT, Id, Variable, Value [, COUNT=vector]
Result = CDF_OPEN(Filename) [, INTERVAL=vector] [, OFFSET=vector]
[, REC_INTERVAL=value] [, REC_START=record]
CDF_PARSE_EPOCH - Parses input string into a double precision
value properly formatted for use as CDF_EPOCH variable. [, /ZVARIABLE]
Result = CDF_PARSE_EPOCH(Epoch_string) CDF_VARRENAME - Renames existing variable.
CDF_VARRENAME, Id, OldVariable, NewName
[, /ZVARIABLE]

IDL Quick Reference


140 Scientific Data Formats

EOS Routines EOS_GD_DEFPIXREG - Defines whether the pixel center or pixel


corner is used when requesting the location of a given pixel.
Result = EOS_GD_DEFPIXREG(gridID, pixreg)
EOS_EH_CONVANG - Converts angles between decimal degrees, EOS_GD_DEFPROJ - Defines the GCTP projection and projection
radians, and packed degrees-minutes-seconds. parameters of the grid.
Result = EOS_EH_CONVANG(inAngle, code) Result = EOS_GD_DEFPROJ(gridID, projcode, zonecode,
EOS_EH_GETVERSION - Retrieves the HDF-EOS version string spherecode, projparm)
of an HDF-EOS file.
EOS_GD_DEFTILE - Defines the tiling dimensions for fields
Result = EOS_EH_GETVERSION(fid, version) defined following this function call.
EOS_EH_IDINFO - Returns the HDF file IDs corresponding to the Result = EOS_GD_DEFTILE( gridID, tilecode [, tilerank,
HDF-EOS file ID returned by EOS_SW_OPEN, EOS_GD_OPEN, tiledims] )
or EOS_PT_OPEN.
EOS_GD_DEFTIMEPERIOD - Defines a time period for a grid.
Result = EOS_EH_IDINFO(fid, HDFfid, sdInterfaceID)
Result = EOS_GD_DEFTIMEPERIOD(gridID, periodID,
EOS_EXISTS - Returns True if HDF EOS format library is supported starttime, stoptime)
on the current IDL platform.
Result = EOS_EXISTS( ) EOS_GD_DEFVRTREGION - Subsets on a monotonic field or
contiguous elements of a dimension.
EOS_GD_ATTACH - Attaches to the grid using the gridname param- Result = EOS_GD_DEFVRTREGION(gridID, regionID,
eter as the identifier.
vertObj, range)
Result = EOS_GD_ATTACH(fid, gridname)
EOS_GD_DETACH - Detaches from grid interface.
EOS_GD_ATTRINFO - Returns number type and number of ele-
ments (count) of a grid attribute. Result = EOS_GD_DETACH(gridID)
Result = EOS_GD_ATTRINFO(gridID, attrname, EOS_GD_DIMINFO - Retrieves the size of the specified dimension.
numbertype, count) Result = EOS_GD_DIMINFO(gridID, dimname)
EOS_GD_CLOSE - Closes the HDF grid file. EOS_GD_DUPREGION - Copies information stored in current
Result = EOS_GD_CLOSE(fid) region or period to a new region or period.
Result = EOS_GD_DUPREGION(regionID)
EOS_GD_COMPINFO - Returns the compression code and com-
pression parameters for a given field. EOS_GD_EXTRACTREGION - Reads data into the data buffer
Result = EOS_GD_COMPINFO(gridID, fieldname, from a subsetted region as defined by
EOS_GD_DEFBOXREGION.
compcode, compparm)
Result = EOS_GD_EXTRACTREGION(gridID, regionID,
EOS_GD_CREATE - Creates a grid within the file. fieldname, buffer)
Result = EOS_GD_CREATE(fid, gridname, xdimsize,
EOS_GD_FIELDINFO - Retrieves information on a specific data
ydimsize, upleftpt, lowrightpt) field.
EOS_GD_DEFBOXREGION - Defines a longitude-latitude box Result = EOS_GD_FIELDINFO(gridID, fieldname, rank,
region for a grid. dims, numbertype, dimlist)
Result = EOS_GD_DEFBOXREGION(gridID, cornerlon,
EOS_GD_GETFILLVALUE - Retrieves fill value for specified
cornerlat) field.
EOS_GD_DEFCOMP - Sets the HDF field compression for subse- Result = EOS_GD_GETFILLVALUE(gridID, fieldname,
quent grid field definitions. fillvalue)
Result = EOS_GD_DEFCOMP(gridID, compcode
EOS_GD_GETPIXELS - Returns the pixel rows and columns for
[, compparm] ) specified longitude/latitude pairs.
EOS_GD_DEFDIM - Defines dimensions used by field definition Result = EOS_GD_GETPIXELS(gridID, nLonLat, lonVal,
routines to establish size of the field. latVal, pixRow, pixCol)
Result = EOS_GD_DEFDIM(gridID, dimname, dim)
EOS_GD_GETPIXVALUES - Reads data from a data field for the
EOS_GD_DEFFIELD - Defines data fields to be stored in the grid. specified pixels.
Result = EOS_GD_DEFFIELD( gridID, fieldname, Result = EOS_GD_GETPIXVALUES(gridID, nPixels,
dimlist, numbertype [, /MERGE] ) pixRow, pixCol, fieldname, buffer)
EOS_GD_DEFORIGIN - Defines the origin of the grid data. EOS_GD_GRIDINFO - Returns number of rows, columns, and the
location of the upper left and lower right corners of the grid image.
Result = EOS_GD_DEFORIGIN(gridID, origincode)
Result = EOS_GD_GRIDINFO(gridID, xdimsize,
ydimsize, upleft, lowright)

IDL Quick Reference


Scientific Data Formats 141

EOS_GD_INQATTRS - Retrieves information about attributes EOS_GD_SETFILLVALUE - Sets fill value for the specified field.
defined in grid. Result = EOS_GD_SETFILLVALUE(gridID, fieldname,
Result = EOS_GD_INQATTRS( gridID, attrlist fillvalue)
[, LENGTH (OUT)=value] )
EOS_GD_SETTILECACHE - Sets tile cache parameters.
EOS_GD_INQDIMS - Retrieves information about dimensions Result = EOS_GD_SETTILECACHE(gridID, fieldname,
defined in grid.
maxcache, cachecode)
Result = EOS_GD_INQDIMS(gridID, dimname, dims)
EOS_GD_TILEINFO - Returns tiling code, tiling rank, and tiling
EOS_GD_INQFIELDS - Retrieves information about the data fields dimensions for a given field.
defined in grid.
Result = EOS_GD_TILEINFO(gridID, fieldname,
Result = EOS_GD_INQFIELDS(gridID, fieldlist, rank,
tilecode, tilerank, tiledims)
numbertype)
EOS_GD_WRITEATTR - Writes/updates attribute in a grid.
EOS_GD_INQGRID - Retrieves number and names of grids defined
in HDF-EOS file. Result = EOS_GD_WRITEATTR( gridID, attrname,
Result = EOS_GD_INQGRID( filename, gridlist datbuf [, COUNT=value] [, HDF_TYPE=value] )
[, LENGTH (OUT)=value] ) EOS_GD_WRITEFIELD - Writes data to a grid field.
EOS_GD_INTERPOLATE - Performs bilinear interpolation on a Result = EOS_GD_WRITEFIELD(gridID, fieldname, data
grid field. [, EDGE=array] [, START=array] [, STRIDE=array])
Result = EOS_GD_INTERPOLATE(gridID, Interp,
EOS_GD_WRITEFIELDMETA - Writes field metadata for a grid
lonVal, latVal, fieldname, interpVal) field not defined by the Grid API.
EOS_GD_NENTRIES - Returns number of entries and descriptive Result = EOS_GD_WRITEFIELDMETA(gridID,
string buffer size for a specified entity. fieldname, dimlist, numbertype)
Result = EOS_GD_NENTRIES( gridID, entrycode
EOS_GD_WRITETILE - Writes a single tile of data to a field.
[, LENGTH (OUT)=value] )
Result = EOS_GD_WRITETILE(gridID, fieldname,
EOS_GD_OPEN - Opens an existing file or creates a new file. tilecoords, data)
Result = EOS_GD_OPEN( filename, access [, /CREATE]
EOS_PT_ATTACH - Attaches to point using the pointname parame-
[, /RDWR | , /READ] ) ter as the identifier.
EOS_GD_ORIGININFO - Retrieves origin code. Result = EOS_PT_ATTACH(fid, pointname)
Result = EOS_GD_ORIGININFO(gridID, origincode) EOS_PT_ATTRINFO - Returns number type and number of ele-
ments of a point attribute.
EOS_GD_PIXREGINFO - Retrieves the pixel registration code.
Result = EOS_PT_ATTRINFO( pointID, attrname,
Result = EOS_GD_PIXREGINFO(gridID, pixregcode)
numbertype, count)
EOS_GD_PROJINFO - Retrieves GCTP projection code, zone
code, spheroid code, and projection parameters of the grid. EOS_PT_BCKLINKINFO - Returns linkfield to the previous level.
Result = EOS_GD_PROJINFO(gridID, projcode, Result = EOS_PT_BCKLINKINFO(pointID, level,
zonecode, spherecode, projparm) linkfield)

EOS_GD_QUERY - Returns information about a specified grid. EOS_PT_CLOSE - Closes the HDF point file.
Result = EOS_GD_QUERY( Filename, GridName, [Info]) Result = EOS_PT_CLOSE(fid)

EOS_GD_READATTR - Reads attribute from a grid. EOS_PT_CREATE - Creates point as a Vgroup within the HDF file.
Result = EOS_GD_READATTR(gridID, attrname, datbuf) Result = EOS_PT_CREATE(fid, pointname)

EOS_GD_READFIELD - Reads data from a grid field. EOS_PT_DEFBOXREGION - Defines area of interest for a point.
Result = EOS_GD_READFIELD( gridID, fieldname, Result = EOS_PT_DEFBOXREGION(pointID, cornerlon,
buffer [, EDGE=array] [, START=array] cornerlat)
[, STRIDE=array] ) EOS_PT_DEFLEVEL - Defines a level within a point.
EOS_GD_READTILE - Reads from tile within field. Result = EOS_PT_DEFLEVEL(pointID, levelname,
Result = EOS_GD_READTILE(gridID, fieldname, fieldlist, fieldtype, fieldorder)
tilecoords, buffer) EOS_PT_DEFLINKAGE - Defines linkfield between two levels.
EOS_GD_REGIONINFO - Returns information about a subsetted Result = EOS_PT_DEFLINKAGE(pointID, parent, child,
region for a particular field. linkfield)
Result = EOS_GD_REGIONINFO(gridID, regionID,
fieldname, ntype, rank, dims, size, upleftpt, lowrightpt)

IDL Quick Reference


142 Scientific Data Formats

EOS_PT_DEFTIMEPERIOD - Defines a time period for a point. EOS_PT_OPEN - Creates a new file or opens an existing one.
Result = EOS_PT_DEFTIMEPERIOD(pointID, starttime, Result = EOS_PT_OPEN( fieldname [, /CREATE]
stoptime) [, /RDWR | , /READ] )
EOS_PT_DEFVRTREGION - Selects records within a point EOS_PT_PERIODINFO - Returns information about a subsetted
whose field values are within a given range. time period for a given fieldlist.
Result = EOS_PT_DEFVRTREGION( pointID, regionID, Result = EOS_PT_PERIODINFO(pointID, periodID,
vertObj, range) level, fieldlist, size)
EOS_PT_DETACH - Detaches from a point data set. EOS_PT_PERIODRECS - Returns record numbers within a sub-
Result = EOS_PT_DETACH(pointID) setted time period for a given level.
Result = EOS_PT_PERIODRECS(pointID, periodID,
EOS_PT_EXTRACTPERIOD - Reads data from the designated level, nrec, recs)
level fields into the data buffer from the subsetted time period.
Result = EOS_PT_EXTRACTPERIOD(pointID, periodID, EOS_PT_QUERY - Returns information about a specified point.
level, fieldlist, buffer) Result = EOS_PT_QUERY( Filename, PointName, [Info] )
EOS_PT_EXTRACTREGION - Reads data from the designated EOS_PT_READATTR - Reads attributes.
level fields into the data buffer from the subsetted area of interest. Result = EOS_PT_READATTR(pointID, attrname, datbuf)
Result = EOS_PT_EXTRACTREGION( pointID,
regionID, level, fieldlist, buffer) EOS_PT_READLEVEL - Reads data from the specified fields and
records of a single level in a point.
EOS_PT_FWDLINKINFO - Returns linkfield to the given level. Result = EOS_PT_READLEVEL(pointID, level, fieldlist,
Result = EOS_PT_FWDLINKINFO(pointID, level, nrec, recs, buffer)
linkfield) EOS_PT_REGIONINFO - Returns information about a subsetted
EOS_PT_GETLEVELNAME - Returns the name of a level given area of interest for a given fieldlist.
the level number (0-based). Result = EOS_PT_REGIONINFO(pointID, regionID,
Result = EOS_PT_GETLEVELNAME( pointID, level, level, fieldlist, size)
levelname [, LENGTH (OUT)=variable] ) EOS_PT_REGIONRECS - Returns the record numbers within a
EOS_PT_GETRECNUMS - Returns record numbers in one level subsetted geographic region for a given level.
that are connected to a given set of records in a different level. Result = EOS_PT_REGIONRECS(pointID, regionID,
Result = EOS_PT_GETRECNUMS( pointID, inlevel, level, nrec, recs)
outlevel, inNrec, inRecs, outNrec, outRecs) EOS_PT_SIZEOF - Returns information about specified fields in a
EOS_PT_INQATTRS - Returns attribute list as a comma-separated point regardless of level.
string. Result = EOS_PT_SIZEOF(pointID, fieldlist, fldlevel)
Result = EOS_PT_INQATTRS( pointID, attrlist EOS_PT_UPDATELEVEL - Updates the specified fields and
[, LENGTH=value] ) records of a single level.
EOS_PT_INQPOINT - Retrieves number and names of points Result = EOS_PT_UPDATELEVEL(pointID, level, field,
defined in HDF-EOS file. list, nrec, recs, data)
Result = EOS_PT_INQPOINT( filename, pointlist EOS_PT_WRITEATTR - Writes/updates an attribute in a point.
[, LENGTH (OUT)=value] )
Result = EOS_PT_WRITEATTR( pointID, attrname,
EOS_PT_LEVELINDX - Returns the level index for a given level. datbuf [, COUNT=value] [, HDF_TYPE=value] )
Result = EOS_PT_LEVELINDX( pointID, levelname) EOS_PT_WRITELEVEL - Writes (appends) full records to a level.
EOS_PT_LEVELINFO - Returns information about the fields in a Result = EOS_PT_WRITELEVEL(pointID, level, nrec,
given level. data)
Result = EOS_PT_LEVELINFO(pointID, level, fieldlist,
fldtype, fldorder) EOS_QUERY - Returns information about the makeup of an HDF-
EOS file.
EOS_PT_NFIELDS - Returns the number of fields in a level. Result = EOS_QUERY( Filename, [Info] )
Result = EOS_PT_NFIELDS( pointID, level
EOS_SW_ATTACH - Attaches to the swath using the swathname
[, LENGTH=bytes] ) parameter as the identifier.
EOS_PT_NLEVELS - Returns the number of levels in a point. Result = EOS_SW_ATTACH(fid, swathname)
Result = EOS_PT_NLEVELS(pointID) EOS_SW_ATTRINFO - Returns number type and number of ele-
ments of a swath attribute.
EOS_PT_NRECS - Returns the number of records in a given level.
Result = EOS_SW_ATTRINFO(swathID, attrname,
Result = EOS_PT_NRECS( pointID, level)
numbertype, count)

IDL Quick Reference


Scientific Data Formats 143

EOS_SW_CLOSE - Closes the HDF swath file. EOS_SW_EXTRACTPERIOD - Reads data into the data buffer
Result = EOS_SW_CLOSE(fid) from the subsetted time period.
Result = EOS_SW_EXTRACTPERIOD(swathID,
EOS_SW_COMPINFO - Returns compression code and compres- periodID, fieldname, external_mode, buffer)
sion parameters for a given field.
Result = EOS_SW_COMPINFO(swathID, fieldname, EOS_SW_EXTRACTREGION - Reads data into the data buffer
compcode, compparm) from the subsetted region.
Result = EOS_SW_EXTRACTREGION(swathID,
EOS_SW_CREATE - Creates a swath within the file. regionID, fieldname, external_mode, buffer)
Result = EOS_SW_CREATE(fid, swathname)
EOS_SW_FIELDINFO - Retrieves information on a specific data
EOS_SW_DEFBOXREGION - Defines a longitude-latitude box field.
region for a swath. Result = EOS_SW_FIELDINFO(swathID, fieldname,
Result = EOS_SW_DEFBOXREGION(swathID, rank, dims, numbertype, dimlist)
cornerlon, cornerlat, mode)
EOS_SW_GETFILLVALUE - Retrieves fill value for given field.
EOS_SW_DEFCOMP - Sets HDF field compression for subsequent Result = EOS_SW_GETFILLVALUE(swathID, fieldname,
swath field definitions.
fillvalue)
Result = EOS_SW_DEFCOMP( swathID, compcode,
[, compparm] ) EOS_SW_IDXMAPINFO - Retrieves size of the indexed array and
the array of indexed elements of the specified geolocation mapping.
EOS_SW_DEFDATAFIELD - Defines geolocation fields to be Result = EOS_SW_IDXMAPINFO(swathID, geodim,
stored in the swath.
datadim, index)
Result = EOS_SW_DEFDATAFIELD( swathID,
fieldname, dimlist, numbertype [, /MERGE] ) EOS_SW_INQATTRS - Retrieves information about attributes
defined in swath.
EOS_SW_DEFDIM - Defines dimensions that are used by the field Result = EOS_SW_INQATTRS( swathID, attrlist
definition routines to establish the size of the field.
[, LENGTH (OUT)=value] )
Result = EOS_SW_DEFDIM(swathID, fieldname, dim)
EOS_SW_INQDATAFIELDS - Retrieves information about all of
EOS_SW_DEFDIMMAP - Defines monotonic mapping between the data fields defined in swath.
the geolocation and data dimensions.
Result = EOS_SW_INQDATAFIELDS(swathID, fieldlist,
Result = EOS_SW_DEFDIMMAP(swathID, geodim,
rank, numbertype)
datadim, offset, increment)
EOS_SW_INQDIMS - Retrieves information about all of the dimen-
EOS_SW_DEFGEOFIELD - Defines geolocation fields to be sions defined in swath.
stored in the swath.
Result = EOS_SW_INQDIMS(swathID, dimname, dim)
Result = EOS_SW_DEFGEOFIELD( swathID, fieldname,
dimlist, numbertype [, /MERGE] ) EOS_SW_INQGEOFIELDS - Retrieves information about all of
the geolocation fields defined in swath.
EOS_SW_DEFIDXMAP - Defines mapping between a geolocation Result = EOS_SW_INQGEOFIELDS(swathID, fieldlist,
and data dimension.
rank, numbertype)
Result = EOS_SW_DEFIDXMAP(swathID, geodim,
datadim, index) EOS_SW_INQIDXMAPS - Retrieves information about all indexed
geolocation/data mappings in swath.
EOS_SW_DEFTIMEPERIOD - Defines a time period for a swath. Result = EOS_SW_INQIDXMAPS(swathID, idxmap,
Result = EOS_SW_DEFTIMEPERIOD(swathID, starttime idxsizes)
, stoptime, mode)
EOS_SW_INQMAPS - Retrieves information about all non-indexed
EOS_SW_DEFVRTREGION - Subsets along any dimension. geolocation relations in swath.
Result = EOS_SW_DEFVRTREGION(swathID, regionID, Result = EOS_SW_INQMAPS(swathID, dimmap, offset,
vertObj, range) increment)
EOS_SW_DETACH - Detaches from the swath interface. EOS_SW_INQSWATH - Retrieves number and names of swaths
Result = EOS_SW_DETACH(swathID) defined in HDF-EOS file.
Result = EOS_SW_INQSWATH( filename, swathlist
EOS_SW_DIMINFO - Retrieves the size of the specified dimension. [, LENGTH=value] )
Result = EOS_SW_DIMINFO(swathID, dimname)
EOS_SW_MAPINFO - Retrieves offset and increment of the speci-
EOS_SW_DUPREGION - Copies information stored in a current fied geolocation mapping.
region or period to a new region or period. Result = EOS_SW_MAPINFO(swathID, geodim, datadim,
Result = EOS_SW_DUPREGION(regionID) offset, increment)

IDL Quick Reference


144 Scientific Data Formats

EOS_SW_NENTRIES - Returns number of entries and descriptive HDF_AN_ANNLIST - Obtains a list of annotation identifiers.
string buffer size for specified entity. Result = HDF_AN_ANNLIST(an_id, annot_type, obj_tag,
Result = EOS_SW_NENTRIES( swathID, entrycode obj_ref, ann_list)
[, LENGTH (OUT)=value] )
HDF_AN_ATYPE2TAG - Returns HDF tag corresponding to given
EOS_SW_OPEN - Opens an existing file, or creates a new file. annotation type.
Result = EOS_SW_OPEN( filename [, /CREATE] Result = HDF_AN_ATYPE2TAG(annot_type)
[, /RDWR | , /READ] ) HDF_AN_CREATE - Creates HDF AN annotation.
EOS_SW_PERIODINFO - Returns information about a subsetted Result = HDF_AN_CREATE(an_id, obj_tag, obj_ref,
time period for a given field. annot_type)
Result = EOS_SW_PERIODINFO(swathID, periodID,
fieldname, ntype, rank, dims, size) HDF_AN_CREATEF - Creates file annotation.
Result = HDF_AN_CREATEF(an_id, annot_type)
EOS_SW_QUERY - Returns information about a specified swath.
Result=EOS_SW_QUERY(Filename, SwathName, [Info]) HDF_AN_END - Terminates access to the HDF AN interface.
HDF_AN_END, an_id
EOS_SW_READATTR - Reads attribute from a swath field.
Result = EOS_SW_READATTR(swathID, attrname, HDF_AN_ENDACCESS - Terminates access to an annotation.
datbuf) HDF_AN_ENDACCESS, ann_id

EOS_SW_READFIELD - Reads data from a swath field. HDF_AN_FILEINFO - Retrieves total number of annotations and
stores them in the appropriate parameters.
Result = EOS_SW_READFIELD( swathID, fieldname,
Result = HDF_AN_FILEINFO(an_id, n_file_labels,
buffer [, EDGE=array] [, START=array]
n_file_descs, n_data_labels, n_data_descs)
[, STRIDE=array] )
HDF_AN_GET_TAGREF - Retrieves HDF tag and reference num-
EOS_SW_REGIONINFO - Returns information about a subsetted ber of annotation.
region for a given field.
Result = HDF_AN_GET_TAGREF(an_id, index,
Result = EOS_SW_REGIONINFO(swathID, regionID,
annot_type, ann_tag, ann_ref)
fieldname, ntype, rank, dims, size)
HDF_AN_ID2TAGREF - Retrieves HDF tag/reference number pair
EOS_SW_SETFILLVALUE - Sets fill value for the specified field. of annotation.
Result = EOS_SW_SETFILLVALUE(swathID, fieldname, Result = HDF_AN_ID2TAGREF(ann_id, ann_tag,
fillvalue) ann_ref)
EOS_SW_WRITEATTR - Writes/updates attribute in a swath. HDF_AN_NUMANN - Returns total number of annotations of a
Result = EOS_SW_WRITEATTR( swathID, attrname, given type.
datbuf [, COUNT=value] [, HDF_TYPE=value] ) Result = HDF_AN_NUMANN(an_id, annot_type,
obj_tag, obj_ref)
EOS_SW_WRITEDATAMETA - Writes field metadata for an
existing data field. HDF_AN_READANN - Reads specified annotation.
Result = EOS_SW_WRITEDATAMETA(swathID, Result = HDF_AN_READANN( ann_id, annotation
fieldname, dimlist, numbertype) [, LENGTH=characters] )
EOS_SW_WRITEFIELD - Writes data to a swath field. HDF_AN_SELECT - Obtains identifier of specified annotation.
Result = EOS_SW_WRITEFIELD( swathID, fieldname, Result = HDF_AN_SELECT(an_id, index, annot_type)
cut, data [, EDGE=array] [, START=array]
HDF_AN_START - Initializes interface for specified file.
[, STRIDE=array] )
Result = HDF_AN_START(file_id)
EOS_SW_WRITEGEOMETA - Writes field metadata for an exist-
ing geolocation field. HDF_AN_TAG2ATYPE - Returns annotation type of correspond-
ing HDF tag.
Result = EOS_SW_WRITEGEOMETA(swathID,
fieldname, dimlist, numbertype) Result = HDF_AN_TAG2ATYPE(ann_tag)
HDF_AN_TAGREF2ID - Returns ID of annotation with given tag.
HDF Routines Result = HDF_AN_TAGREF2ID(an_id, ann_tag, ann_ref)
HDF_AN_WRITEANN - Writes annotation text.
HDF_AN_ANNLEN - Returns number of characters in annotation. Result = HDF_AN_WRITEANN( ann_id, annotation
[, LENGTH=characters] )
Result = HDF_AN_ANNLEN(ann_id)

IDL Quick Reference


Scientific Data Formats 145

HDF_BROWSER - See “HDF_BROWSER” on page 44. HDF_DFAN_LABLIST - Retrieves list of reference numbers and
labels for given tag.
HDF_CLOSE - Closes HDF file associated with the given file handle.
Result = HDF_DFAN_LABLIST( Filename, Tag, Reflist,
HDF_CLOSE, FileHandle
Labellist [, LISTSIZE=value] [, MAXLABEL=value]
HDF_DELDD - Deletes tag or reference from list of data descriptors. [, STARTPOS=value] [, /STRING] )
HDF_DELDD, FileHandle, Tag, Ref
HDF_DFAN_LASTREF - Returns reference number of most
HDF_DF24_ADDIMAGE - Writes 24-bit raster image to HDF file. recently read or written annotation.
HDF_DF24_ADDIMAGE, Filename, Image Result = HDF_DFAN_LASTREF( )
[, /FORCE_BASELINE{useful only if QUALITY<25}] HDF_DFAN_PUTDESC - Writes description for given tag and ref-
[, /JPEG | , /RLE] [, QUALITY=value{0 to 100}] erence number.

HDF_DF24_GETIMAGE - Reads 24-bit raster image from HDF HDF_DFAN_PUTDESC, Filename, Tag, Ref, Description
file. HDF_DFAN_PUTLABEL - Writes label for given tag and reference
HDF_DF24_GETIMAGE, Filename, Image [, /LINE | , number.
/PIXEL | , /PLANE] HDF_DFAN_PUTLABEL, Filename, Tag, Ref, Label
HDF_DF24_GETINFO - Retrieves information about the current HDF_DFP_ADDPAL - Appends palette to a HDF file.
24-bit HDF image.
HDF_DFP_ADDPAL, Filename, Palette
HDF_DF24_GETINFO, Filename, Width, Height,
Interlace HDF_DFP_GETPAL - Reads next available palette from HDF file.
HDF_DFP_GETPAL, Filename, Palette
HDF_DF24_LASTREF - Returns reference number of most
recently read or written 24-bit image in an HDF file. HDF_DFP_LASTREF - Returns reference number of most recently
Result = HDF_DF24_LASTREF( ) read or written palette in HDF file.
Result = HDF_DFP_LASTREF( )
HDF_DF24_NIMAGES - Returns the number of 24-bit images in an
HDF file. HDF_DFP_NPALS - Returns number of palettes present in HDF file.
Result = HDF_DF24_NIMAGES(Filename) Result = HDF_DFP_NPALS(Filename)
HDF_DF24_READREF - Sets reference number of image in an HDF_DFP_PUTPAL - Appends palette to a HDF file.
HDF file.
HDF_DFP_PUTPAL, Filename, Palette [, /DELETE]
HDF_DF24_READREF, Filename, Refno [, /OVERWRITE]
HDF_DF24_RESTART - Causes next call to HDF_DFP_READREF - Sets reference number of the palette.
HDF_DF24_GETIMAGE to read first 24-bit image in the HDF file.
HDF_DFP_READREF, Filename, Refno
HDF_DF24_RESTART
HDF_DFP_RESTART - Causes next call to HDF_DFR8_GETPAL
HDF_DFAN_ADDFDS - Adds file description to HDF file. to read from the first palette in HDF file.
HDF_DFAN_ADDFDS, Filename, Description HDF_DFP_RESTART
HDF_DFAN_ADDFID - Adds file annotation to HDF file. HDF_DFP_WRITEREF - Sets reference number for next palette to
HDF_DFAN_ADDFID, Filename, Label be written to a HDF file.

HDF_DFAN_GETDESC - Reads description for given tag and ref- HDF_DFP_WRITEREF, Filename, Refno
erence number in HDF file. HDF_DFR8_ADDIMAGE - Appends 8-bit raster image to the spec-
HDF_DFAN_GETDESC, Filename, Tag, Ref, Description ified HDF file.
[, /STRING] HDF_DFR8_ADDIMAGE, Filename, Image
HDF_DFAN_GETFDS - Reads next available file description. [, /FORCE_BASELINE{useful only if QUALITY<25}]
[, /JPEG | , /RLE] [[, /IMCOMP] , PALETTE=vector or
HDF_DFAN_GETFDS, Filename, Description [, /FIRST]
array] [, QUALITY=value]
[, /STRING]
HDF_DFR8_GETIMAGE - Retrieves image, palette from HDF file.
HDF_DFAN_GETFID - Reads next available file annotation.
HDF_DFR8_GETIMAGE, Filename, Image [, Palette]
HDF_DFAN_GETFID, Filename, Label [, /FIRST]
HDF_DFR8_GETINFO - Retrieves information about the current 8-
HDF_DFAN_GETLABEL - Reads label for given tag-reference bit HDF image.
pair.
HDF_DFR8_GETINFO, Filename, Width, Height,
HDF_DFAN_GETLABEL, Filename, Tag, Ref, Label
Has_Palette
HDF_DFR8_LASTREF - Returns reference number of the most
recently read or written 8-bit image in HDF file.
Result = HDF_DFR8_LASTREF( )

IDL Quick Reference


146 Scientific Data Formats

HDF_DFR8_NIMAGES - Returns number of 8-bit images in speci- HDF_GR_GETIMINFO - Retrieves general information about HDF
fied HDF file. GR raster image.
Result = HDF_DFR8_NIMAGES(Filename) Result = HDF_GR_GETIMINFO(ri_id, gr_name, ncomp,
data_type, interlace_mode, dim_sizes, num_attrs)
HDF_DFR8_PUTIMAGE - Writes 8-bit raster image as first image
in HDF file. HDF_GR_GETLUTID - Gets identifier of HDF GR palette.
HDF_DFR8_PUTIMAGE, Filename, Image Result = HDF_GR_GETLUTID(ri_id, pal_index)
[, /FORCE_BASELINE{useful only if QUALITY<25}]
[[, /IMCOMP] , PALETTE=vector or array] [, /JPEG | , HDF_GR_GETLUTINFO - Retrieves information about a palette.
/RLE] [, QUALITY=value] Result = HDF_GR_GETLUTINFO(pal_id, ncomp,
data_type, interlace_mode, num_entries)
HDF_DFR8_READREF - Sets reference number of image to be
read from a HDF file by the next call to HDF_DFR8_GETIMAGE. HDF_GR_IDTOREF - Returns HDF reference number of specified
HDF_DFR8_READREF, Filename, Refno raster image.
Result = HDF_GR_IDTOREF(ri_id)
HDF_DFR8_RESTART - Causes next call to
HDF_DFR8_GETIMAGE to read from first image in HDF file. HDF_GR_LUTTOREF - Returns HDF reference number of the
HDF_DFR8_RESTART specified palette.
Result = HDF_GR_LUTTOREF(pal_id)
HDF_DFR8_SETPALETTE - Sets current palette to be used for
subsequent images in a HDF file. HDF_GR_NAMETOINDEX - Returns index of raster image given
HDF_DFR8_SETPALETTE, Palette its name
Result = HDF_GR_NAMETOINDEX(gr_id, gr_name)
HDF_DUPDD - Generates new references to existing data in HDF file.
HDF_DUPDD, FileHandle, NewTag, NewRef, OldTag, HDF_GR_READIMAGE - Reads subsample of raster image.
OldRef Result = HDF_GR_READIMAGE( ri_id, data
[, EDGE=array] [, /INTERLACE] [, START=array]
HDF_EXISTS - Returns True if HDF format library is supported on [, STRIDE=array] )
the current IDL platform.
Result = HDF_EXISTS( ) HDF_GR_READLUT - Reads specified palette.
Result = HDF_GR_READLUT( pal_id, pal_data
HDF_GR_ATTRINFO - Retrieves information about specified HDF
data object. [, /INTERLACE] )
Result = HDF_GR_ATTRINFO(obj_id, attr_index, name, HDF_GR_REFTOINDEX - Returns index of specified raster image.
data_type, count) Result = HDF_GR_REFTOINDEX(gr_id, gr_ref)
HDF_GR_CREATE - Creates HDF GR raster image. HDF_GR_SELECT - Obtains identifier of specified raster image.
Result = HDF_GR_CREATE(gr_id, name, ncomp, Result = HDF_GR_SELECT(gr_id, index)
data_type, interlace_mode, dim_sizes)
HDF_GR_SETATTR - Attaches attribute to specified object.
HDF_GR_END - Terminates specified HDF GR interface session. Result = HDF_GR_SETATTR(obj_id, attr_name,
HDF_GR_END, gr_id data_type, count, values)
HDF_GR_ENDACCESS - Terminates access to specified raster HDF_GR_SETCHUNK - Makes specified raster image a chunked
image. raster image.
HDF_GR_ENDACCESS, ri_id Result = HDF_GR_SETCHUNK(ri_id, dim_length,
HDF_GR_FILEINFO - Retrieves number of raster images and global comp_type, comp_prm)
attributes for the specified HDF GR interface.
HDF_GR_SETCHUNKCACHE - Sets maximum number of
Result = HDF_GR_FILEINFO(gr_id, n_images, chunks to be cached.
n_file_attrs) Result = HDF_GR_SETCHUNKCACHE(ri_id, maxcache,
HDF_GR_FINDATTR - Finds index of HDF data object's attribute flags)
given its attribute name.
HDF_GR_SETCOMPRESS - Specifies whether specified raster
Result = HDF_GR_FINDATTR(obj_id, attr_name) image will be stored in compressed format.
HDF_GR_GETATTR - Obtains all values of HDF GR attribute. Result = HDF_GR_SETCOMPRESS(ri_id, comp_type,
Result = HDF_GR_GETATTR(obj_id, attr_index, values) comp_prm)

HDF_GR_GETCHUNKINFO - Retrieves chunking information HDF_GR_SETEXTERNALFILE - Specifies that raster image will
about HDF GR raster image. be written to external file.
Result = HDF_GR_GETCHUNKINFO(ri_id, dim_length, Result = HDF_GR_SETEXTERNALFILE(ri_id, filename,
flag) offset)

IDL Quick Reference


Scientific Data Formats 147

HDF_GR_START - Initializes interface for the specified file. HDF_SD_ATTRINFO - Reads or retrieves information about SD
Result = HDF_GR_START(file_id) attribute.
HDF_SD_ATTRINFO, S_ID, Attr_Index
HDF_GR_WRITEIMAGE - Writes subsample of raster image data. [, COUNT=variable] [, DATA=variable]
Result = HDF_GR_WRITEIMAGE( ri_id, data [, HDF_TYPE=variable] [, NAME=variable]
[, EDGE=array] [, INTERLACE={0 | 1 | 2}] [, TYPE=variable]
[, START=array] [, STRIDE=array] )
HDF_SD_ATTRSET - Writes attributes to an open HDF SD dataset.
HDF_GR_WRITELUT - Writes a palette. HDF_SD_ATTRSET, S_ID, Attr_Name, Values [, Count]
Result = HDF_GR_WRITELUT( pal_id, pal_data ) [, /BYTE] [, /DFNT_CHAR] [, /DFNT_FLOAT32]
HDF_HDF2IDLTYPE - Converts HDF data type code into IDL vari- [, /DFNT_FLOAT64] [, /DFNT_INT8] [, /DFNT_INT16]
able type code. [, /DFNT_INT32] [, /DFNT_UINT8] [, /DFNT_UINT16]
Result = HDF_HDF2IDLTYPE( hdftypecode) [, /DFNT_UINT32] [, /DOUBLE] [, /FLOAT] [, /INT]
HDF_IDL2HDFTYPE - Converts IDL variable type code into HDF [, /LONG] [, /SHORT] [, /STRING]
data type code. HDF_SD_CREATE - Creates and defines a Scientific Dataset for an
Result = HDF_IDL2HDFTYPE( idltypecode) HDF file.

HDF_ISHDF - Determines whether specified file is HDF file. Result = HDF_SD_CREATE( SD_ID, Name, Dims
[, /BYTE] [, /DFNT_CHAR8] [, /DFNT_FLOAT32]
Result = HDF_ISHDF(Filename)
[, /DFNT_FLOAT64] [, /DFNT_INT8] [, /DFNT_INT16]
HDF_LIB_INFO - Returns information about the HDF Library being [, /DFNT_INT32] [, /DFNT_UINT8] [, /DFNT_UINT16]
used.
[, /DFNT_UINT32] [, /DOUBLE] [, /FLOAT]
HDF_LIB_INFO, [FileHandle] [, MAJOR=variable]
[, HDF_TYPE=type] [, /INT] [, /LONG] [, /SHORT]
[, MINOR=variable] [, RELEASE=variable]
[, /STRING] )
[, VERSION=variable]
HDF_SD_DIMGET - Retrieves info. about SD dataset dimension.
HDF_NEWREF - Returns next available reference number for HDF
file. HDF_SD_DIMGET, Dim_ID [, /COUNT]
Result = HDF_NEWREF(FileHandle) [, COMPATIBILITY=variable] [, /FORMAT]
[, /LABEL] [, /NAME] [, /NATTR] [, /SCALE] [, /TYPE]
HDF_NUMBER - Returns number of tags in HDF file or the number [, /UNIT]
of references associated with a given tag.
Result = HDF_NUMBER( FileHandle [, TAG=integer] ) HDF_SD_DIMGETID - Returns dimension ID given a dataset
“SDS_ID” and dimension number.
HDF_OPEN - Opens or creates HDF file for reading and/or writing. Result = HDF_SD_DIMGETID(SDS_ID,
Result = HDF_OPEN( Filename [, /ALL] [, /CREATE] Dimension_Number)
[, NUM_DD=value] [, /RDWR] [, /READ] [, /WRITE] )
HDF_SD_DIMSET - Sets scale and data strings for SD dimension.
HDF_PACKDATA - Packs a set IDL variable into an array of raw byte HDF_SD_DIMSET, Dim_ID [, /BW_INCOMP]
data.
[, FORMAT=string] [, LABEL=string] [, NAME=string]
Result = HDF_PACKDATA( data1 [, data2 [, data3
[, SCALE=vector] [, UNIT=string]
[, data4 [, data5 [, data6 [, data7 [, data8]]]]]]]
[, HDF_ORDER=array] [, HDF_TYPE=array] HDF_SD_END - Closes SD interface to an HDF file.
[, NREC=records] ) HDF_SD_END, SD_ID
HDF_READ - See “HDF_READ” on page 44. HDF_SD_ENDACCESS - Closes SD dataset interface.
HDF_SD_ADDDATA - Writes hyperslab of values to an SD dataset. HDF_SD_ENDACCESS, SD_ID
HDF_SD_ADDDATA, SDS_ID, Data [, COUNT=vector] HDF_SD_FILEINFO - Retrieves the number of datasets and global
[, /NOREVERSE] [, START=vector] [, STRIDE=vector] attributes in HDF file.
HDF_SD_FILEINFO, SD_ID, Datasets, Attributes
HDF_SD_ATTRFIND - Locates index of HDF attribute given its
name. HDF_SD_GETDATA - Retrieves a hyperslab of values from SD
Result = HDF_SD_ATTRFIND(S_ID, Name) dataset.
HDF_SD_GETDATA, SDS_ID, Data [, COUNT=vector]
[, /NOREVERSE] [, START=vector] [, STRIDE=vector]

IDL Quick Reference


148 Scientific Data Formats

HDF_SD_GETINFO - Retrieves information about SD dataset. HDF_VD_ATTRFIND - Returns an attribute's index number given
HDF_SD_GETINFO, SDS_ID [, CALDATA=variable] the name of an attribute.
[, COORDSYS=variable] [, DIMS=variable] Result = HDF_VD_ATTRFIND(VData, FieldID, Name)
[, FILL=variable] [, FORMAT=variable] HDF_VD_ATTRINFO - Retrieves information about a VData
[, HDF_TYPE=variable] [, LABEL=variable] attribute.
[, NAME=variable] [, NATTS=variable] HDF_VD_ATTRINFO, VData, FieldID, AttrID, Values
[, NDIMS=variable] [, /NOREVERSE] [, COUNT=variable] [, DATA=variable]
[, RANGE=variable] [, TYPE=variable] [, HDF_TYPE=variable] [, NAME=variable ]
[, UNIT=variable] [, TYPE=variable]
HDF_SD_IDTOREF - Converts SD data set ID into SD data set ref- HDF_VD_ATTRSET - Writes a vdata attribute or a vdata field
erence number. attribute to the currently attached HDF VData structure.
Result = HDF_SD_IDTOREF(SDS_ID) HDF_VD_ATTRSET, VData, FieldID, Attr_Name, Values
HDF_SD_ISCOORDVAR - Determines whether supplied dataset [, Count] [, /BYTE] [, /DFNT_CHAR8]
ID represents NetCDF “coordinate” variable. [, /DFNT_FLOAT32] [, /DFNT_FLOAT64]
Result = HDF_SD_ISCOORDVAR(SDS_ID) [, /DFNT_INT8] [, /DFNT_INT16] [, /DFNT_INT32]
[, /DFNT_UCHAR8] [, /DFNT_UINT8]
HDF_SD_NAMETOINDEX - Returns SD dataset index given its
name and SD interface ID. [, /DFNT_UINT16] [, /DFNT_UINT32] [, /DOUBLE]
Result = HDF_SD_NAMETOINDEX(SD_ID, SDS_Name) [, /FLOAT] [, /INT] [, /LONG] [, /SHORT] [, /STRING]
[, /UINT ] [, /ULONG ]
HDF_SD_REFTOINDEX - Returns SD dataset index given its ref-
erence number and SD interface ID. HDF_VD_DETACH - Called when done accessing a VData.
Result = HDF_SD_REFTOINDEX(SD_ID, Refno) HDF_VD_DETACH, VData
HDF_SD_SELECT - Returns SD dataset ID. HDF_VD_FDEFINE - Adds new field specification for VData.
Result = HDF_SD_SELECT(SD_ID, Number) HDF_VD_FDEFINE, VData, Fieldname [, /BYTE | ,
/DLONG, | , /DOUBLE | , /DULONG | , /FLOAT | , /INT |
HDF_SD_SETCOMPRESS - Compresses an existing HDF SD
dataset or sets the compression method of a new HDF SD dataset. , /LONG | , /UINT, | , /ULONG] [, ORDER=value]
HDF_SD_SETCOMPRESS, SDS_ID, comptype HDF_VD_FEXIST - Returns true if specified fields exist in HDF file.
[, EFFORT=integer{1 to 9}] Result = HDF_VD_FEXIST(VData, Fieldnames)
HDF_SD_SETEXTFILE - Moves data values from a dataset into an HDF_VD_FIND - Returns reference number of specified VData.
external file.
Result = HDF_VD_FIND(FileHandle, Name)
HDF_SD_SETEXTFILE, SDS_ID, Filename
[, OFFSET=bytes] HDF_VD_GET - Returns information about a VData.
HDF_VD_GET, VData [, CLASS=variable]
HDF_SD_SETINFO - Sets information about SD dataset.
[, COUNT=variable] [, FIELDS=variable]
HDF_SD_SETINFO, SDS_ID [, FILL=value]
[, INTERLACE=variable] [, NAME=variable]
[, FORMAT=string] [, LABEL=string]
[, NFIELDS=variable] [, REF=variable]
[, RANGE=[max, min]] [, UNIT=string]
[, SIZE=variable] [, TAG=variable]
[, COORDSYS=string] [, CALDATA=structure]
HDF_VD_GETID - Returns VData reference number for next VData.
HDF_SD_START - Opens or creates HDF file and initializes SD
interface. Result = HDF_VD_GETID(FileHandle, VDataId)
Result = HDF_SD_START( Filename [, /READ | , HDF_VD_GETINFO - Returns information about each Vdata field.
/RDWR] [, /CREATE] ) HDF_VD_GETINFO, VData, Index [, NAME=variable]
HDF_UNPACKDATA - Unpacks array of byte data into IDL vari- [, ORDER=variable] [, SIZE=variable]
ables. [, TYPE=variable]
HDF_UNPACKDATA, packeddata, data1 [, data2 [, data3
HDF_VD_INSERT - Adds VData or VGroup to contents of VGroup.
[, data4 [, data5 [, data6 [, data7 [, data8]]]]]]]
HDF_VD_INSERT, VGroup, VData(or
[, HDF_ORDER=array] [, HDF_TYPE=array]
Vgroup)[, POSITION=variable]
[, NREC=records]
HDF_VD_ISATTR - Returns True (1) if the VData is storing an
HDF_VD_ATTACH - Accesses a VData with the given ID. attribute, False (0) otherwise.
Result = HDF_VD_ATTACH( FileHandle, VDataId Result = HDF_VD_ISATTR(VData)
[, /READ] [, /WRITE] )
HDF_VD_ISVD - Returns True (1) if an object is a VData.
Result = HDF_VD_ISVD(VGroup, Id)

IDL Quick Reference


Scientific Data Formats 149

HDF_VD_ISVG - Returns True (1) if object is a VGroup. HDF_VG_INQTR - Returns true if specified tag/reference pair is
Result = HDF_VG_ISVG(VGroup, Id) linked to the specified Vgroup.
Result = HDF_VG_INQTR(VGroup, Tag, Ref)
HDF_VD_LONE - Returns array containing all VDatas that are not
contained in another VData. HDF_VG_INSERT - Adds VData or VGroup to contents of VGroup.
Result = HDF_VD_LONE( FileHandle HDF_VG_INSERT, VGroup, VData(or
[, MAXSIZE=value] ) Vgroup)[, POSITION=variable]
HDF_VD_NATTRS - Returns the number of attributes associated HDF_VG_ISVD - Returns true if object is a VData.
with the specified VData. Result = HDF_VG_ISVD(VGroup, Id)
Result = HDF_ VD _NATTRS( VData, FieldID )
HDF_VG_ISVG - Returns true if object is a VGroup.
HDF_VD_READ - Reads data from a VData. Result = HDF_VG_ISVG(VGroup, Id)
Result = HDF_VD_READ( VData, Data
[, FIELDS=string] [, /FULL_INTERLACE | , HDF_VG_LONE - Returns array containing IDs of all VGroups that
are not contained in another VGroup.
/NO_INTERLACE] [, NRECORDS=records] )
Result = HDF_VG_LONE( FileHandle
HDF_VD_SEEK - Moves read pointer in specified VData to specific [, MAXSIZE=value] )
record number.
HDF_VD_SEEK, VData, Record HDF_VG_NUMBER - Returns number of HDF file objects in speci-
fied VGroup.
HDF_VD_SETINFO - Specifies general information about a VData. Result = HDF_VG_NUMBER(VGroup)
HDF_VD_SETINFO, VData [, CLASS=string]
HDF_VG_SETINFO - Sets the name and class of a VGroup.
[, /FULL_INTERLACE | , /NO_INTERLACE]
HDF_VG_SETINFO, VGroup [, CLASSNAME=string]
[, NAME=string]
[, NAME=string]
HDF_VD_WRITE - Stores data in a VData
HDF_VD_WRITE, VData, Fields, Data
[, /FULL_INTERLACE | , /NO_INTERLACE]
HDF5 Routines
[, NRECORDS=records]
H5_BROWSER - Presents a graphical user interface for viewing and
HDF_VG_ADDTR - Adds tag and reference to specified VGroup. reading HDF5 files.
HDF_VG_ADDTR, VGroup, Tag, Ref Result = H5_BROWSER([Files] [, /DIALOG_READ] )
HDF_VG_ATTACH - Attaches (opens) a VGroup. H5_CLOSE - Flushes all data to disk, closes file identifiers, and cleans
Result = HDF_VG_ATTACH( FileHandle, VGroupId up memory.
[, /READ] [, /WRITE] ) H5_CLOSE
HDF_VG_DETACH - Called when finished accessing a VGroup. H5_CREATE - Creates and closes a new HDF5 file.
HDF_VG_DETACH, VGroup H5_CREATE, Filename, Structure
HDF_VG_GETID - Returns VGroup ID for specified VGroup. H5_GET_LIBVERSION - Returns the current version of the HDF5
Result = HDF_VG_GETID(FileHandle, VGroupId) library used by IDL.
Result = H5_GET_LIBVERSION( )
HDF_VG_GETINFO - Returns information about a VGroup.
HDF_VG_GETINFO, VGroup [, CLASS=variable] H5_OPEN - Initializes IDL’s HDF5 library.
[, NAME=variable] [, NENTRIES=variable] H5_OPEN
[, REF=variable] [, TAG=variable] H5_PARSE - Recursively descends through an HDF5 file or group and
creates an IDL structure containing object information and data.
HDF_VG_GETNEXT - Returns reference number of the next object
in a VGroup. Result = H5_PARSE (File [, /READ_DATA])
Result = HDF_VG_GETNEXT(VGroup, Id) or
Result = H5_PARSE (Loc_id, Name [, FILE=string]
HDF_VG_GETTR - Returns tag/reference pair at specified position [, PATH=string] [, /READ_DATA])
within a VGroup.
HDF_VG_GETTR, VGroup, Index, Tags, Refs H5A_CLOSE - Closes the specified attribute and releases resources
used by it.
HDF_VG_GETTRS - Returns tag/reference pairs of HDF file objects H5A_CLOSE, Attribute_id
belonging to the specified VGroup.
HDF_VG_GETTRS, VGroup, Tags, Refs H5A_CREATE - Creates a dataset as an attribute of another group or
dataset.
[, MAXSIZE=value]
Result = H5A_CREATE(Loc_id, Name, Datatype_id,
Dataspace_id)

IDL Quick Reference


150 Scientific Data Formats

H5A_DELETE - Removes the attribute specified by its name from a H5D_READ - Reads the data within a dataset, converting from the
dataset, group, or named datatype. HDF5 file datatype into the HDF5 memory datatype, and finally
into the corresponding IDL datatype.
H5A_DELETE, Loc_id, Name
Result = H5D_READ(Dataset_id [, Datatype_id]
H5A_GET_NAME - Retrieves an attribute name given the attribute [, FILE_SPACE=id] [, MEMORY_SPACE=id] )
identifier number.
Result = H5A_GET_NAME(Attribute_id) H5D_WRITE - Writes data to a dataset.
H5D_WRITE, Dataset_id, Data
H5A_GET_NUM_ATTRS - Returns the number of attributes
attached to a group, dataset, or a named datatype. [, MEMORY_SPACE_ID=value]
Result = H5A_GET_NUM_ATTRS(Loc_id) [, FILE_SPACE_ID=value]

H5A_GET_SPACE - Returns the identifier number of a copy of the H5F_CLOSE - Closes the specified file and releases resources used by
dataspace for an attribute. it.
Result = H5A_GET_SPACE(Attribute_id) H5F_CLOSE, File_id

H5A_GET_TYPE - Returns the identifier number of a copy of the H5F_CREATE - The primary function for creating HDF5 files.
datatype for an attribute. Result = H5F_CREATE(Filename)
Result = H5A_GET_TYPE(Attribute_id)
H5F_IS_HDF5 - Determines if a file is in the HDF5 format.
H5A_OPEN_IDX - Opens an existing attribute by the index of that Result = H5F_IS_HDF5(Filename)
attribute.
Result = H5A_OPEN_IDX(Loc_id, Index) H5F_OPEN - Opens an existing HDF5 file.
Result = H5F_OPEN(Filename)([, /WRITE])
H5A_OPEN_NAME - Opens an existing attribute by the name of
that attribute. H5G_CLOSE - Closes the specified group and releases resources used
Result = H5A_OPEN_NAME(Loc_id, Name) by it.
H5G_CLOSE, Group_id
H5A_READ - Reads the data within an attribute, converting from the
HDF5 file datatype into the HDF5 memory datatype, and finally H5G_CREATE - Creates a new empty group and gives it a name.
into the corresponding IDL datatype.
Result = H5G_CREATE(Loc_id, Name)
Result = H5A_READ(Attribute_id [, Datatype_id])
H5G_GET_COMMENT - Retrieves a comment string from a speci-
H5A_WRITE - Writes data to an attribute. fied object.
H5A_WRITE, Attribute_id, Data Result = H5G_GET_COMMENT(Loc_id, Name)
H5D_CLOSE - Closes the specified dataset and releases its used H5G_GET_LINKVAL - Returns the name of the object pointed to by
resources. a symbolic link.
H5D_CLOSE, Dataset_id Result = H5G_GET_LINKVAL(Loc_id, Name)
H5D_CREATE - Creates a dataset at the specified location. H5G_GET_MEMBER_NAME - Retrieves the name of an object
Result = H5D_CREATE(Loc_id, Name, Datatype_id, within a group, by its zero-based index.
Dataspace_id [, CHUNK_DIMENSIONS=vector Result = H5G_GET_MEMBER_NAME(Loc_id, Name,
[, GZIP=value [, /SHUFFLE]]]) Index)

H5D_EXTEND - Changes the current dimensions of the Dataset, H5G_GET_NMEMBERS - Returns the number of objects within a
within the limits of the Dataspace. group.
H5D_EXTEND,Dataset_id, Size Result = H5G_GET_NMEMBERS(Loc_id, Name)

H5D_GET_SPACE - Returns an identifier number for a copy of the H5G_GET_NUM_OBJS - Returns number of objects in the group
dataspace for a dataset. specified by its identifier.
Result = H5D_GET_SPACE(Dataset_id) Result = H5G_GET_NUM_OBJS(Loc_id)

H5D_GET_STORAGE_SIZE - Returns the amount of storage in H5G_GET_OBJ_NAME_BY_IDX - Returns a name of an object


bytes required for a dataset. specified by an index.
Result = H5D_GET_STORAGE_SIZE(Dataset_id) Result = H5G_GET_OBJ_NAME_BY_IDX(Loc_id,
Index)
H5D_GET_TYPE - Returns an identifier number for a copy of the
datatype for a dataset. H5G_GET_OBJINFO - Retrieves information from a specified
Result = H5D_GET_TYPE(Dataset_id) object.
Result = H5G_GET_OBJINFO(Loc_id, Name
H5D_OPEN - Opens an existing dataset within an HDF5 file.
[, /FOLLOW_LINK] )
Result = H5D_OPEN(Loc_id, Name)

IDL Quick Reference


Scientific Data Formats 151

H5G_LINK - Creates a link of the specified type. A link can only point H5S_GET_SELECT_ELEM_POINTLIST - Returns a list of the
to one of the three classes of named objects: group, dataset, and element points in the current dataspace selection.
named datatype.
Result = H5S_GET_SELECT_ELEM_POINTLIST
H5G_LINK, Loc_id, Current_Name, New_Name (Dataspace_id [, START=value] [, NUMBER=value] )
[, /SOFTLINK] [, NEW_LOC_ID=value]
H5S_GET_SELECT_HYPER_BLOCKLIST - Returns a list of
H5G_MOVE - Renames/moves an object within an HDF5 group or the hyperslab blocks in the current dataspace selection.
file.
Result = H5S_GET_SELECT_HYPER_BLOCKLIST
H5G_MOVE, Loc_id, Src_Name, Dst_Name (Dataspace_id [, START=value] [, NUMBER=value] )
[, NEW_LOC_ID=value]
H5S_GET_SELECT_HYPER_NBLOCKS - Determines the
H5G_OPEN - Opens an existing group within an HDF5 file. number of hyperslab blocks in the current dataspace selection.
Result = H5G_OPEN(Loc_id, Name) Result = H5S_GET_SELECT_HYPER_NBLOCKS
H5G_SET_COMMENT - Sets a comment for a specified object. (Dataspace_id)
H5G_SET_COMMENT, Loc_id, Name, Comment H5S_GET_SELECT_NPOINTS - Determines the number of ele-
ments in a dataspace selection.
H5G_UNLINK - Removes the link to an object from a group. Result = H5S_GET_SELECT_NPOINTS
H5G_UNLINK, Loc_id, Name (Dataspace_id)
H5I_GET_FILE_ID - Retrieves an identifier for the file containing H5S_GET_SIMPLE_EXTENT_DIMS - Returns the dimension
the specified object. sizes for a dataspace.
Result = H5I_GET_FILE_ID(Loc_id) Result =
H5I_GET_TYPE - Returns the object’s type. H5S_GET_SIMPLE_EXTENT_DIMS(Dataspace_id
Result = H5I_GET_TYPE(Obj_id) [, MAX_DIMENSIONS=variable] )
H5R_CREATE - Creates a reference to either an object or a dataspace H5S_GET_SIMPLE_EXTENT_NDIMS - Determines the num-
region of a dataset. ber of dimensions (or rank) of a dataspace.
Result = H5R_CREATE(Loc_id, Name Result = H5S_GET_SIMPLE_EXTENT_NDIMS
[,DATASPACE_ID=value]) (Dataspace_id)
H5R_DEREFERENCE - Opens a reference and returns the object H5S_GET_SIMPLE_EXTENT_NPOINTS - Determines the
identifier. number of elements in a dataspace.
Result = H5R_DEREFERENCE(Loc_id, Reference) Result = H5S_GET_SIMPLE_EXTENT_NPOINTS
(Dataspace_id)
H5R_GET_OBJECT_TYPE - Returns the type of object that an
object reference points to. H5S_GET_SIMPLE_EXTENT_TYPE - Returns the current
Result = H5R_GET_OBJECT_TYPE(Loc_id, Reference) class of a dataspace.
Result = H5S_GET_SIMPLE_EXTENT_TYPE
H5R_GET_REGION - Retrieves a dataspace associated with a
region reference. (Dataspace_id)
Result = H5R_GET_REGION(Dataset_id, Reference) H5S_IS_SIMPLE - Determines whether a dataspace is a simple
dataspace.
H5S_CLOSE - Releases and terminates access to a dataspace.
Result = H5S_IS_SIMPLE(Dataspace_id)
H5S_CLOSE, Dataspace_id
H5S_OFFSET_SIMPLE - Sets the selection offset for a simple
H5S_COPY - Copies an existing dataspace. dataspace.
Result = H5S_COPY(Dataspace_id) H5S_OFFSET_SIMPLE, Dataspace_id, Offset
H5S_CREATE_SCALAR - Creates a scalar dataspace. H5S_SELECT_ALL - Selects the entire extent of a dataspace.
Result = H5S_CREATE_SCALAR() H5S_SELECT_ALL, Dataspace_id
H5S_CREATE_SIMPLE - Creates a simple dataspace. H5S_SELECT_ELEMENTS - Selects array elements to be
Result = H5S_CREATE_SIMPLE(Dimensions included in the selection for a dataspace.
[, MAX_DIMENSIONS=vector] ) H5S_SELECT_ELEMENTS, Dataspace_id, Coordinates,
/RESET
H5S_GET_SELECT_BOUNDS - Retrieves the coordinates of the
bounding box containing the current dataspace selection. H5S_SELECT_HYPERSLAB - Selects a hyperslab region to be
Result = H5S_GET_SELECT_BOUNDS(Dataspace_id) included in the selection for a dataspace.
H5S_SELECT_HYPERSLAB, Dataspace_id, Start,
H5S_GET_SELECT_ELEM_NPOINTS - Determines the num-
ber of element points in the current dataspace selection. Count [, BLOCK=vector] [, /RESET] [, STRIDE=vector]
Result = H5S_GET_SELECT_ELEM_NPOINTS
(Dataspace_id)

IDL Quick Reference


152 Scientific Data Formats

H5S_SELECT_NONE - Resets the dataspace selection region to H5T_ENUM_VALUES_TO_NAMES - Converts values to the
include no elements. corresponding names of an enumeration datatype.
H5S_SELECT_NONE, Dataspace_id Result =
H5T_ENUM_VALUES_TO_NAMES(Datatype_id,
H5S_SELECT_VALID - Verifies that the selection is within the
extent of a dataspace. Values)
Result = H5S_SELECT_VALID(Dataspace_id) H5T_EQUAL - Determines whether two datatype identifiers refer to
the same datatype.
H5S_SET_EXTENT_NONE - Removes the extent of a dataspace
and sets the type to H5S_NO_CLASS. As such the dataspace can- Result = H5T_EQUAL(Datatype_id1, Datatype_id2 )
not be resized or used in the creation of datasets or attributes.
H5T_GET_ARRAY_DIMS - Returns the dimension sizes for an
H5S_SET_EXTENT_NONE, Dataspace_id array datatype object.
H5S_SET_EXTENT_SIMPLE - Sets or resets the extent of a Result = H5T_GET_ARRAY_DIMS(Datatype_id
dataspace. [, PERMUTATIONS=variable] )
H5S_SET_EXTENT_SIMPLE, Dataspace_id,
H5T_GET_ARRAY_NDIMS - Determines the number of dimen-
Dimensions [,MAX_DIMENSIONS=vector] sions (or rank) of an array datatype object.
H5T_ARRAY_CREATE - Creates and array datatype object. Result = H5T_GET_ARRAY_NDIMS(Datatype_id)
Result = H5T_ARRAY_CREATE(Datatype_id, H5T_GET_CLASS - Returns the datatype’s class.
Dimensions) Result = H5T_GET_CLASS(Datatype_id)
H5T_CLOSE - Releases the specified datatype’s identifier and H5T_GET_CSET - Returns the character set type of a string
releases resources used by it. datatype.
H5T_CLOSE, Datatype_id Result = H5T_GET_CSET(Datatype_id)
H5T_COMMIT - Commits a transient datatype to a file, creating a new H5T_GET_EBIAS - Returns the exponent bias of a floating-point
named datatype. type.
H5T_COMMIT, Loc_id, Name, Datatype_id Result = H5T_GET_EBIAS(Datatype_id)
H5T_COMMITTED - Determines whether a datatype is a named H5T_GET_FIELDS - Retrieves information about the positions and
datatype or a transient type. sizes of bit fields within a floating-point datatype.
Result = H5T_COMMITTED(Datatype_id) Result = H5T_GET_FIELDS(Datatype_id)
H5T_COMPOUND_CREATE - Creates a compound datatype H5T_GET_INPAD - Returns the padding method for unused internal
object. bits within a floating-point datatype.
Result = H5T_COMPOUND_CREATE(Datatype_id, Result = H5T_GET_INPAD(Datatype_id)
Name)
H5T_GET_MEMBER_CLASS - Returns the datatype class of a
H5T_COPY - Copies an existing datatype. compound datatype member.
Result = H5T_COPY(Datatype_id) Result = H5T_GET_MEMBER_CLASS(Datatype_id,
H5T_ENUM_CREATE - Creates an enumeration datatype object. Member)
Result = H5T_ENUM_CREATE() H5T_GET_MEMBER_INDEX - Retrieves the index of a specified
member of a compound or enumeration datatype.
H5T_ENUM_GET_DATA - Retrieves the name/value pairs from an Result = H5T_GET_MEMBER_INDEX(Datatype_id,
enumeration datatype object.
Field_name)
Result = H5T_ENUM_GET_DATA(Datatype_id)
H5T_GET_MEMBER_NAME - Returns the datatype name of a
H5T_ENUM_INSERT - Inserts a new member into an existing enu- compound datatype member.
meration datatype.
Result = H5T_GET_MEMBER_NAME(Datatype_id,
H5T_ENUM_INSERT, Datatype_id, Name, Value
Member)
H5T_ENUM_NAMEOF - Retrieves the name of a member of an
enumeration datatype corresponding to the specified value. H5T_GET_MEMBER_OFFSET - Returns the byte offset of a
field within a compound datatype.
Result = H5T_ENUM_NAMEOF(Datatype_id, Value)
Result = H5T_GET_MEMBER_OFFSET(Datatype_id,
H5T_ENUM_SET_DATA - Sets all the name/value pairs on an enu- Member)
meration datatype object.
H5T_ENUM_SET_DATA, Datatype_id, Data, Values H5T_GET_MEMBER_TYPE - Returns the datatype identifier for a
specified member within a compound datatype.
H5T_ENUM_VALUEOF - Retrieves the value of a member of an Result = H5T_GET_MEMBER_TYPE(Datatype_id,
enumeration datatype corresponding to the specified name.
Member)
Result = H5T_ENUM_VALUEOF(Datatype_id, Name)

IDL Quick Reference


153

H5T_GET_MEMBER_VALUE - Retrieves the value of an enu- H5T_OPEN - Opens a named datatype.


meration datatype member. Result = H5T_OPEN(Loc_id, Name)
Result = H5T_GET_MEMBER_VALUE(Datatype_id,
Member) H5T_REFERENCE_CREATE - Creates a reference datatype
object.
H5T_GET_NMEMBERS - Returns the number of fields in a com- Result = H5T_REFERENCE_CREATE([/REGION])
pound datatype.
Result = H5T_GET_NMEMBERS(Datatype_id) H5T_SET_TAG - Sets a tag string on an opaque data type.
H5T_SET_TAG(Datatype_id, Tag)
H5T_GET_NORM - Returns the mantissa normalization of a float-
ing-point datatype. H5T_STR_TO_VLEN - Converts an IDL string array to an
Result = H5T_GET_NORM(Datatype_id) IDL_H5_VLEN array of strings.
Result = H5T_STR_TO_VLEN(Array [, /NO_COPY])
H5T_GET_OFFSET - Returns the bit offset of the first significant
bit in an atomic datatype. H5T_VLEN_CREATE - Creates a variable length array datatype
Result = H5T_GET_OFFSET(Datatype_id) object.
Result = H5T_VLEN_CREATE(Datatype_id)
H5T_GET_ORDER - Returns the byte order of an atomic datatype.
Result = H5T_GET_ORDER(Datatype_id) H5T_VLEN_TO_STR - Converts an IDL_H5_VLEN array of
strings to an IDL string array.
H5T_GET_PAD - Returns the padding method of the least significant Result = H5T_VLEN_TO_STR(Array [, /PTR_FREE])
bit (lsb) and most significant bit (msb) of an atomic datatype.
Result = H5T_GET_PAD(Datatype_id)
NetCDF Routines
H5T_GET_PRECISION - Returns the precision in bits of an atomic
datatype.
Result = H5T_GET_PRECISION(Datatype_id) NCDF_ATTCOPY - Copies attribute from one netCDF file to
another.
H5T_GET_SIGN - Returns the sign type for an integer datatype.
Result = NCDF_ATTCOPY( Incdf [, Invar | ,
Result = H5T_GET_SIGN(Datatype_id) /IN_GLOBAL] , Name, Outcdf [, Outvar]
H5T_GET_SIZE - Returns the size of a datatype in bytes. [, /OUT_GLOBAL] )
Result = H5T_GET_SIZE(Datatype_id) NCDF_ATTDEL - Deletes an attribute from a netCDF file.
H5T_GET_STRPAD - Returns the padding method for a string NCDF_ATTDEL, Cdfid [, Varid | , /GLOBAL] , Name
datatype.
NCDF_ATTGET - Retrieves value of an attribute from a netCDF file.
Result = H5T_GET_STRPAD(Datatype_id)
NCDF_ATTGET, Cdfid [, Varid | , /GLOBAL] , Name,
H5T_GET_SUPER - Returns the base datatype from which a Value
datatype is derived.
Result = H5T_GET_SUPER(Datatype_id) NCDF_ATTINQ - Returns information about a netCDF attribute.
Result = NCDF_ATTINQ( Cdfid [, Varid | , /GLOBAL] ,
H5T_GET_TAG - Retrieves a tag string from an opaque data type.
Name )
Result = H5T_GET_TAG(Datatype_id)
NCDF_ATTNAME - Returns the name of an attribute given its ID.
H5T_IDL_CREATE - Creates a datatype object based on the IDL
type of the supplied data. Result = NCDF_ATTNAME( Cdfid [, Varid | , /GLOBAL]
Result = H5T_IDL_CREATE(Data , Attnum )
[,MEMBER_NAMES=vector] [, /OPAQUE]) NCDF_ATTPUT - Creates an attribute in a netCDF file.
H5T_IDLTYPE - Returns the IDL type code corresponding to a NCDF_ATTPUT, Cdfid [, Varid | , /GLOBAL] , Name ,
datatype. Value [, LENGTH=value] [, /BYTE | , /CHAR | ,
Result = H5T_IDLTYPE(Datatype_id /DOUBLE | , /FLOAT | , /LONG | , /SHORT]
[, ARRAY_DIMENSIONS=variable] NCDF_ATTRENAME - Renames an attribute in a netCDF file.
[, STRUCTURE=variable] )
NCDF_ATTRENAME, Cdfid [, Varid | , /GLOBAL]
H5T_INSERT - Adds a new member to the end of a compound Oldname, Newname
datatype.
H5T_INSERT, Datatype_id, Name, Field_id NCDF_CLOSE - Closes an open netCDF file.
NCDF_CLOSE, Cdfid
H5T_MEMTYPE - Returns the native memory datatype correspond-
ing to a file datatype. NCDF_CONTROL - Performs miscellaneous netCDF operations.
Result = H5T_MEMTYPE(Datatype_id) NCDF_CONTROL, Cdfid [, /ABORT] [, /ENDEF]
[, /FILL | , /NOFILL] [, /NOVERBOSE | , /VERBOSE]
[, OLDFILL=variable] [, /REDEF] [, /SYNC]

IDL Quick Reference Scientific Data Formats


154

NCDF_CREATE - Creates a new netCDF file. NCDF_VARDEF - Adds a new variable to an open netCDF file in
Result = NCDF_CREATE( Filename [, /CLOBBER | , define mode.
/NOCLOBBER] ) Result = NCDF_VARDEF(Cdfid, Name [, Dim] [, /BYTE |
, /CHAR | , /DOUBLE | , /FLOAT | , /LONG | , /SHORT])
NCDF_DIMDEF - Defines a dimension given its name and size.
Result = NCDF_DIMDEF( Cdfid, DimName, Size NCDF_VARGET - Retrieves a hyperslab of values from a netCDF
variable.
[, /UNLIMITED] )
NCDF_VARGET, Cdfid, Varid, Value [, COUNT=vector]
NCDF_DIMID - Returns the ID of a netCDF dimension, given the [, OFFSET=vector] [, STRIDE=vector]
name of the dimension.
Result = NCDF_DIMID( Cdfid, DimName ) NCDF_VARGET1 - Retrieves one element from a netCDF variable.
NCDF_VARGET1, Cdfid, Varid, Value
NCDF_DIMINQ - Retrieves the name and size of a dimension in a [, OFFSET=vector]
netCDF file, given its ID.
NCDF_DIMINQ, Cdfid, Dimid, Name, Size NCDF_VARID - Returns the ID of a netCDF variable.
Result = NCDF_VARID(Cdfid, Name)
NCDF_DIMRENAME - Renames an existing dimension in a netCDF
file that has been opened for writing. NCDF_VARINQ - Returns information about a netCDF variable,
NCDF_DIMRENAME, Cdfid, Dimid, NewName given its ID.
Result = NCDF_VARINQ(Cdfid, Varid)
NCDF_EXISTS - Returns True if the netCDF format library is sup-
ported on the current IDL platform. NCDF_VARPUT - Writes a hyperslab of values to a netCDF variable.
Result = NCDF_EXISTS( ) NCDF_VARPUT, Cdfid, Varid, Value [, COUNT=vector]
NCDF_INQUIRE - Returns information about an open netCDF file. [, OFFSET=vector] [, STRIDE=vector]
Result = NCDF_INQUIRE(Cdfid) NCDF_VARRENAME - Renames a netCDF variable.
NCDF_OPEN - Opens an existing netCDF file. NCDF_VARRENAME, Cdfid, Varid, Name
Result = NCDF_OPEN( Filename [, /NOWRITE | ,
/WRITE] )

Scientific Data Formats IDL Quick Reference

You might also like