Isis 3 Programmer Reference
|
CameraPointInfo provides quick access to the majority of information avaliable from a camera on a point. More...
#include <CameraPointInfo.h>
Public Member Functions | |
CameraPointInfo () | |
Constructor, initializes CubeManager and other variables for use. More... | |
virtual | ~CameraPointInfo () |
Destructor, deletes CubeManager object used. More... | |
void | SetCube (const QString &cubeFileName) |
SetCube opens the given cube in a CubeManager. More... | |
void | SetCSVOutput (bool csvOutput) |
Set the output format (true is CSV, false is PVL) More... | |
PvlGroup * | SetImage (const double sample, const double line, const bool outside=false, const bool error=false) |
SetImage sets a sample, line image coordinate in the camera so data can be accessed. More... | |
PvlGroup * | SetCenter (const bool outside=false, const bool error=false) |
SetCenter sets the image coordinates to the center of the image. More... | |
PvlGroup * | SetSample (const double sample, const bool outside=false, const bool error=false) |
SetSample sets the image coordinates to the center line and the given sample. More... | |
PvlGroup * | SetLine (const double line, const bool outside=false, const bool error=false) |
SetLine sets the image coordinates to the center sample and the given line. More... | |
PvlGroup * | SetGround (const double latitude, const double longitude, const bool outside=false, const bool error=false) |
SetGround sets a latitude, longitude grrund coordinate in the camera so data can be accessed. More... | |
Protected Member Functions | |
Camera * | camera () |
Retrieves a pointer to the camera. More... | |
Cube * | cube () |
Retrieves a pointer to the current cube. More... | |
Private Member Functions | |
bool | CheckCube () |
CheckCube checks that a cube has been set before the data for a point is accessed. More... | |
virtual PvlGroup * | GetPointInfo (bool passed, bool outside, bool errors) |
GetPointInfo builds the PvlGroup containing all the important information derived from the Camera. More... | |
Private Attributes | |
CubeManager * | m_usedCubes |
The cubeManager used to open the current cube. More... | |
Cube * | m_currentCube |
The cube to extract camera information from. More... | |
Camera * | m_camera |
The camera to extract point information from. More... | |
bool | m_csvOutput |
Boolean to keep track of output format (CSV or PVL) More... | |
CameraPointInfo provides quick access to the majority of information avaliable from a camera on a point.
CameraPointInfo provides the functionality which was a part of campt in class form. This functionality is access to the majoirty of information avaliable on any given point on an image. The main difference is the use of a CubeManager within CameraPointInfo for effeciency when working with control nets and the opening of cubes several times.
Definition at line 77 of file CameraPointInfo.h.
Isis::CameraPointInfo::CameraPointInfo | ( | ) |
Constructor, initializes CubeManager and other variables for use.
Definition at line 36 of file CameraPointInfo.cpp.
|
virtual |
Destructor, deletes CubeManager object used.
Definition at line 60 of file CameraPointInfo.cpp.
|
protected |
Retrieves a pointer to the camera.
Definition at line 626 of file CameraPointInfo.cpp.
|
private |
CheckCube checks that a cube has been set before the data for a point is accessed.
Definition at line 204 of file CameraPointInfo.cpp.
References Isis::IException::Programmer.
|
protected |
Retrieves a pointer to the current cube.
Definition at line 636 of file CameraPointInfo.cpp.
|
privatevirtual |
GetPointInfo builds the PvlGroup containing all the important information derived from the Camera.
passed | Indicates whether the call to SetImage() was successful. |
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 227 of file CameraPointInfo.cpp.
References Isis::PvlKeyword::addComment(), Isis::PvlContainer::addKeyword(), Isis::PvlKeyword::addValue(), Isis::PvlContainer::findKeyword(), Isis::IsValidPixel(), Isis::PvlContainer::keywords(), Isis::PixelToString(), Isis::Brick::SetBasePosition(), Isis::PvlKeyword::setValue(), Isis::TProjection::To180Domain(), Isis::TProjection::ToPlanetographic(), Isis::TProjection::ToPositiveWest(), Isis::toString(), and Isis::IException::Unknown.
PvlGroup * Isis::CameraPointInfo::SetCenter | ( | const bool | allowOutside = false , |
const bool | allowErrors = false |
||
) |
SetCenter sets the image coordinates to the center of the image.
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 115 of file CameraPointInfo.cpp.
void Isis::CameraPointInfo::SetCSVOutput | ( | bool | csvOutput | ) |
Set the output format (true is CSV, false is PVL)
csvOutput | The new value to set csvOutput |
Definition at line 50 of file CameraPointInfo.cpp.
void Isis::CameraPointInfo::SetCube | ( | const QString & | cubeFileName | ) |
SetCube opens the given cube in a CubeManager.
The CubeManager is for effeciency when working with control nets where cubes are accesed multiple times.
cubeFileName | A cube file name. |
Definition at line 75 of file CameraPointInfo.cpp.
PvlGroup * Isis::CameraPointInfo::SetGround | ( | const double | latitude, |
const double | longitude, | ||
const bool | allowOutside = false , |
||
const bool | allowErrors = false |
||
) |
SetGround sets a latitude, longitude grrund coordinate in the camera so data can be accessed.
latitude | A latitude coordinate in or almost in the cube |
longitude | A longitude coordinate in or almost in the cube |
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 187 of file CameraPointInfo.cpp.
PvlGroup * Isis::CameraPointInfo::SetImage | ( | const double | sample, |
const double | line, | ||
const bool | allowOutside = false , |
||
const bool | allowErrors = false |
||
) |
SetImage sets a sample, line image coordinate in the camera so data can be accessed.
sample | A sample coordinate in or almost in the cube. |
line | A line coordinate in or almost in the cube. |
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 94 of file CameraPointInfo.cpp.
PvlGroup * Isis::CameraPointInfo::SetLine | ( | const double | line, |
const bool | allowOutside = false , |
||
const bool | allowErrors = false |
||
) |
SetLine sets the image coordinates to the center sample and the given line.
line | A line coordinate in or almost in the cube. |
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 162 of file CameraPointInfo.cpp.
PvlGroup * Isis::CameraPointInfo::SetSample | ( | const double | sample, |
const bool | allowOutside = false , |
||
const bool | allowErrors = false |
||
) |
SetSample sets the image coordinates to the center line and the given sample.
sample | A sample coordinate in or almost in the cube. |
allowOutside | Indicates whether to allow extrapolation. |
allowErrors | Indicates whether to allow the program to throw an error if a problem occurs. |
Definition at line 138 of file CameraPointInfo.cpp.
|
private |
The camera to extract point information from.
Definition at line 104 of file CameraPointInfo.h.
|
private |
Boolean to keep track of output format (CSV or PVL)
Definition at line 105 of file CameraPointInfo.h.
|
private |
The cube to extract camera information from.
Definition at line 103 of file CameraPointInfo.h.
|
private |
The cubeManager used to open the current cube.
Definition at line 102 of file CameraPointInfo.h.