|
IDL Reference Guide: Procedures and Functions |
|
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.
Result = MAP_PROJ_INIT( Projection [, DATUM=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]
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.
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:
| Note The following keywords apply to all projections. |
Set this keyword to either an integer code or a scalar string containing the name of the datum to use for the ellipsoid. The default value depends upon the projection selected, but is either the Clarke 1866 ellipsoid (datum 0), or a sphere of radius 6370.997 km (datum 19).
The following datums (or spheroids) are available for use with the DATUM keyword:
| Note For many projections, you can specify your own datum by using either the SEMIMAJOR_AXIS and SEMIMINOR_AXIS or the SPHERE_RADIUS keywords. |
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.
Set this keyword to a four-element vector of the form
[Latmin, Lonmin, Latmax, Lonmax]
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. |
Set this keyword to indicate that all parameters that represent angles are specified in radians rather than degrees.
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.
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. |
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.
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 |
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.
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.
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.
Set this keyword to the height (in meters) above the earth's surface for satellite projections.
Set this keyword to the longitude in degrees of the central meridian point where the azimuth occurs.
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.
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. |
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. |
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.
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.
Set this keyword to the number of longitudinal zones to include in the projection.
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
|
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.
Set this keyword to the Oblated Equal Area oval rotation angle in degrees.
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.
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. |
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. |
Set this keyword to the length (in meters) of the semimajor axis of the reference ellipsoid. The default is either the Clarke 1866 datum (6378206.4 m) or the Sphere radius (6370997 m), depending upon the projection.
Set this keyword to the length (in meters) of the semiminor axis of the reference ellipsoid. The default is either the Clarke 1866 datum (6356583.8 m) or the Sphere radius (6370997 m), depending upon the projection.
Set this keyword to the orbit inclination angle in degrees of the ascending node, counter-clockwise from equator.
Set this keyword to the longitude in degrees of the ascending orbit at the equator.
Set this keyword to the period in minutes of the satellite revolution.
Set this keyword to the Landsat ratio to compensate for confusion at the northern end of orbit. A typical value is 0.5201613.
Set this keyword to the end of path flag for Landsat, where 0 is the start and 1 is the end.
Set this keyword to the Landsat satellite number.
Set this keyword to the Landsat path number (use 1 for Landsat 1, 2 and 3; use 2 for Landsat 4, 5 and 6).
Set this keyword to the radius (in meters) of the reference sphere. The default is 6370997 m.
Set this keyword to the latitude in degrees of the standard parallel along which the scale is true.
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. |
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. |
Set this keyword to the downward tilt in degrees of the camera, in degrees from the projection horizontal.
Set this keyword to the latitude in degrees of true scale.
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:
See MAP_PROJ_FORWARD for an example of using this function.
MAP_PROJ_FORWARD, MAP_PROJ_INVERSE, MAP_SET
IDL Online Help (March 06, 2007)