Isis 3 Developer Reference
|
This class is used to rewrite the "alpha" keywords out of the AlphaCube group or Instrument group. More...
#include <AlphaCube.h>
Public Member Functions | |
AlphaCube (Cube &cube) | |
Constructs an AlphaCube object using a PVL object. More... | |
AlphaCube (int alphaSamples, int alphaLines, int betaSamples, int betaLines) | |
Constructs an AlphaCube object given alphaSamples, alphaLines, betaSamples and betaLines. More... | |
AlphaCube (int alphaSamples, int alphaLines, int betaSamples, int betaLines, double alphaSs, double alphaSl, double alphaEs, double alphaEl) | |
Constructs an AlphaCube object with a basic mapping from corner-to-corner, beta 0.5,0.5 maps to alpha 0.5,0.5 and beta ns+0.5,nl+0.5 maps to alpha ns+0.5, nl+0.5. More... | |
~AlphaCube () | |
Destroys the AlphaCube object. More... | |
int | AlphaLines () const |
Returns the number of lines in the alpha cube. More... | |
int | AlphaSamples () const |
Returns the number of samples in the alpha cube. More... | |
int | BetaLines () const |
Returns the number of lines in the beta cube. More... | |
int | BetaSamples () const |
Returns the number of samples in the beta cube. More... | |
double | AlphaLine (double betaLine) |
Returns an alpha line given a beta line. More... | |
double | AlphaSample (double betaSample) |
Returns an alpha sample given a beta sample. More... | |
double | BetaLine (double alphaLine) |
Returns a beta line given an alpha line. More... | |
double | BetaSample (double alphaSample) |
Returns a beta sample given an alpha sample. More... | |
void | UpdateGroup (Cube &cube) |
Writes or update the Alpha keywords (AlphaLines, AlphaSamples, AlphaStartingSamples, etc) in the proper group in a PVL object. More... | |
void | Rehash (AlphaCube &alphaCube) |
Merges two AlphaCube objects. More... | |
This class is used to rewrite the "alpha" keywords out of the AlphaCube group or Instrument group.
This class allows programmers to map cube pixel positions back to the first cube they came from.This is critical for camera models or radiometric models in order to map input cube pixels to camera detector position. The alpha keywords are automatically generated in programs like crop, pad, reduce, and enlarge.
Isis::AlphaCube::AlphaCube | ( | Cube & | cube | ) |
Constructs an AlphaCube object using a PVL object.
cube | The cube to write to |
References Isis::PvlObject::findGroup(), Isis::PvlObject::findObject(), Isis::PvlObject::hasGroup(), Isis::Cube::label(), Isis::Cube::lineCount(), and Isis::Cube::sampleCount().
Isis::AlphaCube::AlphaCube | ( | int | alphaSamples, |
int | alphaLines, | ||
int | betaSamples, | ||
int | betaLines | ||
) |
Constructs an AlphaCube object given alphaSamples, alphaLines, betaSamples and betaLines.
alphaSamples | Number of alpha samples in the cube |
alphaLines | Number of alpha lines in the cube |
betaSamples | Number of beta samples in the cube |
betaLines | Number of beta lines in the cube |
Isis::AlphaCube::AlphaCube | ( | int | alphaSamples, |
int | alphaLines, | ||
int | betaSamples, | ||
int | betaLines, | ||
double | alphaSs, | ||
double | alphaSl, | ||
double | alphaEs, | ||
double | alphaEl | ||
) |
Constructs an AlphaCube object with a basic mapping from corner-to-corner, beta 0.5,0.5 maps to alpha 0.5,0.5 and beta ns+0.5,nl+0.5 maps to alpha ns+0.5, nl+0.5.
alphaSamples | Number of alpha samples in the cube |
alphaLines | Number of alpha lines in the cube |
betaSamples | Number of beta samples in the cube |
betaLines | Number of beta lines in the cube |
alphaSs | Starting alpha sample |
alphaSl | Starting alpha line |
alphaEs | Ending alpha sample |
alphaEl | Ending alpha line |
|
inline |
Destroys the AlphaCube object.
|
inline |
Returns an alpha line given a beta line.
betaLine | The beta line |
Referenced by Rehash(), and Isis::Camera::SetImage().
|
inline |
Returns the number of lines in the alpha cube.
Referenced by Isis::Camera::ParentLines().
|
inline |
Returns an alpha sample given a beta sample.
betaSample | The beta sample |
Referenced by Rehash(), and Isis::Camera::SetImage().
|
inline |
Returns the number of samples in the alpha cube.
Referenced by Isis::Camera::ParentSamples().
|
inline |
Returns a beta line given an alpha line.
alphaLine | The alpha line |
Referenced by Isis::Camera::SetRightAscensionDeclination().
|
inline |
Returns the number of lines in the beta cube.
Referenced by Isis::Camera::CacheSize(), Isis::Camera::LoadCache(), Rehash(), and Isis::Camera::StartEndEphemerisTimes().
|
inline |
Returns a beta sample given an alpha sample.
alphaSample | The alpha sample |
Referenced by Isis::Camera::SetRightAscensionDeclination().
|
inline |
Returns the number of samples in the beta cube.
Referenced by Isis::Camera::LoadCache(), Rehash(), and Isis::Camera::StartEndEphemerisTimes().
void Isis::AlphaCube::Rehash | ( | AlphaCube & | add | ) |
Merges two AlphaCube objects.
This facilities combinations of programs crop-enlarge, crop-crop, reduce-pad, etc.
add | The AlphaCube object to be merged. |
References AlphaLine(), AlphaSample(), BetaLines(), and BetaSamples().
Referenced by UpdateGroup().
void Isis::AlphaCube::UpdateGroup | ( | Isis::Cube & | cube | ) |
Writes or update the Alpha keywords (AlphaLines, AlphaSamples, AlphaStartingSamples, etc) in the proper group in a PVL object.
It chooses first to write and AlphaGroup if the Mapping group exists. If not then is will write the keywords in the Instrument group if it exists. Otherwise it will write to the AlphaCube group.
&cube | The cube to write to. |
References Isis::PvlObject::addGroup(), Isis::PvlObject::findGroup(), Isis::PvlObject::findObject(), Isis::PvlObject::hasGroup(), Isis::Cube::label(), Rehash(), and Isis::toString().
Referenced by Isis::SubArea::UpdateLabel().