|
Isis 3.0 Object Programmers' Reference |
Home |
Universal Ground Map. More...
#include <UniversalGroundMap.h>

Public Types | |
| enum | CameraPriority { CameraFirst, ProjectionFirst } |
This enum is used to define whether to use a camera or projection primarily, and which to fall back on. More... | |
Public Member Functions | |
| UniversalGroundMap (Pvl &pvl, CameraPriority priority=CameraFirst) | |
| Constructs a UniversalGroundMap object from a pvl. | |
| UniversalGroundMap (Cube &cube, CameraPriority priority=CameraFirst) | |
| Constructs a UniversalGroundMap object from a cube. | |
| ~UniversalGroundMap () | |
| Destroys the UniversalGroundMap object. | |
| void | SetBand (const int band) |
| Set the image band number. | |
| bool | SetUniversalGround (double lat, double lon) |
| Returns whether the lat/lon position was set successfully in the camera model or projection. | |
| bool | SetGround (Latitude lat, Longitude lon) |
| Returns whether the lat/lon position was set successfully in the camera model or projection. | |
| bool | SetGround (const SurfacePoint &) |
| Returns whether the SurfacePoint was set successfully in the camera model or projection. | |
| double | Sample () const |
| Returns the current line value of the camera model or projection. | |
| double | Line () const |
| Returns the current line value of the camera model or projection. | |
| bool | SetImage (double sample, double line) |
| Returns whether the sample/line postion was set successfully in the camera model or projection. | |
| double | UniversalLatitude () const |
| Returns the universal latitude of the camera model or projection. | |
| double | UniversalLongitude () const |
| Returns the universal longitude of the camera model or projection. | |
| double | Resolution () const |
| Returns the resolution of the camera model or projection. | |
| bool | GroundRange (Cube *cube, Latitude &minLat, Latitude &maxLat, Longitude &minLon, Longitude &maxLon, bool allowEstimation=true) |
| Find the lat/lon range of the image. | |
| bool | HasProjection () |
| Returns whether the ground map has a projection or not. | |
| bool | HasCamera () |
| Returns whether the ground map has a camera or not. | |
| Isis::Projection * | Projection () const |
| Return the projection associated with the ground map (NULL implies none). | |
| Isis::Camera * | Camera () const |
| Return the camera associated with the ground map (NULL implies none). | |
Private Member Functions | |
| void | Init (Pvl &pvl, CameraPriority priority) |
| Creates the UniversalGroundMap. | |
Private Attributes | |
| Isis::Camera * | p_camera |
| The camera (if the image has a camera). | |
| Isis::Projection * | p_projection |
| The projection (if the image is projected). | |
Universal Ground Map.
???
For internal use only.
Definition at line 77 of file UniversalGroundMap.h.
This enum is used to define whether to use a camera or projection primarily, and which to fall back on.
Definition at line 83 of file UniversalGroundMap.h.
| Isis::UniversalGroundMap::UniversalGroundMap | ( | Pvl & | pvl, | |
| CameraPriority | priority = CameraFirst | |||
| ) |
Constructs a UniversalGroundMap object from a pvl.
| pvl | The Pvl file to create the UniversalGroundMap from | |
| priority | Try to make a camera or projection first |
Definition at line 24 of file UniversalGroundMap.cpp.
References Init().
| Isis::UniversalGroundMap::UniversalGroundMap | ( | Cube & | cube, | |
| CameraPriority | priority = CameraFirst | |||
| ) |
Constructs a UniversalGroundMap object from a cube.
| cube | The Cube to create the UniversalGroundMap from | |
| priority | Try to make a camera or projection first |
Definition at line 34 of file UniversalGroundMap.cpp.
References Init(), and Isis::Cube::label().
| Isis::UniversalGroundMap::~UniversalGroundMap | ( | ) |
Destroys the UniversalGroundMap object.
Definition at line 92 of file UniversalGroundMap.cpp.
References p_camera, and p_projection.
| Isis::Camera* Isis::UniversalGroundMap::Camera | ( | ) | const [inline] |
Return the camera associated with the ground map (NULL implies none).
Definition at line 144 of file UniversalGroundMap.h.
References p_camera.
Referenced by Isis::ImagePolygon::Create(), Isis::CubeViewport::CubeViewport(), Isis::FindTool::distancePerPixel(), Isis::MosaicSceneItem::drawImage(), Isis::ImagePolygon::FixPolePoly(), Isis::GroundGrid::GroundGrid(), Isis::ImagePolygon::initCube(), and Isis::ImagePolygon::SetImage().
| bool Isis::UniversalGroundMap::GroundRange | ( | Cube * | cube, | |
| Latitude & | minLat, | |||
| Latitude & | maxLat, | |||
| Longitude & | minLon, | |||
| Longitude & | maxLon, | |||
| bool | allowEstimation = true | |||
| ) |
Find the lat/lon range of the image.
This will use the image footprint, camera, or projection in order to find a good result.
| Cube* | This is required for estimation. You can pass in NULL (it will disable estimation). | |
| minLat | This is an output: minimum latitude | |
| maxLat | This is an output: maximum latitude | |
| minLon | This is an output: minimum longitude | |
| maxLon | This is an output: maximum longitude | |
| allowEstimation | If this is true then extra efforts will be made to guess the ground range of the input. This can still fail. |
Definition at line 281 of file UniversalGroundMap.cpp.
References Isis::Angle::Degrees, Isis::Camera::GroundRange(), HasCamera(), Isis::PvlContainer::HasKeyword(), HasProjection(), Isis::Angle::isValid(), Isis::Cube::lineCount(), Isis::PolygonTools::MakeMultiPolygon(), Isis::Projection::Mapping(), p_camera, p_projection, poly(), Isis::ImagePolygon::Polys(), Isis::Cube::read(), Isis::Cube::sampleCount(), Isis::Projection::SetWorld(), Isis::Projection::UniversalLatitude(), and Isis::Projection::UniversalLongitude().
Referenced by Isis::FeatureNomenclatureTool::findMissingNomenclature().
| bool Isis::UniversalGroundMap::HasCamera | ( | ) | [inline] |
Returns whether the ground map has a camera or not.
Definition at line 134 of file UniversalGroundMap.h.
References p_camera.
Referenced by Isis::GroundGrid::GroundGrid(), GroundRange(), and Isis::InterestOperator::Operate().
| bool Isis::UniversalGroundMap::HasProjection | ( | ) | [inline] |
Returns whether the ground map has a projection or not.
Definition at line 123 of file UniversalGroundMap.h.
References p_projection.
Referenced by Isis::FindTool::distancePerPixel(), and GroundRange().
| void Isis::UniversalGroundMap::Init | ( | Pvl & | pvl, | |
| CameraPriority | priority | |||
| ) | [private] |
Creates the UniversalGroundMap.
| pvl | The Pvl file to create the UniversalGroundMap from | |
| priority | Try to make a camera or projection first |
| Isis::iException::Camera | - Could not create camera or projection |
Definition at line 46 of file UniversalGroundMap.cpp.
References _FILEINFO_, Isis::IException::append(), CameraFirst, Isis::CameraFactory::Create(), Isis::ProjectionFactory::CreateFromCube(), Isis::PvlContainer::FileName(), p_camera, p_projection, and Isis::IException::Unknown.
Referenced by UniversalGroundMap().
| double Isis::UniversalGroundMap::Line | ( | ) | const |
Returns the current line value of the camera model or projection.
Definition at line 194 of file UniversalGroundMap.cpp.
References Isis::Camera::Line(), p_camera, p_projection, and Isis::Projection::WorldY().
Referenced by Isis::FeatureNomenclatureTool::FeaturePosition::applyExtentType(), Isis::FindTool::centerLinkedViewports(), Isis::ProcessGroundPolygons::Convert(), Isis::StereoTool::createPoint(), Isis::FindTool::distancePerPixel(), Isis::FeatureNomenclatureTool::FeaturePosition::FeaturePosition(), Isis::ControlPointEdit::findPoint(), Isis::GroundGrid::GetXY(), Isis::FindTool::handleRecordClicked(), Isis::PolygonTools::LatLonToSampleLine(), Isis::FindTool::paintViewport(), and Isis::FindTool::updateTool().
| Isis::Projection* Isis::UniversalGroundMap::Projection | ( | ) | const [inline] |
Return the projection associated with the ground map (NULL implies none).
Definition at line 139 of file UniversalGroundMap.h.
References p_projection.
Referenced by Isis::CubeViewport::CubeViewport(), Isis::FindTool::distancePerPixel(), Isis::MosaicSceneItem::drawImage(), Isis::ImagePolygon::FixPolePoly(), and Isis::GroundGrid::GroundGrid().
| double Isis::UniversalGroundMap::Resolution | ( | ) | const |
Returns the resolution of the camera model or projection.
Definition at line 255 of file UniversalGroundMap.cpp.
References p_camera, p_projection, Isis::Camera::PixelResolution(), and Isis::Projection::Resolution().
Referenced by Isis::FindTool::distancePerPixel(), and Isis::GroundGrid::GroundGrid().
| double Isis::UniversalGroundMap::Sample | ( | ) | const |
Returns the current line value of the camera model or projection.
Definition at line 180 of file UniversalGroundMap.cpp.
References p_camera, p_projection, Isis::Camera::Sample(), and Isis::Projection::WorldX().
Referenced by Isis::FeatureNomenclatureTool::FeaturePosition::applyExtentType(), Isis::FindTool::centerLinkedViewports(), Isis::ProcessGroundPolygons::Convert(), Isis::StereoTool::createPoint(), Isis::FindTool::distancePerPixel(), Isis::FeatureNomenclatureTool::FeaturePosition::FeaturePosition(), Isis::ControlPointEdit::findPoint(), Isis::GroundGrid::GetXY(), Isis::FindTool::handleRecordClicked(), Isis::PolygonTools::LatLonToSampleLine(), Isis::FindTool::paintViewport(), and Isis::FindTool::updateTool().
| void Isis::UniversalGroundMap::SetBand | ( | const int | band | ) |
Set the image band number.
| [in] | band | (int) Image band number |
Definition at line 84 of file UniversalGroundMap.cpp.
References p_camera, and Isis::Camera::SetBand().
Referenced by Isis::ImagePolygon::initCube().
| bool Isis::UniversalGroundMap::SetGround | ( | const SurfacePoint & | sp | ) |
Returns whether the SurfacePoint was set successfully in the camera model or projection.
| sp | The Surface Point to set ground with |
Definition at line 160 of file UniversalGroundMap.cpp.
References Isis::Angle::degrees(), Isis::SurfacePoint::GetLatitude(), Isis::SurfacePoint::GetLongitude(), Isis::Camera::InCube(), p_camera, p_projection, Isis::Camera::SetGround(), and Isis::Projection::SetUniversalGround().
Returns whether the lat/lon position was set successfully in the camera model or projection.
| lat | The latitude | |
| lon | The longitude |
Definition at line 134 of file UniversalGroundMap.cpp.
References Isis::Angle::degrees(), Isis::Camera::InCube(), p_camera, p_projection, Isis::Camera::SetGround(), and Isis::Projection::SetUniversalGround().
Referenced by Isis::FeatureNomenclatureTool::FeaturePosition::applyExtentType(), Isis::FeatureNomenclatureTool::FeaturePosition::FeaturePosition(), and Isis::StereoTool::measureSaved().
| bool Isis::UniversalGroundMap::SetImage | ( | double | sample, | |
| double | line | |||
| ) |
Returns whether the sample/line postion was set successfully in the camera model or projection.
| sample | The sample position | |
| line | The line position |
Definition at line 213 of file UniversalGroundMap.cpp.
References p_camera, p_projection, Isis::Camera::SetImage(), and Isis::Projection::SetWorld().
Referenced by Isis::FindTool::distancePerPixel(), Isis::ControlPointEdit::findPoint(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::StereoTool::measureSaved(), Isis::FindTool::mouseButtonRelease(), Isis::InterestOperator::Operate(), Isis::ImagePolygon::SetImage(), Isis::ControlPointEdit::updateLeftPositionLabel(), Isis::ControlPointEdit::updateRightPositionLabel(), and Isis::FindTool::updateTool().
| bool Isis::UniversalGroundMap::SetUniversalGround | ( | double | lat, | |
| double | lon | |||
| ) |
Returns whether the lat/lon position was set successfully in the camera model or projection.
| lat | The universal latitude | |
| lon | The universal longitude |
Definition at line 109 of file UniversalGroundMap.cpp.
References Isis::Camera::InCube(), p_camera, p_projection, Isis::Projection::SetUniversalGround(), and Isis::Camera::SetUniversalGround().
Referenced by Isis::FindTool::centerLinkedViewports(), Isis::ProcessGroundPolygons::Convert(), Isis::StereoTool::createPoint(), Isis::FindTool::distancePerPixel(), Isis::MosaicSceneItem::drawImage(), Isis::ControlPointEdit::findPoint(), Isis::ImagePolygon::FixPolePoly(), Isis::FindTool::handleRecordClicked(), Isis::PolygonTools::LatLonToSampleLine(), Isis::FindTool::paintViewport(), and Isis::FindTool::updateTool().
| double Isis::UniversalGroundMap::UniversalLatitude | ( | ) | const |
Returns the universal latitude of the camera model or projection.
Definition at line 227 of file UniversalGroundMap.cpp.
References p_camera, p_projection, Isis::Projection::UniversalLatitude(), and Isis::Sensor::UniversalLatitude().
Referenced by Isis::FindTool::distancePerPixel(), Isis::ControlPointEdit::findPoint(), Isis::StereoTool::measureSaved(), Isis::FindTool::mouseButtonRelease(), Isis::ControlPointEdit::updateLeftPositionLabel(), Isis::ControlPointEdit::updateRightPositionLabel(), Isis::FindTool::updateTool(), and Isis::ImagePolygon::WalkPoly().
| double Isis::UniversalGroundMap::UniversalLongitude | ( | ) | const |
Returns the universal longitude of the camera model or projection.
Definition at line 241 of file UniversalGroundMap.cpp.
References p_camera, p_projection, Isis::Projection::UniversalLongitude(), and Isis::Sensor::UniversalLongitude().
Referenced by Isis::FindTool::distancePerPixel(), Isis::ControlPointEdit::findPoint(), Isis::StereoTool::measureSaved(), Isis::FindTool::mouseButtonRelease(), Isis::ControlPointEdit::updateLeftPositionLabel(), Isis::ControlPointEdit::updateRightPositionLabel(), Isis::FindTool::updateTool(), and Isis::ImagePolygon::WalkPoly().
Isis::Camera* Isis::UniversalGroundMap::p_camera [private] |
The camera (if the image has a camera).
Definition at line 152 of file UniversalGroundMap.h.
Referenced by Camera(), GroundRange(), HasCamera(), Init(), Line(), Resolution(), Sample(), SetBand(), SetGround(), SetImage(), SetUniversalGround(), UniversalLatitude(), UniversalLongitude(), and ~UniversalGroundMap().
The projection (if the image is projected).
Definition at line 153 of file UniversalGroundMap.h.
Referenced by GroundRange(), HasProjection(), Init(), Line(), Projection(), Resolution(), Sample(), SetGround(), SetImage(), SetUniversalGround(), UniversalLatitude(), UniversalLongitude(), and ~UniversalGroundMap().