54 Sinusoidal::Sinusoidal(
Pvl &label,
bool allowDefaults) :
62 if ((allowDefaults) && (!mapGroup.
hasKeyword(
"CenterLongitude"))) {
75 QString message =
"Invalid label group [Mapping]";
93 if (!TProjection::operator==(proj))
return false;
136 double latRadians = lat *
PI / 180.0;
137 double lonRadians = lon *
PI / 180.0;
183 if (coslat <= DBL_EPSILON) {
231 double &minY,
double &maxY) {
309 bool allowDefaults) {
bool SetGround(const double lat, const double lon)
This method is used to set the latitude/longitude (assumed to be of the correct LatitudeType, LongitudeDirection, and LongitudeDomain.
double GetX() const
Calculates the unrotated form of current x value.
PvlGroup Mapping()
This function returns the keywords that this projection uses.
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
Longitude values increase in the westerly direction.
Sinusoidal Map Projection.
Base class for Map TProjections.
double m_centerLongitude
The center longitude for the map projection.
QString Name() const
Returns the name of the map projection, "Sinusoidal".
const double PI(3.14159265358979323846)
The mathematical constant PI.
double m_minimumX
The data elements m_minimumX, m_minimumY, m_maximumX, and m_maximumY are convience data elements when...
const double HALFPI(1.57079632679489661923)
The mathematical constant PI/2.
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
A type of error that occurred when performing an actual I/O operation.
void SetComputedXY(double x, double y)
This protected method is a helper for derived classes.
double m_latitude
This contains the currently set latitude value.
virtual PvlGroup MappingLatitudes()
This function returns the latitude keywords that this projection uses.
double m_maximumY
See minimumX description.
double m_longitude
This contains the currently set longitude value.
bool XYRange(double &minX, double &maxX, double &minY, double &maxY)
This method is used to determine the x/y range which completely covers the area of interest specified...
double m_maximumLongitude
Contains the maximum longitude for the entire ground range.
double m_minimumLatitude
Contains the minimum latitude for the entire ground range.
double m_maximumLatitude
Contains the maximum latitude for the entire ground range.
Base class for Map Projections.
double m_minimumY
See minimumX description.
QString Version() const
Returns the version of the map projection.
double m_equatorialRadius
Polar radius of the target.
Contains multiple PvlContainers.
~Sinusoidal()
Destroys the Sinusoidal object.
#define _FILEINFO_
Macro for the filename and line number.
A single keyword-value pair.
Isis::TProjection * SinusoidalPlugin(Isis::Pvl &lab, bool allowDefaults)
This is the function that is called in order to instantiate a Sinusoidal object.
PvlGroup MappingLongitudes()
This function returns the longitude keywords that this projection uses.
Container for cube-like labels.
bool SetCoordinate(const double x, const double y)
This method is used to set the projection x/y.
bool operator==(const Projection &proj)
Compares two Projection objects to see if they are equal.
virtual PvlGroup Mapping()
This function returns the keywords that this projection uses.
bool m_good
Indicates if the contents of m_x, m_y, m_latitude, and m_longitude are valid.
LongitudeDirection m_longitudeDirection
An enumerated type indicating the LongitudeDirection read from the labels.
double GetY() const
Calculates the unrotated form of the current y value.
virtual PvlGroup MappingLongitudes()
This function returns the longitude keywords that this projection uses.
void SetXY(double x, double y)
This protected method is a helper for derived classes.
void XYRangeCheck(const double latitude, const double longitude)
This convience function is established to assist in the development of the XYRange virtual method...
double m_minimumLongitude
Contains the minimum longitude for the entire ground range.
double m_maximumX
See minimumX description.
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
PvlGroup MappingLatitudes()
This function returns the latitude keywords that this projection uses.
PvlGroup m_mappingGrp
Mapping group that created this projection.