PDS_VERSION_ID = PDS3 LABEL_REVISION_NOTE = "2005-05-10, Bryan Stiles, Version 1.2, 2007-11-09, Adapted for Mini-RF, M. Reid, V 1.3, 2010-02-18, Added Equirectangular and Polar Stereographic, R. Kirk. V 1.4 2013-09-16, Corrected x,y <--> lat,lon equations for equirectangular and polar stereographic projections, R. Kirk, V 1.6." RECORD_TYPE = STREAM INSTRUMENT_HOST_ID = LRO INSTRUMENT_ID = MRFLRO TARGET_NAME = MOON OBJECT = DATA_SET_MAP_PROJECTION DATA_SET_ID = "LRO-L-MRFLRO-5-CDR-MAP-V1.0" OBJECT = DATA_SET_MAP_PROJECTION_INFO MAP_PROJECTION_TYPE = "OBLIQUE CYLINDRICAL" MAP_PROJECTION_DESC = " All Mini-RF Level 2 SAR image data products are produced in an Oblique Cylindrical map projection. This type of projection is a Cartesian plot of the angular (longitude and latitude) coordinates of features, not with respect to the standard coordinate axes of the body, but with respect to a rotated set of axes. A separate oblique coordinate system is established for each Lunar orbit, placing the equator of the rotated coordinates along the ground track of the spacecraft and the rotated prime meridian through the point of closest approach. The Oblique Cylindrical projection is characterized by the 3x3 rotation matrix between the standard and oblique coordinate systems or the equivalent set of angles, which are interpretable as the (north) pole latitude, pole longitude, and pole rotation. Projection Definition --------------------- The following PDS keywords define an instance of an oblique cylindrical projection with respect to the standard IAU/IAG positive west longitude planetographic latitude coordinate system. The projection is defined both by a rotation matrix and the equivalent set of angles. OBLIQUE_PROJ_POLE_LATITUDE = fff.ffffff One of the three angles defining the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection. This is the ordinary latitude of the pole (Z axis) of the oblique system. OBLIQUE_PROJ_POLE_LONGITUDE = fff.ffffff One of the three angles defining the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection. This is the ordinary longitude of the pole (Z axis) of the oblique system. NOTE that the value given is positive-west, whereas the equivalent positive-east value is used in the equations that define the OBLIQUE_PROJ_POLE_ROTATION and the rotation matrix entries below. OBLIQUE_PROJ_POLE_ROTATION = fff.ffffff One of the three angles defining the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection. This is a rotation around the polar (Z) axis of the oblique system that completes the transformation from standard to oblique coordinates. The value is positive east (obeys right hand rule) and goes from -180 to 180. OBLIQUE_PROJ_X_AXIS_VECTOR = {ff.ffffffff, ff.ffffffff, ff.fffffffff} Unit vector in the direction of the X axis of the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS make up the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 - OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. OBLIQUE_PROJ_Y_AXIS_VECTOR = {ff.ffffffff, ff.ffffffff, ff.fffffffff} Unit vector in the direction of the Y axis of the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS make up the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 - OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. OBLIQUE_PROJ_Z_AXIS_VECTOR = {ff.ffffffff, ff.ffffffff, ff.fffffffff} Unit vector in the direction of the Z axis of the oblique coordinate system used in the OBLIQUE CYLINDRICAL projection, in terms of the X, Y, and Z axes of the standard body-fixed coordinate system. In each system, the X axis points from the body center toward longitude and latitude (0,0) in that system, the Z axis to (0,90), and the Y-axis completes a right-handed set. The OBLIQUE_PROJ_X/Y/Z_AXIS_VECTORS make up the rows of a rotation matrix that when multiplied on the left of a vector referenced to the standard coordinate system converts it into its equivalent in the oblique coordinate system. This rotation matrix is the product of successively applied rotations by OBLIQUE_PROJ_POLE_LONGITUDE around the Z axis, 90 - OBLIQUE_PROJ_POLE_LATITUDE around the once-rotated Y axis, and OBLIQUE_PROJ_POLE_ROTATION around the twice-rotated Z axis. Lat/Lon to Line/Sample Transformations ------------------------------------ The transformations between the oblique latitude and longitude and the line and sample coordinates of the data products are line = INT( LINE_PROJECTION_OFFSET + lon_a*MAP_RESOLUTION + 1) sample = INT(SAMPLE_PROJECTION_OFFSET + lat_a*MAP_RESOLUTION + 1) where lon_a and lat_a are the oblique cylindrical pole longitude and pole latitude measured in degrees, and lon_a is in positive-east coordinates. Integral values of line and sample correspond to the center of a pixel. LINE_PROJECTION_OFFSET, SAMPLE_PROJECTION_OFFSET, and MAP_RESOLUTION are defined below. LINE_PROJECTION_OFFSET is the line offset value of the map projection origin position from the line and sample (1,1), i.e., the upper left corner of the array. The value is positive when the origin is below the upper left pixel. (The map projection origin is the intersection of the equator and the projection center longitude; this location is stored as the values of the CENTER_LATITUDE and CENTER_LONGITUDE keywords. Both keywords are nominally zero valued.) SAMPLE_PROJECTION_OFFSET is the sample offset value of the map projection origin position from the line and sample (1,1), i.e., the upper left corner of the array. The value is positive when the origin is to the right of the upper left pixel. MAP_RESOLUTION identifies the digital scale of the map-projected image in units of pixels per degree. Definitions of other mapping parameters can be found in the Planetary Science Data Dictionary and the Cassini Radar Basic Image Data Records Software Interface Specification. " ROTATIONAL_ELEMENT_DESC = "See SEIDELMANNETAL2002" OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SEIDELMANNETAL2002" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SNYDER1987" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "BUGAYEVSKIY&SNYD1995" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "YANGETAL2000" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "GREELEY&BATSON1990" END_OBJECT = DS_MAP_PROJECTION_REF_INFO END_OBJECT = DATA_SET_MAP_PROJECTION_INFO OBJECT = DATA_SET_MAP_PROJECTION_INFO MAP_PROJECTION_TYPE = "EQUIRECTANGULAR" MAP_PROJECTION_DESC = " The EQUIRECTANGULAR projection, used for Mini-RF Level 2 and 3 products whose center latitude of observation is in the range -65 to 65 degrees latitude, is based on the equations for a sphere, because a spherical reference surface (A_AXIS_RADIUS, B_AXIS_RADIUS, and C_AXIS_RADIUS numerically equal) is used for the Moon. For convenience this constant radius is referred to in the equations below as R. Equirectangular is a simple projection providing a linear relationship between the geographic coordinates of latitude and longitude and the Cartesian space of the map. In continuous form, the equations relating map coordinates (x, y) to geographic coordinates (Lat, Lon) are: x = R * (Lon - LonP) * COS(LatP) y = R * Lat where LonP is the center longitude of the map projection, LatP is the center latitude of the projection at which scale is given. The inverse formulas for Lat and Lon from x and y position in the projection are: Lat = y / R Lon = LonP + x / (R * COS(LatP)) The Conversion from (x, y) map coordinates to image array coordinates (sample, line) is standard for all map projections and is: x = (Sample - S0) * Scale y = (L0 - Line) * Scale where Scale is the map resolution in km/pixel (located at the center latitude of the projection). Line and Sample are the coordinates of the image array, and line (L0) and sample offsets (S0) are the respective image coordinate displacements from pixel (1,1) to the origin of the projection(x,y) = (0,0). Please note, pixel (1,1) is spatially located in the upper-left corner of the image array and the displacements are taken as positive to the right and down. The equations from (x, y) to (Sample, Line) are: Sample = x / Scale + S0 Line = -y / Scale + L0 The equation from (Sample, Line) to (Lat, Lon) is: Lat = y / R y = (L0 - Line) * Scale Lat = (L0 - Line) * Scale / R Lon = LonP + x / (R * COS(LatP)) x = (Sample - S0) * Scale Lon = LonP + (Sample - S0) * Scale/ (R * COS(LatP)) The keywords corresponding to the Equirectangular projection parameters are located in the IMAGE_MAP_PROJECTION object found in the PDS labels. The keywords for each equation parameter are shown below: LonP | CENTER_LONGITUDE LatP | CENTER_LATITUDE L0 | LINE_PROJECTION_OFFSET S0 | SAMPLE_PROJECTION_OFFSET Scale | MAP_SCALE R | A_AXIS_RADIUS (also B_AXIS_RADIUS, C_AXIS_RADIUS) " ROTATIONAL_ELEMENT_DESC = "See SEIDELMANNETAL2002" OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SEIDELMANNETAL2002" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SNYDER1987" END_OBJECT = DS_MAP_PROJECTION_REF_INFO END_OBJECT = DATA_SET_MAP_PROJECTION_INFO OBJECT = DATA_SET_MAP_PROJECTION_INFO MAP_PROJECTION_TYPE = "POLAR STEREOGRAPHIC" MAP_PROJECTION_DESC = " The POLAR_STEREOGRAPHIC projection, used for Mini-RF Level 2 and 3 products whose center latitude of observation is greater than 65 or less than -65 degrees latitude, is based on the equations for a sphere, because a spherical reference surface (A_AXIS_RADIUS, B_AXIS_RADIUS, and C_AXIS_RADIUS numerically equal) is used for the Moon. For convenience this constant radius is referred to in the equations below as R. Polar Stereographic projection is ideally suited for observations near the poles as shapes are undistorted and scale variations are minimized. In continuous form, the spherical equations relating map coordinates (x, y) to coordinates (Lat, Lon) are: North Polar Stereographic x = 2 * R * TAN(Pi / 4 - Lat / 2) * SIN(Lon - LonP) y = -2 * R * TAN(Pi / 4 - Lat / 2) * COS(Lon - LonP) South Polar Stereographic x = 2 * R * TAN(Pi / 4 + Lat / 2) * SIN(Lon - LonP) y = 2 * R * TAN(Pi / 4 + Lat / 2) * COS(Lon - LonP) Where LonP is the central longitude, LatP is the latitude of true scale and is always 90 or -90, and R is the radius of the Moon or 1737.4 km. The spherical inverse formulas for Lat and Lon from X and Y position in the image array are: Lat = ARCSIN[COS(C) * SIN(LatP) + y * SIN(C) * COS(LatP) / P] North Polar Stereographic Lon = LonP + ARCTAN[x / (-y)] South Polar Stereographic Lon = LonP + ARCTAN[x / y] where: P = SQRT(x^2 + y^2) C = 2 * ARCTAN(P / 2 * R) recall: x = (Sample - S0) * Scale y = (L0 - Line) * Scale The keywords corresponding to the equation parameters for the Polar Stereographic projection are located in the IMAGE_MAP_PROJECTION object found in the PDS labels. The keywords for each equation parameter are shown below. LonP | CENTER_LONGITUDE LatP | CENTER_LATITUDE L0 | LINE_PROJECTION_OFFSET S0 | SAMPLE_PROJECTION_OFFSET Scale | MAP_SCALE R | A_AXIS_RADIUS (also B_AXIS_RADIUS, C_AXIS_RADIUS) " ROTATIONAL_ELEMENT_DESC = "See SEIDELMANNETAL2002" OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SEIDELMANNETAL2002" END_OBJECT = DS_MAP_PROJECTION_REF_INFO OBJECT = DS_MAP_PROJECTION_REF_INFO REFERENCE_KEY_ID = "SNYDER1987" END_OBJECT = DS_MAP_PROJECTION_REF_INFO END_OBJECT = DATA_SET_MAP_PROJECTION_INFO END_OBJECT = DATA_SET_MAP_PROJECTION END