Isis Developer Reference
RingCylindrical.h
Go to the documentation of this file.
1 #ifndef RingCylindrical_h
2 #define RingCylindrical_h
3 
8 /* SPDX-License-Identifier: CC0-1.0 */
9 #include "RingPlaneProjection.h"
10 
11 namespace Isis {
12  class Pvl;
13  class PvlGroup;
36  // or Rectilinear projection?? scale azimuth with 1/(2*pi) * radius maybe
38  public:
39  RingCylindrical(Pvl &label, bool allowDefaults = false);
41  bool operator==(const Projection &proj);
42 
43  QString Name() const;
44  QString Version() const;
46  double TrueScaleRingRadius() const;
47 
48  double CenterRingLongitude() const;
49  double CenterRingRadius() const;
50 
51  bool SetGround(const double ringRadius, const double ringLongitude);
52  bool SetCoordinate(const double x, const double y);
53  bool XYRange(double &minX, double &maxX, double &minY, double &maxY);
54 
55  PvlGroup Mapping();
58 
59  protected:
60 
61  private:
62  double m_centerRingLongitude;
64  double m_centerRingRadius;
65  };
66 };
67 
68 #endif
Isis::RingCylindrical::TrueScaleRingRadius
double TrueScaleRingRadius() const
Returns the center radius, in meters.
Definition: RingCylindrical.cpp:148
Isis::RingCylindrical::Name
QString Name() const
Returns the name of the map projection, "RingCylindrical".
Definition: RingCylindrical.cpp:106
Isis::PvlObject::findGroup
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
Definition: PvlObject.h:129
Isis::IException::Io
@ Io
A type of error that occurred when performing an actual I/O operation.
Definition: IException.h:155
Isis::RingPlaneProjection::m_maximumRingLongitude
double m_maximumRingLongitude
Contains the maximum longitude for the entire ground range.
Definition: RingPlaneProjection.h:290
Isis::PvlKeyword
A single keyword-value pair.
Definition: PvlKeyword.h:82
Isis::RingPlaneProjection::Mapping
virtual PvlGroup Mapping()
This method is used to find the XY range for oblique aspect projections (non-polar projections) by "w...
Definition: RingPlaneProjection.cpp:1253
SpecialPixel.h
Isis::RingCylindrical::XYRange
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...
Definition: RingCylindrical.cpp:355
Isis::DEG2RAD
const double DEG2RAD
Multiplier for converting from degrees to radians.
Definition: Constants.h:43
Isis::Projection::PixelResolution
double PixelResolution() const
Returns the pixel resolution value from the PVL mapping group in meters/pixel.
Definition: Projection.cpp:840
PvlGroup.h
Isis::Projection::m_minimumY
double m_minimumY
See minimumX description.
Definition: Projection.h:327
Isis::Projection::GetX
double GetX() const
Calculates the unrotated form of current x value.
Definition: Projection.cpp:818
RingCylindrical.h
Isis::PvlContainer::hasKeyword
bool hasKeyword(const QString &name) const
Check to see if a keyword exists.
Definition: PvlContainer.cpp:159
Isis::Pvl
Container for cube-like labels.
Definition: Pvl.h:119
Isis::Projection::SetXY
void SetXY(double x, double y)
This protected method is a helper for derived classes.
Definition: Projection.cpp:804
Isis::RingPlaneProjection::m_maximumRingRadius
double m_maximumRingRadius
Contains the maximum ring radius for the entire ground range.
Definition: RingPlaneProjection.h:284
Isis::toString
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
Isis::RingCylindrical::SetGround
bool SetGround(const double ringRadius, const double ringLongitude)
This method is used to set the radius/longitude (assumed to be of the correct RingLongitudeDirection,...
Definition: RingCylindrical.cpp:188
Isis::RingPlaneProjection::m_ringRadius
double m_ringRadius
This contain a ring radius value in m.
Definition: RingPlaneProjection.h:261
Isis::Projection::m_mappingGrp
PvlGroup m_mappingGrp
Mapping group that created this projection.
Definition: Projection.h:329
Isis::Projection::GetY
double GetY() const
Calculates the unrotated form of the current y value.
Definition: Projection.cpp:829
Isis::RingPlaneProjection::XYRangeCheck
void XYRangeCheck(const double ringRadius, const double ringLongitude)
This convience function is established to assist in the development of the XYRange virtual method.
Definition: RingPlaneProjection.cpp:709
Isis::RingCylindrical::CenterRingRadius
double CenterRingRadius() const
Returns the center radius, in meters.
Definition: RingCylindrical.cpp:170
Isis::RingCylindrical::operator==
bool operator==(const Projection &proj)
Compares two Projection objects to see if they are equal.
Definition: RingCylindrical.cpp:91
Isis::RingCylindrical::Version
QString Version() const
Returns the version of the map projection.
Definition: RingCylindrical.cpp:115
Isis::PvlObject::Traverse
@ Traverse
Search child objects.
Definition: PvlObject.h:158
Isis::RingCylindrical::SetCoordinate
bool SetCoordinate(const double x, const double y)
This method is used to set the projection x/y.
Definition: RingCylindrical.cpp:239
Isis::RingPlaneProjection
Base class for Map Projections of plane shapes.
Definition: RingPlaneProjection.h:147
Isis::Projection::m_minimumX
double m_minimumX
The data elements m_minimumX, m_minimumY, m_maximumX, and m_maximumY are convience data elements when...
Definition: Projection.h:317
Isis::PvlGroup
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
Isis::RingCylindrical::~RingCylindrical
~RingCylindrical()
Destroys the RingCylindrical object.
Definition: RingCylindrical.cpp:80
Pvl.h
_FILEINFO_
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
Isis::Projection::m_good
bool m_good
Indicates if the contents of m_x, m_y, m_latitude, and m_longitude are valid.
Definition: Projection.h:300
Isis::RingCylindrical
Ring Cylindrical Map Projection.
Definition: RingCylindrical.h:37
Isis::RingPlaneProjection::MappingRingRadii
virtual PvlGroup MappingRingRadii()
This function returns the ring radius keywords that this projection uses.
Definition: RingPlaneProjection.cpp:1296
Isis::RingPlaneProjection::m_ringLongitude
double m_ringLongitude
This contain a ring longitude value.
Definition: RingPlaneProjection.h:263
Isis::RingPlaneProjection::m_ringLongitudeDirection
RingLongitudeDirection m_ringLongitudeDirection
An enumerated type indicating the LongitudeDirection read from the labels.
Definition: RingPlaneProjection.h:267
Isis::IException
Isis exception class.
Definition: IException.h:91
RingCylindricalPlugin
Isis::Projection * RingCylindricalPlugin(Isis::Pvl &lab, bool allowDefaults)
This is the function that is called in order to instantiate a RingCylindrical object.
Definition: RingCylindrical.cpp:417
Isis::RingCylindrical::RingCylindrical
RingCylindrical(Pvl &label, bool allowDefaults=false)
Constructs a RingCylindrical object.
Definition: RingCylindrical.cpp:39
Isis::RingCylindrical::MappingRingRadii
PvlGroup MappingRingRadii()
This function returns the radii keywords that this projection uses.
Definition: RingCylindrical.cpp:292
Isis::Projection::SetComputedXY
void SetComputedXY(double x, double y)
This protected method is a helper for derived classes.
Definition: Projection.cpp:780
IException.h
std
Namespace for the standard library.
RingPlaneProjection.h
Isis::RingCylindrical::MappingRingLongitudes
PvlGroup MappingRingLongitudes()
This function returns the longitude keywords that this projection uses.
Definition: RingCylindrical.cpp:308
PvlKeyword.h
Isis::RingPlaneProjection::m_minimumRingRadius
double m_minimumRingRadius
Contains the minimum ring radius for the entire ground range.
Definition: RingPlaneProjection.h:281
Isis::RingPlaneProjection::MappingRingLongitudes
virtual PvlGroup MappingRingLongitudes()
This function returns the ring longitude keywords that this projection uses.
Definition: RingPlaneProjection.cpp:1313
Isis::RingPlaneProjection::Clockwise
@ Clockwise
Ring longitude values increase in the clockwise direction.
Definition: RingPlaneProjection.h:178
Constants.h
Isis::Projection::m_maximumY
double m_maximumY
See minimumX description.
Definition: Projection.h:328
Isis::RingCylindrical::Mapping
PvlGroup Mapping()
This function returns the keywords that this projection uses.
Definition: RingCylindrical.cpp:274
Isis::RingPlaneProjection::m_minimumRingLongitude
double m_minimumRingLongitude
Contains the minimum longitude for the entire ground range.
Definition: RingPlaneProjection.h:287
Isis::Projection
Base class for Map Projections.
Definition: Projection.h:155
Isis::Projection::m_maximumX
double m_maximumX
See minimumX description.
Definition: Projection.h:326
Isis::RAD2DEG
const double RAD2DEG
Multiplier for converting from radians to degrees.
Definition: Constants.h:44
Isis::Projection::HasGroundRange
virtual bool HasGroundRange() const
This indicates if the longitude direction type is positive west (as opposed to postive east).
Definition: Projection.cpp:349
Isis::RingCylindrical::CenterRingLongitude
double CenterRingLongitude() const
Returns the center longitude, in degrees.
Definition: RingCylindrical.cpp:158
Isis::RingCylindrical::IsEquatorialCylindrical
bool IsEquatorialCylindrical()
This method returns true if the projection is equatorial cylindrical.
Definition: RingCylindrical.cpp:130
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16