USGS

Isis 3.0 Object Programmers' Reference

Home

Qisis::AdvancedTrackTool Class Reference

#include <AdvancedTrackTool.h>

Inheritance diagram for Qisis::AdvancedTrackTool:

Inheritance graph
[legend]
Collaboration diagram for Qisis::AdvancedTrackTool:

Collaboration graph
[legend]
List of all members.

Detailed Description

Tool to display info for a point on a cube.

This tool is part of the Qisis namespace and allows the user to view and record information from a point on a cube such as line, sample, band, lats, longs, etc.

Author:
?? Unknown

For internal use only.

History:
2008-06-25 Noah Hilt - Added enumeration for different column values.
History:
2008-10-14 Noah Hilt - Added Projected X and Y values to the table.
History:
2008-10-17 Noah Hilt - Added tooltips to certain items in the table that did not have descriptive names.

Definition at line 49 of file AdvancedTrackTool.h.

Public Slots

virtual void mouseMove (QPoint p)
 This method is called when the mouse has moved across the viewport and updates the row accordingly.
virtual void mouseLeave ()
 This method is called when the mouse leaved the viewport and clears any rows accordingly.

Public Member Functions

 AdvancedTrackTool (QWidget *parent)
 Constructs an AdvancedTrackTool object.
void addTo (QMenu *menu)
 This method adds the action to bring up the track tool to the menu.
void addToPermanent (QToolBar *perm)
 This method adds the action to bring up the track tool to the permanent tool bar.
bool eventFilter (QObject *o, QEvent *e)
 An event filter that calls methods on certain events.

Protected Member Functions

QString menuName () const
 This method returns the menu name associated with this tool.

Private Types

 ID
 The record ID.
 SAMPLE
 The current sample.
 LINE
 The current line.
 BAND
 The current band.
 PIXEL
 The current pixel.
 PLANETOCENTRIC_LAT
 The planetocentric latitude for this point.
 PLANETOGRAPHIC_LAT
 The planetographic latitude for this point.
 EAST_LON_360
 The 360 east longitude for this point.
 WEST_LON_360
 The 360 west longitude for this point.
 EAST_LON_180
 The 180 east longitude for this point.
 WEST_LON_180
 The 180 west longitude for this point.
 PROJECTED_X
 Projected X value for valid projections.
 PROJECTED_Y
 Projected Y value for valid projections.
 RADIUS
 The radius for this point.
 POINT_X
 The x value for this point.
 POINT_Y
 The y value for this point.
 POINT_Z
 The z value for this point.
 RIGHT_ASCENSION
 The right ascension for this point.
 DECLINATION
 The declination for this point.
 RESOLUTION
 The resoultion for this point.
 PHASE
 The phase for this point.
 INCIDENCE
 The incidence for this point.
 EMISSION
 The emission for this point.
 NORTH_AZIMUTH
 The north azimuth for this cube.
 SUN_AZIMUTH
 The sun azimuth for this cube.
 SOLAR_LON
 The solar longitude for this point.
 SPACECRAFT_X
 The spacecraft x position for this cube.
 SPACECRAFT_Y
 The spacecraft y position for this cube.
 SPACECRAFT_Z
 The spacecraft z position for this cube.
 SPACECRAFT_AZIMUTH
 The spacecraft azimuth for this cube.
 SLANT
 The slant for this cube.
 EPHEMERIS_TIME
 The ephemeris time for this cube.
 SOLAR_TIME
 The local solar time for this cube.
 UTC
 The UTC for this cube.
 PATH
 The path for this cube.
 FILENAME
 The filename for this cube.
 SERIAL_NUMBER
 The serial number for this cube.
 NOTES
 Any notes for this record.
enum  {
  ID, SAMPLE, LINE, BAND,
  PIXEL, PLANETOCENTRIC_LAT, PLANETOGRAPHIC_LAT, EAST_LON_360,
  WEST_LON_360, EAST_LON_180, WEST_LON_180, PROJECTED_X,
  PROJECTED_Y, RADIUS, POINT_X, POINT_Y,
  POINT_Z, RIGHT_ASCENSION, DECLINATION, RESOLUTION,
  PHASE, INCIDENCE, EMISSION, NORTH_AZIMUTH,
  SUN_AZIMUTH, SOLAR_LON, SPACECRAFT_X, SPACECRAFT_Y,
  SPACECRAFT_Z, SPACECRAFT_AZIMUTH, SLANT, EPHEMERIS_TIME,
  SOLAR_TIME, UTC, PATH, FILENAME,
  SERIAL_NUMBER, NOTES
}
 Enum for column values. More...

Private Slots

void updateRow (QPoint p)
 This method updates the row with data from the point given.
void updateRow (CubeViewport *cvp, QPoint p, int row)
 This method updates the row given with data from the viewport cvp at point p.
void record ()
 This methods records data to the current row.
void updateID ()
 This method updates the record ID.

Private Attributes

QAction * p_action
 Action to bring up the track tool.
int p_numRows
 The number of rows in the table.
int p_id
 The record id.
Qisis::TableMainWindowp_tableWin
 The table window.


Member Enumeration Documentation

anonymous enum [private]

Enum for column values.

Enumerator:
ID  The record ID.
SAMPLE  The current sample.
LINE  The current line.
BAND  The current band.
PIXEL  The current pixel.
PLANETOCENTRIC_LAT  The planetocentric latitude for this point.
PLANETOGRAPHIC_LAT  The planetographic latitude for this point.
EAST_LON_360  The 360 east longitude for this point.
WEST_LON_360  The 360 west longitude for this point.
EAST_LON_180  The 180 east longitude for this point.
WEST_LON_180  The 180 west longitude for this point.
PROJECTED_X  Projected X value for valid projections.
PROJECTED_Y  Projected Y value for valid projections.
RADIUS  The radius for this point.
POINT_X  The x value for this point.
POINT_Y  The y value for this point.
POINT_Z  The z value for this point.
RIGHT_ASCENSION  The right ascension for this point.
DECLINATION  The declination for this point.
RESOLUTION  The resoultion for this point.
PHASE  The phase for this point.
INCIDENCE  The incidence for this point.
EMISSION  The emission for this point.
NORTH_AZIMUTH  The north azimuth for this cube.
SUN_AZIMUTH  The sun azimuth for this cube.
SOLAR_LON  The solar longitude for this point.
SPACECRAFT_X  The spacecraft x position for this cube.
SPACECRAFT_Y  The spacecraft y position for this cube.
SPACECRAFT_Z  The spacecraft z position for this cube.
SPACECRAFT_AZIMUTH  The spacecraft azimuth for this cube.
SLANT  The slant for this cube.
EPHEMERIS_TIME  The ephemeris time for this cube.
SOLAR_TIME  The local solar time for this cube.
UTC  The UTC for this cube.
PATH  The path for this cube.
FILENAME  The filename for this cube.
SERIAL_NUMBER  The serial number for this cube.
NOTES  Any notes for this record.

Definition at line 81 of file AdvancedTrackTool.h.


Constructor & Destructor Documentation

Qisis::AdvancedTrackTool::AdvancedTrackTool ( QWidget parent  ) 

Constructs an AdvancedTrackTool object.

Parameters:
parent 

Definition at line 14 of file AdvancedTrackTool.cpp.

References Qisis::TableMainWindow::addToTable(), c, p_action, p_id, p_tableWin, record(), Qisis::TableMainWindow::setStatusMessage(), Qisis::TableMainWindow::setTrackListItems(), Qisis::TableMainWindow::table(), and updateID().


Member Function Documentation

void Qisis::AdvancedTrackTool::addTo ( QMenu *  menu  ) 

This method adds the action to bring up the track tool to the menu.

Parameters:
menu 

Definition at line 111 of file AdvancedTrackTool.cpp.

References p_action.

void Qisis::AdvancedTrackTool::addToPermanent ( QToolBar *  perm  ) 

This method adds the action to bring up the track tool to the permanent tool bar.

Parameters:
perm 

Definition at line 121 of file AdvancedTrackTool.cpp.

References p_action.

bool Qisis::AdvancedTrackTool::eventFilter ( QObject *  o,
QEvent *  e 
)

An event filter that calls methods on certain events.

Parameters:
o 
e 
Returns:
bool

Definition at line 95 of file AdvancedTrackTool.cpp.

QString Qisis::AdvancedTrackTool::menuName (  )  const [inline, protected]

This method returns the menu name associated with this tool.

Returns:
QString

Definition at line 69 of file AdvancedTrackTool.h.

void Qisis::AdvancedTrackTool::mouseLeave (  )  [virtual, slot]

This method is called when the mouse leaved the viewport and clears any rows accordingly.

Definition at line 140 of file AdvancedTrackTool.cpp.

References Qisis::TableMainWindow::clearRow(), Qisis::TableMainWindow::currentRow(), p_numRows, and p_tableWin.

void Qisis::AdvancedTrackTool::mouseMove ( QPoint  p  )  [virtual, slot]

This method is called when the mouse has moved across the viewport and updates the row accordingly.

Parameters:
p 

Definition at line 131 of file AdvancedTrackTool.cpp.

References updateRow().

void Qisis::AdvancedTrackTool::record (  )  [private, slot]

This methods records data to the current row.

Definition at line 392 of file AdvancedTrackTool.cpp.

References c, Qisis::TableMainWindow::currentIndex(), Qisis::TableMainWindow::currentRow(), p_id, p_numRows, p_tableWin, Qisis::TableMainWindow::setCurrentIndex(), Qisis::TableMainWindow::setCurrentRow(), and Qisis::TableMainWindow::table().

Referenced by AdvancedTrackTool().

void Qisis::AdvancedTrackTool::updateID (  )  [private, slot]

This method updates the record ID.

Definition at line 419 of file AdvancedTrackTool.cpp.

References Qisis::TableMainWindow::currentRow(), ID, p_id, p_tableWin, and Qisis::TableMainWindow::table().

Referenced by AdvancedTrackTool().

void Qisis::AdvancedTrackTool::updateRow ( CubeViewport cvp,
QPoint  p,
int  row 
) [private, slot]

This method updates the row given with data from the viewport cvp at point p.

Parameters:
cvp 
p 
row 

Definition at line 186 of file AdvancedTrackTool.cpp.

References BAND, c, Qisis::CubeViewport::camera(), Isis::Sensor::Coordinate(), Qisis::CubeViewport::cube(), Qisis::CubeViewport::cubeLines(), Qisis::CubeViewport::cubeSamples(), DECLINATION, Isis::Sensor::Declination(), EAST_LON_180, EAST_LON_360, EMISSION, emission, Isis::Sensor::EmissionAngle(), EPHEMERIS_TIME, Isis::Spice::EphemerisTime(), FILENAME, Isis::Cube::Filename(), Qisis::CubeViewport::grayBand(), Qisis::CubeViewport::grayPixel(), ID, iline, INCIDENCE, incidence, Isis::Sensor::IncidenceAngle(), Isis::Spice::InstrumentPosition(), Qisis::CubeViewport::isGray(), Qisis::CubeViewport::isLinked(), Isis::Projection::IsSky(), LINE, line, Isis::Projection::LocalRadius(), Isis::Sensor::LocalRadius(), Isis::Sensor::LocalSolarTime(), Isis::Projection::Longitude(), Isis::Filename::Name(), NORTH_AZIMUTH, Isis::Camera::NorthAzimuth(), p_id, p_tableWin, PATH, Isis::Filename::Path(), PHASE, phase, Isis::Sensor::PhaseAngle(), PIXEL, Isis::Camera::PixelResolution(), Isis::PixelToString(), PLANETOCENTRIC_LAT, PLANETOGRAPHIC_LAT, POINT_X, POINT_Y, POINT_Z, pos, PROJECTED_X, PROJECTED_Y, Qisis::CubeViewport::projection(), Isis::Spice::Radii(), RADIUS, radius, Qisis::CubeViewport::redBand(), Qisis::CubeViewport::redPixel(), RESOLUTION, RIGHT_ASCENSION, Isis::Sensor::RightAscension(), SAMPLE, sample, Isis::Camera::SetImage(), Isis::Projection::SetWorld(), SLANT, Isis::Sensor::SlantDistance(), SOLAR_LON, SOLAR_TIME, Isis::Spice::SolarLongitude(), SPACECRAFT_AZIMUTH, SPACECRAFT_X, SPACECRAFT_Y, SPACECRAFT_Z, Isis::Camera::SpacecraftAzimuth(), SUN_AZIMUTH, Isis::Camera::SunAzimuth(), Qisis::TableMainWindow::table(), Isis::Projection::To180Domain(), Isis::Projection::ToPlanetographic(), Isis::Projection::UniversalLatitude(), Isis::Sensor::UniversalLatitude(), Isis::Projection::UniversalLongitude(), Isis::Sensor::UniversalLongitude(), UTC, Isis::iTime::UTC(), Qisis::CubeViewport::viewportToCube(), WEST_LON_180, WEST_LON_360, Isis::Projection::XCoord(), and Isis::Projection::YCoord().

void Qisis::AdvancedTrackTool::updateRow ( QPoint  p  )  [private, slot]

This method updates the row with data from the point given.

Parameters:
p 

Definition at line 157 of file AdvancedTrackTool.cpp.

References Qisis::TableMainWindow::clearRow(), Qisis::TableMainWindow::currentRow(), d, p_numRows, p_tableWin, and size.

Referenced by mouseMove().


Member Data Documentation

QAction* Qisis::AdvancedTrackTool::p_action [private]

Action to bring up the track tool.

Definition at line 121 of file AdvancedTrackTool.h.

Referenced by addTo(), addToPermanent(), and AdvancedTrackTool().

int Qisis::AdvancedTrackTool::p_id [private]

The record id.

Definition at line 123 of file AdvancedTrackTool.h.

Referenced by AdvancedTrackTool(), record(), updateID(), and updateRow().

int Qisis::AdvancedTrackTool::p_numRows [private]

The number of rows in the table.

Definition at line 122 of file AdvancedTrackTool.h.

Referenced by mouseLeave(), record(), and updateRow().

Qisis::TableMainWindow* Qisis::AdvancedTrackTool::p_tableWin [private]

The table window.

Definition at line 124 of file AdvancedTrackTool.h.

Referenced by AdvancedTrackTool(), mouseLeave(), record(), updateID(), and updateRow().


The documentation for this class was generated from the following files: