Constant System Variables

The following system variables contain predefined constants or values for use by IDL routines. System variables can be used just like other variables. For example, the command:

PRINT, ACOS(A) * !RADEG 

converts a result expressed in radians to one expressed in degrees.

!DPI

A read-only variable containing the double-precision value of pi (π).

!DTOR

A read-only variable containing the floating-point value used to convert degrees to radians (π/180 @  0.01745).

!MAP

A variable containing the information needed to effect coordinate conversions between points of latitude and longitude and map coordinates. The values in this structure are established by the MAP_SET procedure; the user should not change them directly.

The !MAP structure contains the following fields:

A

A double-precision floating point integer specifying the equatorial radius or semimajor axis in meters. (The default is 6370997 m.)

COSO

A double-precision floating point integer specifying the cosine of the center latitude in degrees.

COSR

A double-precision floating point integer specifying the cosine of the rotation angle.

E2

A double-precision floating point integer specifying the eccentricity squared of the ellipsoid.

FILL_METHOD

A long-integer variable that indicates the fill order. True (1) fills counterclockwise, False (0) fills starting with the closest polygons.

LL_BOX

A four-element, double-precision floating point array that specifies the map range in degrees (latmin, lonmin, latmax, lonmax).

P

A 16-element, double-precision floating point array indicating additional projection parameters.

P0LAT

A double-precision floating point integer specifying the center latitude in degrees.

P0LON

A double-precision floating point integer specifying the center longitude in degrees.

PIPELINE

A four by four, double-precision floating point array specifying the graphics clipping and splitting pipeline.

POLE

A seven-element, double-precision floating point array that indicates Pole location parameters. Longitude and latitude are given in radians, sine and cosine of polar latitude, and X,Y,Z coordinates.

PROJECTION

A long-integer variable indicating the projection number (for GCTP only).

ROTATION

A double-precision floating point integer specifying the rotation angle in degrees, clockwise of pole.

SEGMENT_LENGTH

A double-precision floating point integer specifying the maximum segment length.

SIMPLE

A long-integer variable indicating the projection number. For IDL projections, True (1) indicates the projection is centered on the Equator or no rotation. For GCTP, this number is the GCTP projection number.

SINO

A double-precision floating point integer specifying the sine of the center latitude.

SINR

A double-precision floating point integer specifying the sine of the rotation angle.

U0

A double-precision floating point integer specifying the center longitude in radians.

UP_FLAGS

A double-precision floating point integer that sets the user projection flags (currently unused).

UP_NAME

A string that specifies the projection name (used only for GCTP).

UV

A two-element, double-precision floating point array specifying the U,V coordinates of the last point.

UV_BOX

A four-element, double-precision floating point array that contains the map range in meters (xmin, ymin, xmax, ymax).

V0

A double-precision floating point integer specifying the center latitude in radians.

!PI

A read-only variable containing the single-precision value of pi (π).

!RADEG

A read-only variable containing the floating-point value used to convert radians to degrees (180/π @ 57.2958).

!VALUES

A read-only variable containing the IEEE single- and double-precision floating-point values Infinity and NaN (Not A Number). !VALUES is a structure variable with the following fields:

** Structure !VALUES, 4 tags, length=24: 
   F_INFINITY      FLOAT          Infinity 
   F_NAN           FLOAT               NaN 
   D_INFINITY      DOUBLE         Infinity 
   D_NAN           DOUBLE              NaN 

where the meaning of the fields as follows:

F_INFINITY

The single-precision floating point value Infinity.

F_NAN

The single-precision floating point value NaN (Not a Number).

D_INFINITY

The double-precision floating point value Infinity.

D_NAN

The double-precision floating point value NaN (Not a Number).

For more information on these special floating-point values, see Special Floating-Point Values (Application Programming).