MAP_PROJ_INIT
Syntax | Return Value | Arguments | Keywords | Projection Keywords | Example | Version History | See Also
The MAP_PROJ_INIT function initializes a mapping projection (establishes the coordinate conversion mechanism for mapping points on a globe's surface to points on a plane), using either IDL's own map projections or map projections from the U.S. Geological Survey's General Cartographic Transformation Package (GCTP). GCTP version 2.0 is included with IDL.
Note
The !MAP system variable is unaffected by MAP_PROJ_INIT. To use the map projection returned by MAP_PROJ_INIT for direct or object graphics, use the MAP_PROJ_FORWARD and MAP_PROJ_INVERSE functions to convert longitude/latitude values into Cartesian (x, y) coordinates before visualization.
This routine is written in the IDL language. Its source code can be found in map_proj_init.pro in the lib subdirectory of the IDL distribution.
Syntax
Result = MAP_PROJ_INIT( Projection [, ELLIPSOID=value] [, /GCTP] [, LIMIT=vector] [, /RADIANS] [, /RELAXED] )
Keywords—Projection Parameters: [, CENTER_AZIMUTH=value] [, CENTER_LATITUDE=value] [, CENTER_LONGITUDE=value] [, FALSE_EASTING=value] [, FALSE_NORTHING=value] [, HEIGHT=value] [, HOM_AZIM_LONGITUDE=value] [, HOM_AZIM_ANGLE=value] [, HOM_LATITUDE1=value] [, HOM_LATITUDE2=value] [, HOM_LONGITUDE1=value] [, HOM_LONGITUDE2=value] [, IS_ZONES=value] [, IS_JUSTIFY=value] [, MERCATOR_SCALE=value] [, OEA_ANGLE=value] [, OEA_SHAPEM=value] [, OEA_SHAPEN=value] [, ROTATION=value] [, SEMIMAJOR_AXIS=value] [, SEMIMINOR_AXIS=value] [, SOM_INCLINATION=value] [, SOM_LONGITUDE=value] [, SOM_PERIOD=value] [, SOM_RATIO=value] [, SOM_FLAG=value] [, SOM_LANDSAT_NUMBER=value] [, SOM_LANDSAT_PATH=value] [, SPHERE_RADIUS=value] [, STANDARD_PARALLEL=value] [, STANDARD_PAR1=value] [, STANDARD_PAR2=value] [, SAT_TILT=value] [, TRUE_SCALE_LATITUDE=value] [, ZONE=value]
Return Value
The result is a !MAP structure containing the map parameters, which can be used as input to the map transformation functions MAP_PROJ_FORWARD and MAP_PROJ_INVERSE.
Arguments
Projection
Set this argument to either a projection index or a scalar string containing the name of the map projection, as described in following tables:
The following are GCTP projections:
Keywords
Note
The following keywords apply to all projections.
ELLIPSOID
Set this keyword to either an integer code or a scalar string containing the ellipsoid name. The default value depends upon the projection selected, but is either the Clarke 1866 ellipsoid (spheroid 0), or a sphere of radius 6370.997 km (spheroid 19).
The following spheroids are available for use with the ELLIPSOID keyword:
Note
For many projections, you can specify your own ellipsoid by using either the SEMIMAJOR_AXIS and SEMIMINOR_AXIS or the SPHERE_RADIUS keywords.
GCTP
Set this keyword to indicate that the GCTP library should be used for the projection. By default, MAP_PROJ_INIT uses the IDL projection library. This keyword is ignored if the projection exists only in one system (GCTP or IDL), or if the Projection argument is specified as an index.
LIMIT
Set this keyword to a four-element vector of the form
that specifies the boundaries of the region to be mapped. (Lonmin, Latmin) and (Lonmax, Latmax) are the longitudes and latitudes of two points diagonal from each other on the region's boundary.
Note
If the longitude range in LIMIT is less than or equal to 180 degrees, map clipping is performed in lat/lon coordinates before the transform. If the longitude range is greater than 180 degrees, map clipping is done in Cartesian coordinates after the transform. For non-cylindrical projections, clipping after the transformation to Cartesian coordinates means that some lat/lon points that fall outside the bounds specified by LIMIT may not be clipped. This occurs when the transformed lat/lon points fall inside the cartesian clipping rectangle.
RADIANS
Set this keyword to indicate that all parameters that represent angles are specified in radians rather than degrees.
RELAXED
If this keyword is set, any projection parameters which do not apply to the specified projection will be quietly ignored. By default, MAP_PROJ_INIT will issue errors for parameters that do not apply to the specified projection.
Projection Keywords
The following keywords apply only to some projections. Consult the list under Projection to determine which keywords apply to the projection you have selected.
Note
Unless the RADIANS keyword is set, all angles are measured in degrees, specified as a floating-point value.
CENTER_AZIMUTH
Set this keyword to the angle of the central azimuth, in degrees east of North. The default is 0 degrees. The pole is placed at an azimuth of CENTRAL_AZIMUTH degrees counterclockwise of North, as specified by the ROTATION keyword.
CENTER_LATITUDE
Set this keyword to the latitude of the point on the earth's surface to be mapped to the center of the projection plane. Latitude is measured in degrees North of the equator and must be in the range: -90 to +90. The default value is zero.
Note
For the Hotine Oblique Mercator projection, the center latitude should not be set to 0, +90, or -90
CENTER_LONGITUDE
Set this keyword to the longitude of the point on the earth's surface to be mapped to the center of the map projection. Longitude is measured in degrees east of the Greenwich meridian and must be in the range: -360 to +360. The default value is zero.
FALSE_EASTING
Set this keyword to the false easting value (in meters) to be added to each x coordinate for the forward transform, or subtracted from each x coordinate for the inverse transform.
FALSE_NORTHING
Set this keyword to the false northing value (in meters) to be added to each y coordinate for the forward transform, or subtracted from each y coordinate for the inverse transform.
HEIGHT
Set this keyword to the height (in meters) above the earth's surface for satellite projections.
HOM_AZIM_LONGITUDE
Set this keyword to the longitude in degrees of the central meridian point where the azimuth occurs.
HOM_AZIM_ANGLE
Set this keyword to the azimuth angle, measured in degrees, east of a north-south line that intersects the center line. The center line is defined as the great circle path along which the Mercator cylinder touches the sphere.
HOM_LATITUDE1
Set this keyword to the latitude in degrees of the first point on the center line. The center line is defined as the great circle path along which the Mercator cylinder touches the sphere.
Note
HOM_LATITUDE1 cannot be equal to HOM_LATITUDE2.
HOM_LATITUDE2
Set this keyword to the latitude in degrees of the second point on the center line. The center line is defined as the great circle path along which the Mercator cylinder touches the sphere.
Note
HOM_LATITUDE1 cannot be equal to HOM_LATITUDE2.
HOM_LONGITUDE1
Set this keyword to the longitude in degrees of the first point on the center line. The center line is defined as the great circle path along which the Mercator cylinder touches the sphere.
HOM_LONGITUDE2
Set this keyword to the longitude in degrees of the second point on the center line. The center line is defined as the great circle path along which the Mercator cylinder touches the sphere.
IS_ZONES
Set this keyword to the number of longitudinal zones to include in the projection.
IS_JUSTIFY
Set this keyword to a flag indicating what to do with rows with an odd number of columns. The possible values are:
|
|
Indicates the extra column is on the right of the projection Y axis |
|
|
Indicates the extra column is on the left of the projection Y axis |
|
|
Calculate an even number of columns |
MERCATOR_SCALE
Set this keyword to the scale factor at the central meridian (Transverse Mercator projection) or the center of the projection (Hotine Oblique Mercator projection). For the Transverse Mercator projection, the default scale is 0.9996.
OEA_ANGLE
Set this keyword to the Oblated Equal Area oval rotation angle in degrees.
OEA_SHAPEM
Set this keyword to the Oblated Equal Area shape parameter m. The value of OEA_SHAPEM determines the horizontal flatness of the oblong region, and is usually set to a value between one and three.
OEA_SHAPEN
Set this keyword to the Oblated Equal Area oval shape parameter n. The value of OEA_SHAPEN determines the vertical flatness of the oblong region, and is usually set to a value between one and three.
Note
Setting both OEA_SHAPEM and OEA_SHAPEN equal to two is equivalent to using the Lambert Azimuthal projection.
ROTATION
Set this keyword to the angle through which the North direction should be rotated around the line between the earth's center and the point (CENTER_LONGITUDE, CENTER_LATITUDE). ROTATION is measured in degrees with the positive direction being clockwise rotation around the line. Values should be in the range -180 to +180. The default value is zero.
Note
If the center of the map is at the North pole, North is in the direction CENTER_LONGITUDE + 180. If the origin is at the South pole, North is in the direction CENTER_LONGITUDE.
SEMIMAJOR_AXIS
Set this keyword to the length (in meters) of the semimajor axis of the reference ellipsoid. The default is either the Clarke 1866 ellipsoid (6378206.4 m) or the Sphere radius (6370997 m), depending upon the projection.
SEMIMINOR_AXIS
Set this keyword to the length (in meters) of the semiminor axis of the reference ellipsoid. The default is either the Clarke 1866 ellipsoid (6356583.8 m) or the Sphere radius (6370997 m), depending upon the projection.
SOM_INCLINATION
Set this keyword to the orbit inclination angle in degrees of the ascending node, counter-clockwise from equator.
SOM_LONGITUDE
Set this keyword to the longitude in degrees of the ascending orbit at the equator.
SOM_PERIOD
Set this keyword to the period in minutes of the satellite revolution.
SOM_RATIO
Set this keyword to the Landsat ratio to compensate for confusion at the northern end of orbit. A typical value is 0.5201613.
SOM_FLAG
Set this keyword to the end of path flag for Landsat, where 0 is the start and 1 is the end.
SOM_LANDSAT_NUMBER
Set this keyword to the Landsat satellite number.
SOM_LANDSAT_PATH
Set this keyword to the Landsat path number (use 1 for Landsat 1, 2 and 3; use 2 for Landsat 4 and 5).
SPHERE_RADIUS
Set this keyword to the radius (in meters) of the reference sphere. The default is 6370997 m.
STANDARD_PARALLEL
Set this keyword to the latitude in degrees of the standard parallel along which the scale is true.
STANDARD_PAR1
Set this keyword to the latitude in degrees of the first standard parallel along which the scale is true.
Note
For Albers Equal Area and Lambert Conformal Conic projections, STANDARD_PAR1 and STANDARD_PAR2 should not be set to values that are equal and opposite.
STANDARD_PAR2
Set this keyword to the latitude in degrees of the second standard parallel along which the scale is true.
Note
For Albers Equal Area and Lambert Conformal Conic projections, STANDARD_PAR1 and STANDARD_PAR2 should not be set to values that are equal and opposite.
SAT_TILT
Set this keyword to the downward tilt in degrees of the camera, in degrees from the projection horizontal.
TRUE_SCALE_LATITUDE
Set this keyword to the latitude in degrees of true scale.
ZONE
Set this keyword to an integer giving the zone for the GCTP UTM projection or GCTP State Plane projection.
Note
For the UTM projection, you may also use the CENTER_LONGITUDE and CENTER_LATITUDE keywords to set the zone. Internally, the ZONE value will be computed from the longitude and latitude.
Note
For UTM, the range is -60 to -1 and 1 to 60, where negative numbers indicate the southern hemisphere.
Note
For UTM, the zone number should be in the range -60 to -1 (Southern Hemisphere) or 1 to 60 (Northern Hemisphere).
The following table lists the allowed zones for the State Plane projection:
Example
See MAP_PROJ_FORWARD for an example of using this function.
Version History
For information on obsolete keywords, see IDL API History.
See Also
MAP_PROJ_FORWARD, MAP_PROJ_INVERSE, MAP_SET