Isis 3 Programmer Reference
Isis::MdiCubeViewport Class Reference

Cube display widget for certain Isis MDI applications. More...

#include <MdiCubeViewport.h>

Inheritance diagram for Isis::MdiCubeViewport:
Inheritance graph
Collaboration diagram for Isis::MdiCubeViewport:
Collaboration graph

Public Slots

void setLinked (bool b)
 Change the linked state of the viewport.
 
void viewGray (int band)
 
void viewRGB (int red, int green, int blue)
 
QSize sizeHint () const
 Make viewports show up as 512 by 512.
 
void setScale (double scale)
 Change the scale of the cube to the given parameter value.
 
void setScale (double scale, double sample, double line)
 Change the scale of the cube after moving samp/line to the center.
 
void setScale (double scale, int x, int y)
 Change the scale of the cube after moving x,y to the center.
 
void center (int x, int y)
 Bring the cube pixel under viewport x/y to the center.
 
void center (double sample, double line)
 Bring the cube sample/line the center.
 
void stretchGray (const QString &string)
 Apply stretch pairs to gray band.
 
void stretchGray (const Stretch &stretch)
 Sets the stretch for gray mode.
 
void stretchRed (const QString &string)
 Apply stretch pairs to red bands.
 
void stretchRed (const Stretch &stretch)
 Sets the stretch for red in rgb mode.
 
void stretchGreen (const QString &string)
 Apply stretch pairs to green bands.
 
void stretchGreen (const Stretch &stretch)
 Sets the stretch for green in rgb mode.
 
void stretchBlue (const QString &string)
 Apply stretch pairs to blue bands.
 
void stretchBlue (const Stretch &stretch)
 Sets the stretch for blue in rgb mode.
 
void stretchKnownGlobal ()
 List<Tool *> p This stretches to the global stretch.
 
void cubeChanged (bool changed)
 This method is called when the cube has changed or changes have been finalized.
 
void showEvent (QShowEvent *)
 This method is called to initially show the viewport.
 
void scrollBy (int dx, int dy)
 Move the scrollbars by dx/dy screen pixels.
 
void changeCursor (QCursor cursor)
 Allows users to change the cursor type on the viewport.
 
void onProgressTimer ()
 This updates the progress bar visually.
 
void enableProgress ()
 This restarts the progress bar.
 

Signals

void linkChanging (bool)
 
void requestRestretch (MdiCubeViewport *, int)
 
void viewportUpdated ()
 Emitted when viewport updated.
 
void viewportClosed (CubeViewport *)
 Emitted when viewport is closed.
 
void mouseEnter ()
 Emitted when the mouse enters the viewport.
 
void mouseMove (QPoint)
 Emitted when the mouse moves.
 
void mouseMove (QPoint, Qt::MouseButton)
 Emitted when the mouse moves.
 
void mouseLeave ()
 Emitted when the mouse leaves the viewport.
 
void mouseButtonPress (QPoint, Qt::MouseButton)
 Emitted when mouse button pressed.
 
void mouseButtonRelease (QPoint, Qt::MouseButton)
 Emitted when mouse button released.
 
void mouseDoubleClick (QPoint)
 Emitted when double click happens.
 
void windowTitleChanged ()
 Emitted when window title changes.
 
void scaleChanged ()
 Emitted when zoom factor changed just before the repaint event.
 
void saveChanges (CubeViewport *)
 Emitted when changes should be saved.
 
void discardChanges (CubeViewport *)
 Emitted when changes should be discarded.
 
void screenPixelsChanged ()
 Emitted when cube pixels that should be on the screen change.
 
void progressChanged (int)
 Emitted with current progress (0 to 100) when working.
 
void progressComplete ()
 Emitted when the current progress is complete (100)
 
void doneWithData (int, const Isis::Brick *)
 Emitted when a brick is no longer needed, should only be sent to cube data thread.
 

Public Member Functions

 MdiCubeViewport (Cube *cube, Isis::CubeDataThread *cdt=0, QWidget *parent=0)
 
void forceAbstract ()
 
bool isLinked () const
 Is the viewport linked with other viewports.
 
void registerTool (Tool *tool)
 Registers the tool given tool.
 
void paintEvent (QPaintEvent *e)
 Repaint the viewport.
 
void restretch (ViewportBuffer *buffer)
 This is called by internal viewport buffers when a stretch action should be performed.
 
void setCube (Cube *cube)
 This method sets the viewports cube.
 
int cubeSamples () const
 Return the number of samples in the cube.
 
int cubeLines () const
 Return the number of lines in the cube.
 
int cubeBands () const
 Return the number of bands in the cube.
 
bool isColor () const
 
bool isGray () const
 
int grayBand () const
 
int redBand () const
 
int greenBand () const
 
int blueBand () const
 
double scale () const
 
bool cubeShown () const
 
int comboCount () const
 
int comboIndex () const
 
void cubeContentsChanged (QRect rect)
 Calle dhwen the contents of the cube changes.
 
double fitScale () const
 Determine the scale that causes the full cube to fit in the viewport.
 
double fitScaleWidth () const
 Determine the scale of cube in the width to fit in the viewport.
 
double fitScaleHeight () const
 Determine the scale of cube in heighth to fit in the viewport.
 
void viewportToCube (int x, int y, double &sample, double &line) const
 Turns a viewport into a cube.
 
void cubeToViewport (double sample, double line, int &x, int &y) const
 Turns a cube into a viewport.
 
void contentsToCube (int x, int y, double &sample, double &line) const
 Turns contents to a cube.
 
void cubeToContents (double sample, double line, int &x, int &y) const
 Turns a cube into contents.
 
double redPixel (int sample, int line)
 Gets the red pixel.
 
double greenPixel (int sample, int line)
 Gets the green pixel.
 
double bluePixel (int sample, int line)
 Gets the blue pixel.
 
double grayPixel (int sample, int line)
 Gets the gray pixel.
 
CubeStretch grayStretch () const
 Return the gray band stretch.
 
CubeStretch redStretch () const
 Return the red band stretch.
 
CubeStretch greenStretch () const
 Return the green band stretch.
 
CubeStretch blueStretch () const
 Return the blue band stretch.
 
Cubecube () const
 
Projectionprojection () const
 
Cameracamera () const
 
UniversalGroundMapuniversalGroundMap () const
 
CubetrackingCube () const
 
void moveCursor (int x, int y)
 Move the cursor by x,y if possible.
 
bool cursorInside () const
 Is cursor inside viewport.
 
QPoint cursorPosition () const
 Return the cursor position in the viewport.
 
void setCursorPosition (int x, int y)
 Set the cursor position to x/y in the viewport.
 
void setCaption ()
 Change the caption on the viewport title bar.
 
void setBackground (QColor color)
 Sets the background color.
 
void setComboCount (int count)
 Sets the band bin combo box count.
 
void setComboIndex (int index)
 Sets the band bin combo box index.
 
QPixmap pixmap ()
 Returns the pixmap.
 
ViewportBuffergrayBuffer ()
 Returns the gray viewport buffer (Will be NULL if in RGB mode.)
 
ViewportBufferredBuffer ()
 Returns the red viewport buffer (Will be NULL if in Gray mode.)
 
ViewportBuffergreenBuffer ()
 Returns the green viewport buffer (Will be NULL if in Gray mode.)
 
ViewportBufferblueBuffer ()
 Returns the blue viewport buffer (Will be NULL if in Gray mode.)
 
void bufferUpdated (QRect rect)
 This method is called by ViewportBuffer upon successful completion of all operations and gives the appropriate rect to be repainted.
 
void paintPixmap ()
 Paint the whole pixmap.
 
void forgetStretches ()
 Resets all remembered stretches.
 
void setAllBandStretches (Stretch stretch)
 Sets a stretch for all bands.
 
CubeDataThreadcubeDataThread ()
 
int cubeID ()
 
void getAllWhatsThisInfo (Pvl &pWhatsThisPvl)
 Get All WhatsThis info - viewport, cube, area in PVL format.
 
void getBandFilterName (PvlKeyword &pFilterNameKey)
 Get Band Filter name from the Isis cube label.
 
void getCubeArea (double &pdStartSample, double &pdEndSample, double &pdStartLine, double &pdEndLine)
 Get Cube area corresponding to the viewport's dimension.
 
bool confirmClose ()
 This method should be called during a close event that would cause this viewport to close.
 
void setTrackingCube ()
 Finds the Tracking group from p_cube and stores the tracking cube name so that we can grab it in AdvancedTrackTool and get mosaic information.
 

Protected Slots

virtual void cubeDataChanged (int cubeId, const Isis::Brick *)
 This method updates the internal viewport buffer based on changes in cube DN values.
 

Protected Member Functions

void scrollContentsBy (int dx, int dy)
 Scroll the viewport contents by dx/dy screen pixels.
 
virtual void resizeEvent (QResizeEvent *e)
 The viewport is being resized.
 
virtual bool eventFilter (QObject *o, QEvent *e)
 Event filter to watch for mouse events on viewport.
 
virtual void keyPressEvent (QKeyEvent *e)
 Process arrow keystrokes on cube.
 

Protected Attributes

QPixmap p_pixmap
 The qpixmap.
 
QVector< Stretch * > * p_knownStretches
 Stretches for each previously stretched band.
 
QVector< Stretch * > * p_globalStretches
 Global stretches for each stretched band.
 

Private Member Functions

void paintPixmap (QRect rect)
 Paint a region of the pixmap.
 
void shiftPixmap (int dx, int dy)
 Shifts the pixels on the pixmap without reading new data.
 
void updateScrollBars (int x, int y)
 Update the scroll bar.
 
void paintPixmapRects ()
 Goes through the list of requested paints, from the viewport buffer, and paints them.
 
void updateWhatsThis ()
 Update the What's This text.
 

Private Attributes

bool p_linked
 
QList< Tool * > p_toolList
 
ViewportBufferp_grayBuffer
 Viewport Buffer to manage gray band.
 
ViewportBufferp_redBuffer
 Viewport Buffer to manage red band.
 
ViewportBufferp_greenBuffer
 Viewport Buffer to manage green band.
 
ViewportBufferp_blueBuffer
 Viewport Buffer to manage blue band.
 
QColor p_bgColor
 The color to paint the background of the viewport.
 
Cubep_cube
 The cube associated with the viewport.
 
Camerap_camera
 The camera from the cube.
 
Projectionp_projection
 The projection from the cube.
 
UniversalGroundMapp_groundMap
 The universal ground map from the cube.
 
Cubep_trackingCube
 
QTimer * p_progressTimer
 Activated to update progress bar.
 
double p_scale
 The scale number.
 
bool p_color
 Is the viewport in color?
 
BandInfo p_gray
 Gray band info.
 
BandInfo p_red
 Red band info.
 
BandInfo p_green
 Green band info.
 
BandInfo p_blue
 Blue band info.
 
int p_comboCount
 Number of elements in band bin combo box.
 
int p_comboIndex
 Current element chosen from combo box.
 
Brickp_redBrick
 Bricks for every color.
 
Brickp_grnBrick
 Bricks for every color.
 
Brickp_bluBrick
 Bricks for every color.
 
Brickp_gryBrick
 Bricks for every color.
 
Brickp_pntBrick
 Bricks for every color.
 
bool p_saveEnabled
 Has the cube changed?
 
bool p_cubeShown
 Is the cube visible?
 
QImage * p_image
 The qimage.
 
bool p_paintPixmap
 Paint the pixmap?
 
bool p_updatingBuffers
 Changing RGB and need to not repaint pixmap?
 
QString p_whatsThisText
 The text for What's this.
 
QString p_cubeWhatsThisText
 The text for the cube's What's this.
 
QString p_viewportWhatsThisText
 The text for the viewport's what's this.
 
QList< QRect * > * p_pixmapPaintRects
 A list of rects that the viewport buffers have requested painted.
 
CubeDataThreadp_cubeData
 Does all the cube I/O.
 
int p_cubeId
 Cube ID given from cube data thread for I/O.
 
bool p_thisOwnsCubeData
 if true then this owns the CubeDataThread, and should thus delete it
 

Detailed Description

Cube display widget for certain Isis MDI applications.

Author
????-??-?? Eric Hyer - Moved MDI specific code here from CubeViewport
See also
Workspace CubeViewport
History
2012-03-22 Steven Lambright - Added Qt meta type declarations for QVariant.

Definition at line 39 of file MdiCubeViewport.h.

Constructor & Destructor Documentation

◆ MdiCubeViewport()

Isis::MdiCubeViewport::MdiCubeViewport ( Cube * cube,
Isis::CubeDataThread * cdt = 0,
QWidget * parent = 0 )

Definition at line 28 of file MdiCubeViewport.cpp.

◆ ~MdiCubeViewport()

Isis::MdiCubeViewport::~MdiCubeViewport ( )

Definition at line 38 of file MdiCubeViewport.cpp.

Member Function Documentation

◆ blueBand()

int Isis::CubeViewport::blueBand ( ) const
inlineinherited

◆ blueBuffer()

ViewportBuffer * Isis::CubeViewport::blueBuffer ( )
inlineinherited

Returns the blue viewport buffer (Will be NULL if in Gray mode.)

Returns
ViewportBuffer*

Definition at line 441 of file CubeViewport.h.

References Isis::CubeViewport::p_blueBuffer.

◆ bluePixel()

double Isis::CubeViewport::bluePixel ( int sample,
int line )
inherited

Gets the blue pixel.

Return the blue pixel value at a sample/line.

Parameters
sampleThe sample
lineThe line
Returns
The bluePixel value
Parameters
sample
line
Returns
double

Definition at line 1637 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::band, Isis::CubeViewport::p_blue, Isis::CubeViewport::p_cube, Isis::CubeViewport::p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().

◆ blueStretch()

CubeStretch Isis::CubeViewport::blueStretch ( ) const
inherited

Return the blue band stretch.

Returns
The blue Strech

Definition at line 1679 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::getStretch(), and Isis::CubeViewport::p_blue.

Referenced by Isis::CubeViewport::paintPixmap().

◆ bufferUpdated()

void Isis::CubeViewport::bufferUpdated ( QRect rect)
inherited

This method is called by ViewportBuffer upon successful completion of all operations and gives the appropriate rect to be repainted.

This is intended to update the screen once all data is done and ready to be displayed.

Parameters
rectArea to update screen

Definition at line 1103 of file CubeViewport.cpp.

References Isis::CubeViewport::p_blueBuffer, Isis::CubeViewport::p_grayBuffer, Isis::CubeViewport::p_greenBuffer, Isis::CubeViewport::p_redBuffer, Isis::CubeViewport::paintPixmap(), and Isis::ViewportBuffer::working().

Referenced by Isis::ViewportBuffer::doQueuedActions().

◆ camera()

Camera * Isis::CubeViewport::camera ( ) const
inlineinherited
Returns
The camera associated with the cube (NULL implies none)

Definition at line 348 of file CubeViewport.h.

References Isis::CubeViewport::p_camera.

Referenced by Isis::FindTool::distancePerPixel().

◆ center [1/2]

void Isis::CubeViewport::center ( double sample,
double line )
slotinherited

◆ center [2/2]

void Isis::CubeViewport::center ( int x,
int y )
slotinherited

Bring the cube pixel under viewport x/y to the center.

Parameters
x
y

Definition at line 729 of file CubeViewport.cpp.

References Isis::CubeViewport::center(), and Isis::CubeViewport::viewportToCube().

Referenced by Isis::CubeViewport::center(), and Isis::CubeViewport::setScale().

◆ changeCursor

void Isis::CubeViewport::changeCursor ( QCursor cursor)
slotinherited

Allows users to change the cursor type on the viewport.

Parameters
cursor

Definition at line 2391 of file CubeViewport.cpp.

◆ comboCount()

int Isis::CubeViewport::comboCount ( ) const
inlineinherited
Returns
the BandBin combo box count

Definition at line 224 of file CubeViewport.h.

References Isis::CubeViewport::p_comboCount.

◆ comboIndex()

int Isis::CubeViewport::comboIndex ( ) const
inlineinherited
Returns
the BandBin combo box index

Definition at line 229 of file CubeViewport.h.

References Isis::CubeViewport::p_comboIndex.

◆ confirmClose()

bool Isis::CubeViewport::confirmClose ( )
inherited

This method should be called during a close event that would cause this viewport to close.

If changes have been made to this viewport it opens an information dialog that asks the user if they want to save, discard changes, or cancel.

Returns
True if closing is OK, false if it needs to be cancelled.

Definition at line 524 of file CubeViewport.cpp.

References Isis::CubeViewport::cube(), Isis::CubeViewport::discardChanges(), Isis::CubeViewport::p_saveEnabled, and Isis::CubeViewport::saveChanges().

◆ contentsToCube()

void Isis::CubeViewport::contentsToCube ( int x,
int y,
double & sample,
double & line ) const
inherited

Turns contents to a cube.

Convert a contents x/y to a cube sample/line (may be outside the cube)

Parameters
x
y
sample
line

Definition at line 797 of file CubeViewport.cpp.

References Isis::CubeViewport::p_scale.

Referenced by Isis::CubeViewport::setScale(), and Isis::CubeViewport::viewportToCube().

◆ cube()

◆ cubeBands()

int Isis::CubeViewport::cubeBands ( ) const
inherited

Return the number of bands in the cube.

Returns
The number of bands in the cube

Definition at line 444 of file CubeViewport.cpp.

References Isis::Cube::bandCount(), and Isis::CubeViewport::p_cube.

◆ cubeChanged

void Isis::CubeViewport::cubeChanged ( bool changed)
slotinherited

This method is called when the cube has changed or changes have been finalized.

Parameters
changed

Definition at line 560 of file CubeViewport.cpp.

References Isis::CubeViewport::p_saveEnabled.

◆ cubeContentsChanged()

void Isis::CubeViewport::cubeContentsChanged ( QRect rect)
inherited

◆ cubeDataChanged

◆ cubeDataThread()

CubeDataThread * Isis::CubeViewport::cubeDataThread ( )
inlineinherited
Returns
this CubeViewport's CubeDataThread

Definition at line 473 of file CubeViewport.h.

References Isis::CubeViewport::p_cubeData.

◆ cubeID()

int Isis::CubeViewport::cubeID ( )
inlineinherited
Returns
the CubeViewport's cube id

Definition at line 480 of file CubeViewport.h.

References Isis::CubeViewport::p_cubeId.

◆ cubeLines()

◆ cubeSamples()

◆ cubeShown()

bool Isis::CubeViewport::cubeShown ( ) const
inlineinherited
Returns
if the cube is visible

Definition at line 219 of file CubeViewport.h.

References Isis::CubeViewport::p_cubeShown.

◆ cubeToContents()

void Isis::CubeViewport::cubeToContents ( double sample,
double line,
int & x,
int & y ) const
inherited

Turns a cube into contents.

Convert a cube sample/line to a contents x/y (should not be outside)

Parameters
x
y
sample
line
sample
line
x
y

Definition at line 834 of file CubeViewport.cpp.

References Isis::CubeViewport::p_scale.

Referenced by Isis::CubeViewport::center(), Isis::CubeViewport::cubeToViewport(), and Isis::CubeViewport::setScale().

◆ cubeToViewport()

void Isis::CubeViewport::cubeToViewport ( double sample,
double line,
int & x,
int & y ) const
inherited

Turns a cube into a viewport.

Convert a cube sample/line to a viewport x/y (may be outside the viewport)

Parameters
x
y
sample
line
sample
line
x
y

Definition at line 851 of file CubeViewport.cpp.

References Isis::CubeViewport::cubeToContents().

Referenced by Isis::CubeViewport::cubeContentsChanged(), Isis::CubeViewport::cubeDataChanged(), and Isis::ViewportBuffer::getXYBoundingRect().

◆ cursorInside()

bool Isis::CubeViewport::cursorInside ( ) const
inherited

Is cursor inside viewport.

Returns
bool

Definition at line 1808 of file CubeViewport.cpp.

◆ cursorPosition()

QPoint Isis::CubeViewport::cursorPosition ( ) const
inherited

Return the cursor position in the viewport.

Returns
QPoint

Definition at line 1833 of file CubeViewport.cpp.

◆ discardChanges

void Isis::CubeViewport::discardChanges ( CubeViewport * )
signalinherited

Emitted when changes should be discarded.

Referenced by Isis::CubeViewport::confirmClose().

◆ doneWithData

void Isis::CubeViewport::doneWithData ( int ,
const Isis::Brick *  )
signalinherited

Emitted when a brick is no longer needed, should only be sent to cube data thread.

Referenced by Isis::CubeViewport::cubeDataChanged(), and Isis::CubeViewport::CubeViewport().

◆ enableProgress

void Isis::CubeViewport::enableProgress ( )
slotinherited

This restarts the progress bar.

Does nothing if already loading.

Definition at line 971 of file CubeViewport.cpp.

References Isis::CubeViewport::p_progressTimer, and Isis::CubeViewport::progressChanged().

Referenced by Isis::ViewportBuffer::enqueueAction().

◆ eventFilter()

bool Isis::CubeViewport::eventFilter ( QObject * o,
QEvent * e )
protectedvirtualinherited

◆ fitScale()

double Isis::CubeViewport::fitScale ( ) const
inherited

Determine the scale that causes the full cube to fit in the viewport.

Returns
The fitScale of the Viewport
The scale

Definition at line 2269 of file CubeViewport.cpp.

References Isis::CubeViewport::cubeLines(), Isis::CubeViewport::cubeSamples(), and Isis::CubeViewport::scale().

Referenced by Isis::CubeViewport::showEvent(), and Isis::ZoomTool::zoomFit().

◆ fitScaleHeight()

double Isis::CubeViewport::fitScaleHeight ( ) const
inherited

Determine the scale of cube in heighth to fit in the viewport.

Returns
The height of the Viewport/
The scale for height

Definition at line 2297 of file CubeViewport.cpp.

References Isis::CubeViewport::cubeLines(), and Isis::CubeViewport::scale().

Referenced by Isis::ZoomTool::zoomFitHeight().

◆ fitScaleWidth()

double Isis::CubeViewport::fitScaleWidth ( ) const
inherited

Determine the scale of cube in the width to fit in the viewport.

Returns
The width of the Viewport
The scale for width

Definition at line 2284 of file CubeViewport.cpp.

References Isis::CubeViewport::cubeSamples(), and Isis::CubeViewport::scale().

Referenced by Isis::ZoomTool::zoomFitWidth().

◆ forceAbstract()

void Isis::MdiCubeViewport::forceAbstract ( )
inline

Definition at line 47 of file MdiCubeViewport.h.

◆ forgetStretches()

void Isis::CubeViewport::forgetStretches ( )
inherited

Resets all remembered stretches.

Definition at line 1972 of file CubeViewport.cpp.

References Isis::CubeViewport::p_knownStretches.

◆ getAllWhatsThisInfo()

void Isis::CubeViewport::getAllWhatsThisInfo ( Pvl & pWhatsThisPvl)
inherited

◆ getBandFilterName()

void Isis::CubeViewport::getBandFilterName ( PvlKeyword & pFilterNameKey)
inherited

Get Band Filter name from the Isis cube label.

Parameters
pFilterNameKey- FilterName keyword containing the corresponding keyword from the Isis Cube label
Author
Sharmila Prasad (4/5/2011)
Parameters
pFilterNameKey- FilterName keyword containing the corresponding keyword from the Isis Cube label

Definition at line 1473 of file CubeViewport.cpp.

References Isis::PvlContainer::findKeyword(), Isis::PvlObject::findObject(), Isis::Cube::label(), and Isis::CubeViewport::p_cube.

Referenced by Isis::CubeViewport::getAllWhatsThisInfo(), and Isis::CubeViewport::updateWhatsThis().

◆ getCubeArea()

void Isis::CubeViewport::getCubeArea ( double & pdStartSample,
double & pdEndSample,
double & pdStartLine,
double & pdEndLine )
inherited

Get Cube area corresponding to the viewport's dimension.

Parameters
pdStartSample- Cube Start Sample
pdEndSample- Cube End Sample
pdStartLine- Cube Start Line
pdEndLine- Cube End Line

Definition at line 1494 of file CubeViewport.cpp.

References Isis::CubeViewport::cubeLines(), Isis::CubeViewport::cubeSamples(), and Isis::CubeViewport::viewportToCube().

Referenced by Isis::CubeViewport::getAllWhatsThisInfo(), and Isis::CubeViewport::updateWhatsThis().

◆ grayBand()

int Isis::CubeViewport::grayBand ( ) const
inlineinherited

◆ grayBuffer()

ViewportBuffer * Isis::CubeViewport::grayBuffer ( )
inlineinherited

Returns the gray viewport buffer (Will be NULL if in RGB mode.)

Returns
ViewportBuffer*

Definition at line 411 of file CubeViewport.h.

References Isis::CubeViewport::p_grayBuffer.

◆ grayPixel()

double Isis::CubeViewport::grayPixel ( int sample,
int line )
inherited

Gets the gray pixel.

Return the gray pixel value at a sample/line.

Parameters
sampleThe sample
lineThe line
Returns
The grayPixel value
Parameters
sample
line
Returns
double

Definition at line 1653 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::band, Isis::CubeViewport::p_cube, Isis::CubeViewport::p_gray, Isis::CubeViewport::p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().

◆ grayStretch()

CubeStretch Isis::CubeViewport::grayStretch ( ) const
inherited

Return the gray band stretch.

Returns
The gray Stretch

Definition at line 1661 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::getStretch(), and Isis::CubeViewport::p_gray.

◆ greenBand()

int Isis::CubeViewport::greenBand ( ) const
inlineinherited

◆ greenBuffer()

ViewportBuffer * Isis::CubeViewport::greenBuffer ( )
inlineinherited

Returns the green viewport buffer (Will be NULL if in Gray mode.)

Returns
ViewportBuffer*

Definition at line 431 of file CubeViewport.h.

References Isis::CubeViewport::p_greenBuffer.

◆ greenPixel()

double Isis::CubeViewport::greenPixel ( int sample,
int line )
inherited

Gets the green pixel.

Return the green pixel value at a sample/line.

Parameters
sampleThe sample
lineThe line
Returns
The greenPixel value
Parameters
sample
line
Returns
double

Definition at line 1621 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::band, Isis::CubeViewport::p_cube, Isis::CubeViewport::p_green, Isis::CubeViewport::p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().

◆ greenStretch()

CubeStretch Isis::CubeViewport::greenStretch ( ) const
inherited

Return the green band stretch.

Returns
The green Stretch

Definition at line 1673 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::getStretch(), and Isis::CubeViewport::p_green.

Referenced by Isis::CubeViewport::paintPixmap().

◆ isColor()

bool Isis::CubeViewport::isColor ( ) const
inlineinherited
Returns
Is the viewport shown in 3-band color

Definition at line 184 of file CubeViewport.h.

References Isis::CubeViewport::p_color.

Referenced by Isis::SpectralPlotWindow::drawBandMarkers().

◆ isGray()

bool Isis::CubeViewport::isGray ( ) const
inlineinherited
Returns
Is the viewport shown in gray / b&w

Definition at line 189 of file CubeViewport.h.

References Isis::CubeViewport::p_color.

Referenced by Isis::SpatialPlotTool::refreshPlot(), and Isis::CubeViewport::stretchKnownGlobal().

◆ isLinked()

◆ keyPressEvent()

void Isis::CubeViewport::keyPressEvent ( QKeyEvent * e)
protectedvirtualinherited

Process arrow keystrokes on cube.

Parameters
e
History
2017-08-11 Adam Goins - Added the ability to ctrl + c to copy the filename of the current cube into the system's clipboard. Fixes #5098.

Definition at line 1758 of file CubeViewport.cpp.

References Isis::Cube::fileName(), Isis::CubeViewport::moveCursor(), Isis::CubeViewport::p_cube, Isis::CubeViewport::p_scale, Isis::CubeViewport::scale(), and Isis::CubeViewport::setScale().

◆ mouseButtonPress

void Isis::CubeViewport::mouseButtonPress ( QPoint ,
Qt::MouseButton  )
signalinherited

Emitted when mouse button pressed.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseButtonRelease

void Isis::CubeViewport::mouseButtonRelease ( QPoint ,
Qt::MouseButton  )
signalinherited

Emitted when mouse button released.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseDoubleClick

void Isis::CubeViewport::mouseDoubleClick ( QPoint )
signalinherited

Emitted when double click happens.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseEnter

void Isis::CubeViewport::mouseEnter ( )
signalinherited

Emitted when the mouse enters the viewport.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseLeave

void Isis::CubeViewport::mouseLeave ( )
signalinherited

Emitted when the mouse leaves the viewport.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseMove [1/2]

void Isis::CubeViewport::mouseMove ( QPoint )
signalinherited

Emitted when the mouse moves.

Referenced by Isis::CubeViewport::eventFilter().

◆ mouseMove [2/2]

void Isis::CubeViewport::mouseMove ( QPoint ,
Qt::MouseButton  )
signalinherited

Emitted when the mouse moves.

◆ moveCursor()

void Isis::CubeViewport::moveCursor ( int x,
int y )
inherited

Move the cursor by x,y if possible.

Parameters
x
y

Definition at line 1846 of file CubeViewport.cpp.

Referenced by Isis::CubeViewport::keyPressEvent().

◆ onProgressTimer

◆ paintEvent()

void Isis::MdiCubeViewport::paintEvent ( QPaintEvent * e)
virtual

Repaint the viewport.

Parameters
e[in] (QPaintEvent *) event
History
2007-04-30 Tracie Sucharski - Add the QPainter to the call to Tool::paintViewport.

Reimplemented from Isis::CubeViewport.

Definition at line 94 of file MdiCubeViewport.cpp.

◆ paintPixmap() [1/2]

◆ paintPixmap() [2/2]

◆ paintPixmapRects()

void Isis::CubeViewport::paintPixmapRects ( )
privateinherited

◆ pixmap()

QPixmap Isis::CubeViewport::pixmap ( )
inlineinherited

Returns the pixmap.

Returns
QPixmap

Definition at line 401 of file CubeViewport.h.

References Isis::CubeViewport::p_pixmap.

Referenced by Isis::BlinkTool::eventFilter().

◆ progressChanged

void Isis::CubeViewport::progressChanged ( int )
signalinherited

Emitted with current progress (0 to 100) when working.

Referenced by Isis::CubeViewport::enableProgress(), and Isis::CubeViewport::onProgressTimer().

◆ progressComplete

void Isis::CubeViewport::progressComplete ( )
signalinherited

Emitted when the current progress is complete (100)

Referenced by Isis::CubeViewport::onProgressTimer().

◆ projection()

Projection * Isis::CubeViewport::projection ( ) const
inlineinherited
Returns
The projection associated with cube (NULL implies none)

Definition at line 343 of file CubeViewport.h.

References Isis::CubeViewport::p_projection.

◆ redBand()

int Isis::CubeViewport::redBand ( ) const
inlineinherited

◆ redBuffer()

ViewportBuffer * Isis::CubeViewport::redBuffer ( )
inlineinherited

Returns the red viewport buffer (Will be NULL if in Gray mode.)

Returns
ViewportBuffer*

Definition at line 421 of file CubeViewport.h.

References Isis::CubeViewport::p_redBuffer.

◆ redPixel()

double Isis::CubeViewport::redPixel ( int sample,
int line )
inherited

Gets the red pixel.

Return the red pixel value at a sample/line.

Parameters
sampleThe sample
lineThe line
Returns
The redPixel value
Parameters
sample
line
Returns
double

Definition at line 1605 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::band, Isis::CubeViewport::p_cube, Isis::CubeViewport::p_pntBrick, Isis::CubeViewport::p_red, Isis::Cube::read(), and Isis::Brick::SetBasePosition().

◆ redStretch()

CubeStretch Isis::CubeViewport::redStretch ( ) const
inherited

Return the red band stretch.

Returns
The red Stretch

Definition at line 1667 of file CubeViewport.cpp.

References Isis::CubeViewport::BandInfo::getStretch(), and Isis::CubeViewport::p_red.

Referenced by Isis::CubeViewport::paintPixmap().

◆ registerTool()

void Isis::MdiCubeViewport::registerTool ( Tool * tool)

Registers the tool given tool.

Parameters
tool

Definition at line 47 of file MdiCubeViewport.cpp.

Referenced by Isis::Tool::registerTool().

◆ resizeEvent()

◆ restretch()

void Isis::MdiCubeViewport::restretch ( ViewportBuffer * buffer)
virtual

This is called by internal viewport buffers when a stretch action should be performed.

The buffer passes itself as the argument.

Parameters
buffer

Implements Isis::CubeViewport.

Definition at line 126 of file MdiCubeViewport.cpp.

◆ saveChanges

void Isis::CubeViewport::saveChanges ( CubeViewport * )
signalinherited

Emitted when changes should be saved.

Referenced by Isis::CubeViewport::confirmClose().

◆ scale()

◆ scaleChanged

void Isis::CubeViewport::scaleChanged ( )
signalinherited

Emitted when zoom factor changed just before the repaint event.

Referenced by Isis::CubeViewport::setScale(), and Isis::CubeViewport::updateScrollBars().

◆ screenPixelsChanged

void Isis::CubeViewport::screenPixelsChanged ( )
signalinherited

◆ scrollBy

void Isis::CubeViewport::scrollBy ( int dx,
int dy )
slotinherited

Move the scrollbars by dx/dy screen pixels.

Parameters
dx
dy

Definition at line 868 of file CubeViewport.cpp.

References Isis::CubeViewport::scrollContentsBy(), and Isis::CubeViewport::updateScrollBars().

◆ scrollContentsBy()

◆ setAllBandStretches()

void Isis::CubeViewport::setAllBandStretches ( Stretch stretch)
inherited

Sets a stretch for all bands.

Parameters
stretch

Definition at line 1982 of file CubeViewport.cpp.

References Isis::CubeViewport::p_knownStretches.

◆ setBackground()

void Isis::CubeViewport::setBackground ( QColor color)
inlineinherited

Sets the background color.

Parameters
color

Definition at line 373 of file CubeViewport.h.

References Isis::CubeViewport::p_bgColor.

◆ setCaption()

◆ setComboCount()

void Isis::CubeViewport::setComboCount ( int count)
inlineinherited

Sets the band bin combo box count.

Parameters
count

Definition at line 382 of file CubeViewport.h.

References Isis::CubeViewport::p_comboCount.

◆ setComboIndex()

void Isis::CubeViewport::setComboIndex ( int index)
inlineinherited

Sets the band bin combo box index.

Parameters
index

Definition at line 391 of file CubeViewport.h.

References Isis::CubeViewport::p_comboIndex.

◆ setCube()

void Isis::CubeViewport::setCube ( Cube * cube)
inherited

This method sets the viewports cube.

Parameters
cubeThe cube to set the CubeViewport window to
cube

Definition at line 425 of file CubeViewport.cpp.

References Isis::CubeViewport::cube(), Isis::CubeViewport::p_cube, and Isis::CubeViewport::setCaption().

◆ setCursorPosition()

void Isis::CubeViewport::setCursorPosition ( int x,
int y )
inherited

Set the cursor position to x/y in the viewport.

Parameters
x
y

Definition at line 1873 of file CubeViewport.cpp.

◆ setLinked

void Isis::MdiCubeViewport::setLinked ( bool b)
slot

Change the linked state of the viewport.

Parameters
b

Definition at line 58 of file MdiCubeViewport.cpp.

References Isis::FileName::expanded().

Referenced by Isis::FindTool::handleLinkClicked(), Isis::WindowTool::linkWindows(), Isis::BlinkTool::toggleLink(), and Isis::WindowTool::unlinkWindows().

◆ setScale [1/3]

◆ setScale [2/3]

◆ setScale [3/3]

void Isis::CubeViewport::setScale ( double scale,
int x,
int y )
slotinherited

Change the scale of the cube after moving x,y to the center.

Parameters
scale
x
y

Definition at line 654 of file CubeViewport.cpp.

References Isis::CubeViewport::scale(), Isis::CubeViewport::setScale(), and Isis::CubeViewport::viewportToCube().

◆ setTrackingCube()

void Isis::CubeViewport::setTrackingCube ( )
inherited

Finds the Tracking group from p_cube and stores the tracking cube name so that we can grab it in AdvancedTrackTool and get mosaic information.

This way, we are not opening the tracking cube every time the cursor is moved.

Definition at line 2374 of file CubeViewport.cpp.

References Isis::Cube::fileName(), Isis::Cube::group(), Isis::CubeViewport::p_cube, and Isis::CubeViewport::trackingCube().

Referenced by Isis::CubeViewport::CubeViewport().

◆ shiftPixmap()

void Isis::CubeViewport::shiftPixmap ( int dx,
int dy )
privateinherited

Shifts the pixels on the pixmap without reading new data.

Parameters
dx
dy

Definition at line 1291 of file CubeViewport.cpp.

References Isis::CubeViewport::p_bgColor, Isis::CubeViewport::p_paintPixmap, Isis::CubeViewport::p_pixmap, and Isis::CubeViewport::paintPixmap().

Referenced by Isis::CubeViewport::center(), and Isis::CubeViewport::scrollContentsBy().

◆ showEvent

void Isis::CubeViewport::showEvent ( QShowEvent * event)
slotinherited

◆ sizeHint

QSize Isis::CubeViewport::sizeHint ( ) const
slotinherited

Make viewports show up as 512 by 512.

Returns
QSize

Definition at line 570 of file CubeViewport.cpp.

◆ stretchBlue [1/2]

void Isis::CubeViewport::stretchBlue ( const QString & string)
slotinherited

Apply stretch pairs to blue bands.

Parameters
string

Definition at line 2142 of file CubeViewport.cpp.

References Isis::Stretch::Parse(), and Isis::CubeViewport::stretchBlue().

Referenced by Isis::CubeViewport::stretchBlue(), and Isis::CubeViewport::stretchKnownGlobal().

◆ stretchBlue [2/2]

void Isis::CubeViewport::stretchBlue ( const Stretch & stretch)
slotinherited

◆ stretchGray [1/2]

void Isis::CubeViewport::stretchGray ( const QString & string)
slotinherited

Apply stretch pairs to gray band.

Parameters
string

Definition at line 2106 of file CubeViewport.cpp.

References Isis::Stretch::Parse(), and Isis::CubeViewport::stretchGray().

Referenced by Isis::CubeViewport::stretchGray(), Isis::CubeViewport::stretchKnownGlobal(), and Isis::CubeViewport::viewGray().

◆ stretchGray [2/2]

◆ stretchGreen [1/2]

void Isis::CubeViewport::stretchGreen ( const QString & string)
slotinherited

Apply stretch pairs to green bands.

Parameters
stringthe stretch

Definition at line 2130 of file CubeViewport.cpp.

References Isis::Stretch::Parse(), and Isis::CubeViewport::stretchGreen().

Referenced by Isis::CubeViewport::stretchGreen(), and Isis::CubeViewport::stretchKnownGlobal().

◆ stretchGreen [2/2]

void Isis::CubeViewport::stretchGreen ( const Stretch & stretch)
slotinherited

◆ stretchKnownGlobal

◆ stretchRed [1/2]

void Isis::CubeViewport::stretchRed ( const QString & string)
slotinherited

Apply stretch pairs to red bands.

Parameters
stringThe stretch

Definition at line 2118 of file CubeViewport.cpp.

References Isis::Stretch::Parse(), and Isis::CubeViewport::stretchRed().

Referenced by Isis::CubeViewport::stretchKnownGlobal(), and Isis::CubeViewport::stretchRed().

◆ stretchRed [2/2]

void Isis::CubeViewport::stretchRed ( const Stretch & stretch)
slotinherited

◆ trackingCube()

Cube * Isis::CubeViewport::trackingCube ( ) const
inlineinherited
Returns
The tracking cube associated with p_cube (if it has one)

Definition at line 358 of file CubeViewport.h.

Referenced by Isis::CubeViewport::setTrackingCube().

◆ universalGroundMap()

UniversalGroundMap * Isis::CubeViewport::universalGroundMap ( ) const
inlineinherited
Returns
the universal ground map associated with the cube (NULL implies none)

Definition at line 353 of file CubeViewport.h.

References Isis::CubeViewport::p_groundMap.

Referenced by Isis::FindTool::centerLinkedViewports(), Isis::FindTool::distancePerPixel(), and Isis::FindTool::handleLinkClicked().

◆ updateScrollBars()

void Isis::CubeViewport::updateScrollBars ( int x,
int y )
privateinherited

◆ updateWhatsThis()

◆ viewGray

void Isis::MdiCubeViewport::viewGray ( int band)
slot

Definition at line 110 of file MdiCubeViewport.cpp.

◆ viewportClosed

void Isis::CubeViewport::viewportClosed ( CubeViewport * )
signalinherited

Emitted when viewport is closed.

◆ viewportToCube()

void Isis::CubeViewport::viewportToCube ( int x,
int y,
double & sample,
double & line ) const
inherited

◆ viewportUpdated

void Isis::CubeViewport::viewportUpdated ( )
signalinherited

Emitted when viewport updated.

◆ viewRGB

void Isis::MdiCubeViewport::viewRGB ( int red,
int green,
int blue )
slot

Definition at line 118 of file MdiCubeViewport.cpp.

◆ windowTitleChanged

void Isis::CubeViewport::windowTitleChanged ( )
signalinherited

Emitted when window title changes.

Referenced by Isis::CubeViewport::setCaption().

Member Data Documentation

◆ p_bgColor

QColor Isis::CubeViewport::p_bgColor
privateinherited

The color to paint the background of the viewport.

Definition at line 625 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), Isis::CubeViewport::paintPixmap(), Isis::CubeViewport::setBackground(), and Isis::CubeViewport::shiftPixmap().

◆ p_bluBrick

Brick* Isis::CubeViewport::p_bluBrick
privateinherited

Bricks for every color.

Definition at line 649 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::~CubeViewport().

◆ p_blue

◆ p_blueBuffer

◆ p_camera

Camera* Isis::CubeViewport::p_camera
privateinherited

◆ p_color

◆ p_comboCount

int Isis::CubeViewport::p_comboCount
privateinherited

Number of elements in band bin combo box.

Definition at line 644 of file CubeViewport.h.

Referenced by Isis::CubeViewport::comboCount(), Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::setComboCount().

◆ p_comboIndex

int Isis::CubeViewport::p_comboIndex
privateinherited

Current element chosen from combo box.

Definition at line 645 of file CubeViewport.h.

Referenced by Isis::CubeViewport::comboIndex(), Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::setComboIndex().

◆ p_cube

◆ p_cubeData

CubeDataThread* Isis::CubeViewport::p_cubeData
privateinherited

◆ p_cubeId

int Isis::CubeViewport::p_cubeId
privateinherited

◆ p_cubeShown

bool Isis::CubeViewport::p_cubeShown
privateinherited

Is the cube visible?

Definition at line 653 of file CubeViewport.h.

Referenced by Isis::CubeViewport::cubeShown(), Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::paintEvent().

◆ p_cubeWhatsThisText

QString Isis::CubeViewport::p_cubeWhatsThisText
privateinherited

The text for the cube's What's this.

Definition at line 659 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::updateWhatsThis().

◆ p_globalStretches

◆ p_gray

◆ p_grayBuffer

◆ p_green

◆ p_greenBuffer

◆ p_grnBrick

Brick* Isis::CubeViewport::p_grnBrick
privateinherited

Bricks for every color.

Definition at line 648 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::~CubeViewport().

◆ p_groundMap

UniversalGroundMap* Isis::CubeViewport::p_groundMap
privateinherited

The universal ground map from the cube.

Definition at line 630 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), Isis::CubeViewport::universalGroundMap(), and Isis::CubeViewport::~CubeViewport().

◆ p_gryBrick

Brick* Isis::CubeViewport::p_gryBrick
privateinherited

Bricks for every color.

Definition at line 650 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::~CubeViewport().

◆ p_image

QImage* Isis::CubeViewport::p_image
privateinherited

◆ p_knownStretches

QVector< Stretch * >* Isis::CubeViewport::p_knownStretches
protectedinherited

◆ p_linked

bool Isis::MdiCubeViewport::p_linked
private

Definition at line 71 of file MdiCubeViewport.h.

◆ p_paintPixmap

◆ p_pixmap

QPixmap Isis::CubeViewport::p_pixmap
protectedinherited

◆ p_pixmapPaintRects

QList< QRect * >* Isis::CubeViewport::p_pixmapPaintRects
privateinherited

◆ p_pntBrick

◆ p_progressTimer

QTimer* Isis::CubeViewport::p_progressTimer
privateinherited

◆ p_projection

Projection* Isis::CubeViewport::p_projection
privateinherited

The projection from the cube.

Definition at line 629 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::projection().

◆ p_red

◆ p_redBrick

Brick* Isis::CubeViewport::p_redBrick
privateinherited

Bricks for every color.

Definition at line 647 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::~CubeViewport().

◆ p_redBuffer

◆ p_saveEnabled

bool Isis::CubeViewport::p_saveEnabled
privateinherited

◆ p_scale

◆ p_thisOwnsCubeData

bool Isis::CubeViewport::p_thisOwnsCubeData
privateinherited

if true then this owns the CubeDataThread, and should thus delete it

Definition at line 673 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::~CubeViewport().

◆ p_toolList

QList<Tool *> Isis::MdiCubeViewport::p_toolList
private

Definition at line 72 of file MdiCubeViewport.h.

◆ p_trackingCube

Cube* Isis::CubeViewport::p_trackingCube
privateinherited

Definition at line 631 of file CubeViewport.h.

◆ p_updatingBuffers

◆ p_viewportWhatsThisText

QString Isis::CubeViewport::p_viewportWhatsThisText
privateinherited

The text for the viewport's what's this.

Definition at line 660 of file CubeViewport.h.

Referenced by Isis::CubeViewport::resizeEvent(), and Isis::CubeViewport::updateWhatsThis().

◆ p_whatsThisText

QString Isis::CubeViewport::p_whatsThisText
privateinherited

The text for What's this.

Definition at line 658 of file CubeViewport.h.

Referenced by Isis::CubeViewport::CubeViewport(), and Isis::CubeViewport::updateWhatsThis().


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