  | 
  
    Isis Developer Reference
    
   | 
 
 
 
 
Go to the documentation of this file.    1 #ifndef ProjectionFactory_h 
    2 #define ProjectionFactory_h 
   16   class RingPlaneProjection;
 
   84                                              bool sizeMatch = 
true); 
 
   86                                                    int &samples, 
int &lines,
 
   89                                              int &samples, 
int &lines,
 
   92                                                    int &samples, 
int &lines,
 
  106       static Plugin m_projPlugin;
 
  124       PFPixelMapper(
double pixelResolution, 
double upperLeftX, 
double upperLeftY) {
 
  125         p_pixelResolution = pixelResolution;
 
  126         p_upperLeftX = upperLeftX;
 
  127         p_upperLeftY = upperLeftY;
 
  136       double WorldX(
const double projX)
 const {
 
  137         return (projX - p_upperLeftX) / p_pixelResolution + 0.5;
 
  146       double WorldY(
const double projY)
 const {
 
  147         return (p_upperLeftY - projY) / p_pixelResolution + 0.5;
 
  157         return (sample - 0.5) * p_pixelResolution + p_upperLeftX;
 
  167         return p_upperLeftY - (line - 0.5) * p_pixelResolution;
 
  172         return p_pixelResolution;
 
  176       double p_pixelResolution;
 
 
 
virtual void SetBand(const int band)
Virtual method that sets the band number.
Definition: Camera.cpp:2680
 
virtual bool SetGround(const double ringRadius, const double ringLongitude)
This method is used to set the ring radius/longitude (assumed to be of the correct LatitudeType,...
Definition: RingPlaneProjection.cpp:456
 
double Resolution() const
Returns the pixel resolution.
Definition: ProjectionFactory.h:171
 
double LocalRadius(double lat) const
This method returns the local radius in meters at the specified latitude position.
Definition: TProjection.cpp:326
 
static Isis::Projection * RingsCreate(Isis::Pvl &label, bool allowDefaults=false)
This method returns a pointer to a RingPlaneProjection object.
Definition: ProjectionFactory.cpp:119
 
PvlGroupIterator findGroup(const QString &name, PvlGroupIterator beg, PvlGroupIterator end)
Find a group with the specified name, within these indexes.
Definition: PvlObject.h:129
 
const double PI
The mathematical constant PI.
Definition: Constants.h:40
 
A single keyword-value pair.
Definition: PvlKeyword.h:82
 
double ProjectionX(const double sample) const
Returns the x projection of the given sample.
Definition: ProjectionFactory.h:156
 
void SetUpperLeftCorner(const Displacement &x, const Displacement &y)
This method searches for extreme (min/max/discontinuity) coordinate values along the constBorder line...
Definition: Projection.cpp:1373
 
virtual bool SetImage(const double sample, const double line)
Sets the sample/line values of the image to get the lat/lon values.
Definition: Camera.cpp:154
 
void addKeyword(const PvlKeyword &keyword, const InsertMode mode=Append)
Add a keyword to the container.
Definition: PvlContainer.cpp:202
 
File name manipulation and expansion.
Definition: FileName.h:100
 
static Isis::Projection * CreateForCube(Isis::Pvl &label, int &ns, int &nl, bool sizeMatch=true)
This method creates a map projection for a cube given a label.
Definition: ProjectionFactory.cpp:188
 
virtual double Sample() const
Returns the current sample number.
Definition: Camera.cpp:2690
 
Definition: ProjectionFactory.h:115
 
bool fileExists() const
Returns true if the file exists; false otherwise.
Definition: FileName.cpp:449
 
PFPixelMapper(double pixelResolution, double upperLeftX, double upperLeftY)
Constructs a PFFixelMapper object with the given pixel resolution and location.
Definition: ProjectionFactory.h:124
 
Container for cube-like labels.
Definition: Pvl.h:119
 
virtual 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: RingPlaneProjection.cpp:656
 
static Isis::Projection * RingsCreateFromCube(Isis::Cube &cube)
This method is a helper method.
Definition: ProjectionFactory.cpp:1081
 
void SetWorldMapper(WorldMapper *mapper)
If desired the programmer can use this method to set a world mapper to be used in the SetWorld,...
Definition: Projection.cpp:474
 
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
 
void append(const IException &exceptionSource)
Appends the given exception (and its list of previous exceptions) to this exception's causational exc...
Definition: IException.cpp:409
 
virtual double TrueScaleRingRadius() const
This method returns the radius of true scale.
Definition: RingPlaneProjection.cpp:199
 
@ Traverse
Search child objects.
Definition: PvlObject.h:158
 
double WorldX(const double projX) const
Returns the world x position for the given x projection value.
Definition: ProjectionFactory.h:136
 
Displacement is a signed length, usually in meters.
Definition: Displacement.h:31
 
virtual bool SetUniversalGround(const double lat, const double lon)
This method is used to set the latitude/longitude which must be Planetocentric (latitude) and Positiv...
Definition: TProjection.cpp:839
 
bool IsGood() const
This indicates if the last invocation of SetGround, SetCoordinate, SetUniversalGround,...
Definition: Projection.cpp:374
 
QString expanded() const
Returns a QString of the full file name including the file path, excluding the attributes.
Definition: FileName.cpp:196
 
Base class for Map Projections of plane shapes.
Definition: RingPlaneProjection.h:147
 
Contains multiple PvlContainers.
Definition: PvlGroup.h:41
 
virtual double UniversalLongitude() const
Returns the positive east, 0-360 domain longitude, in degrees, at the surface intersection point in t...
Definition: Sensor.cpp:233
 
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
 
virtual 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: TProjection.cpp:993
 
Base class for Map TProjections.
Definition: TProjection.h:166
 
double WorldY(const double projY) const
Returns the world y position for the given y projection value.
Definition: ProjectionFactory.h:146
 
virtual bool SetUniversalGround(const double latitude, const double longitude)
Sets the lat/lon values to get the sample/line values.
Definition: Camera.cpp:380
 
Create a mapping between a projection and other coordinate system.
Definition: WorldMapper.h:38
 
QString fileName() const
Returns the filename used to initialise the Pvl object.
Definition: PvlContainer.h:232
 
IO Handler for Isis Cubes.
Definition: Cube.h:167
 
Isis exception class.
Definition: IException.h:91
 
static Isis::Projection * Create(Isis::Pvl &label, bool allowDefaults=false)
This method returns a pointer to a Projection object.
Definition: ProjectionFactory.cpp:51
 
bool hasObject(const QString &name) const
Returns a boolean value based on whether the object exists in the current PvlObject or not.
Definition: PvlObject.h:323
 
const double Null
Value for an Isis Null pixel.
Definition: SpecialPixel.h:95
 
double ProjectionY(const double line) const
Returns the y projection of the given line.
Definition: ProjectionFactory.h:166
 
int Bands() const
Returns the number of bands in the image.
Definition: Camera.cpp:2796
 
static Isis::Projection * CreateFromCube(Isis::Cube &cube)
This method is a helper method.
Definition: ProjectionFactory.cpp:1069
 
virtual bool IsBandIndependent()
Virtual method that checks if the band is independent.
Definition: Camera.cpp:2649
 
int Samples() const
Returns the number of samples in the image.
Definition: Camera.cpp:2776
 
static Isis::Projection * RingsCreateForCube(Isis::Pvl &label, int &samples, int &lines, bool sizeMatch)
This method creates a projection for a cube to a ring plane given a label.
Definition: ProjectionFactory.cpp:432
 
virtual double TrueScaleLatitude() const
This method returns the latitude of true scale.
Definition: TProjection.cpp:368
 
Namespace for the standard library.
 
@ Replace
Definition: PvlContainer.h:95
 
Pvl * label() const
Returns a pointer to the IsisLabel object associated with the cube.
Definition: Cube.cpp:1701
 
double meters() const
Get the distance in meters.
Definition: Distance.cpp:85
 
int Lines() const
Returns the number of lines in the image.
Definition: Camera.cpp:2786
 
virtual double Line() const
Returns the current line number.
Definition: Camera.cpp:2710
 
double YCoord() const
This returns the projection Y provided SetGround, SetCoordinate, SetUniversalGround,...
Definition: Projection.cpp:400
 
Base class for Map Projections.
Definition: Projection.h:155
 
Initialize a map projection.
Definition: ProjectionFactory.h:75
 
double XCoord() const
This returns the projection X provided SetGround, SetCoordinate, SetUniversalGround,...
Definition: Projection.cpp:387
 
virtual bool HasGroundRange() const
This indicates if the longitude direction type is positive west (as opposed to postive east).
Definition: Projection.cpp:349
 
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
 
Distance LocalRadius() const
Returns the local radius at the intersection point.
Definition: Sensor.cpp:267
 
virtual double UniversalLatitude() const
Returns the planetocentric latitude, in degrees, at the surface intersection point in the body fixed ...
Definition: Sensor.cpp:210
 
Loads plugins from a shared library.
Definition: Plugin.h:55