|
Isis 3 Programmer Reference
|
1 #ifndef ProjectionFactory_h
2 #define ProjectionFactory_h
10 #include "WorldMapper.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;
double Resolution() const
Returns the pixel resolution.
static Isis::Projection * RingsCreate(Isis::Pvl &label, bool allowDefaults=false)
This method returns a pointer to a RingPlaneProjection object.
double ProjectionX(const double sample) const
Returns the x projection of the given sample.
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.
PFPixelMapper(double pixelResolution, double upperLeftX, double upperLeftY)
Constructs a PFFixelMapper object with the given pixel resolution and location.
Container for cube-like labels.
static Isis::Projection * RingsCreateFromCube(Isis::Cube &cube)
This method is a helper method.
double WorldX(const double projX) const
Returns the world x position for the given x projection value.
~ProjectionFactory()
Destroys the ProjectionFactory object.
double WorldY(const double projY) const
Returns the world y position for the given y projection value.
Create a mapping between a projection and other coordinate system.
IO Handler for Isis Cubes.
static Isis::Projection * Create(Isis::Pvl &label, bool allowDefaults=false)
This method returns a pointer to a Projection object.
double ProjectionY(const double line) const
Returns the y projection of the given line.
static Isis::Projection * CreateFromCube(Isis::Cube &cube)
This method is a helper method.
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.
ProjectionFactory()
Constructor (Its private, so you cannot use it.) Use the Create method instead.
Base class for Map Projections.
Initialize a map projection.
This is free and unencumbered software released into the public domain.
Loads plugins from a shared library.