Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Isis 3 Programmer Reference
UniversalGroundMap.h
1#ifndef UniversalGroundMap_h
2#define UniversalGroundMap_h
7
8/* SPDX-License-Identifier: CC0-1.0 */
9namespace Isis {
10 class Camera;
11 class Cube;
12 class Projection;
13 class Pvl;
14 class SurfacePoint;
15 class Latitude;
16 class Longitude;
17
70 public:
87
88 UniversalGroundMap(Cube &cube, CameraPriority priority = CameraFirst);
90
91 void SetBand(const int band);
92 bool SetUniversalGround(double lat, double lon);
93 bool SetUnboundGround(Latitude lat, Longitude lon);
94 bool SetGround(Latitude lat, Longitude lon);
95 bool SetGround(const SurfacePoint &);
96 double Sample() const;
97 double Line() const;
98
99 bool SetImage(double sample, double line);
100 double UniversalLatitude() const;
101 double UniversalLongitude() const;
102 double LocalRadius() const;
103 double Resolution() const;
104
105 bool GroundRange(Cube *cube,
106 Latitude &minLat, Latitude &maxLat,
107 Longitude &minLon, Longitude &maxLon,
108 bool allowEstimation = true);
109
117 return p_projection != 0;
118 };
119
120
127 bool HasCamera() {
128 return p_camera != 0;
129 };
130
131 int currentPriority() {
132 return p_priority;
133 };
134
135 void setPriority(int priority);
136
139 return p_projection;
140 };
141
144 return p_camera;
145 };
146
147
148 private:
151 CameraPriority p_priority;
152 };
153};
154
155#endif
IO Handler for Isis Cubes.
Definition Cube.h:168
This class is designed to encapsulate the concept of a Latitude.
Definition Latitude.h:51
This class is designed to encapsulate the concept of a Longitude.
Definition Longitude.h:40
Base class for Map Projections.
Definition Projection.h:154
This class defines a body-fixed surface point.
Isis::Projection * p_projection
The projection (if the image is projected)
double Sample() const
Returns the current line value of the camera model or projection.
double UniversalLongitude() const
Returns the universal longitude 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 Resolution() const
Returns the resolution of the camera model or projection.
~UniversalGroundMap()
Destroys the UniversalGroundMap object.
void SetBand(const int band)
Set the image band number.
Isis::Camera * p_camera
The camera (if the image has a camera)
double UniversalLatitude() const
Returns the universal latitude of the camera model or projection.
bool SetUnboundGround(Latitude lat, Longitude lon)
Returns whether the lat/lon position was set successfully in the camera model or projection.
double Line() const
Returns the current line value of the camera model or projection.
bool HasProjection()
Returns whether the ground map has a projection or not.
CameraPriority
This enum is used to define whether to use a camera or projection primarily, and which to fall back o...
@ ProjectionFirst
Use the projection for functionality well outside the original image if available,...
@ CameraFirst
This is the default because cameras are projection-aware.
double LocalRadius() const
Returns the radius of the camera model or projection.
bool HasCamera()
Returns whether the ground map has a camera or not.
UniversalGroundMap(Cube &cube, CameraPriority priority=CameraFirst)
Constructs a UniversalGroundMap object from a cube.
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.
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)
bool GroundRange(Cube *cube, Latitude &minLat, Latitude &maxLat, Longitude &minLon, Longitude &maxLon, bool allowEstimation=true)
Find the lat/lon range of the image.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16