Isis 3.0 Object Programmers' Reference |
Home |
Widget to display Isis cubes for qt apps. More...
#include <CubeViewport.h>
Classes | |
class | BandInfo |
Public Slots | |
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. | |
virtual void | viewRGB (int redBand, int greenBand, int blueBand) |
View cube as color. | |
virtual void | viewGray (int band) |
View cube as gray. | |
void | stretchGray (const QString &string) |
Apply stretch pairs to gray band. | |
void | stretchRed (const QString &string) |
Apply stretch pairs to red bands. | |
void | stretchGreen (const QString &string) |
Apply stretch pairs to green bands. | |
void | stretchBlue (const QString &string) |
Apply stretch pairs to blue bands. | |
void | stretchGray (const Stretch &stretch) |
Sets the stretch for gray mode. | |
void | stretchRed (const Stretch &stretch) |
Sets the stretch for red in rgb mode. | |
void | stretchGreen (const Stretch &stretch) |
Sets the stretch for green in rgb mode. | |
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 | 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 | doneWithData (int, const Isis::Brick *) |
Emitted when a brick is no longer needed, should only be sent to cube data thread. | |
Public Member Functions | |
CubeViewport (Cube *cube, CubeDataThread *cdt=0, QWidget *parent=0) | |
Construct a cube viewport. | |
virtual | ~CubeViewport () |
Destructor. | |
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 |
Is the viewport shown in 3-band color. | |
bool | isGray () const |
Is the viewport shown in gray / b&w. | |
int | grayBand () const |
Return the gray band currently viewed. | |
int | redBand () const |
Return the red band currently viewed. | |
int | greenBand () const |
Return the green band currently viewed. | |
int | blueBand () const |
Return the blue band currently viewed. | |
double | scale () const |
Return the scale. | |
bool | cubeShown () const |
Return if the cube is visible. | |
int | comboCount () const |
Return the BandBin combo box count. | |
int | comboIndex () const |
Return the BandBin combo box index. | |
void | cubeContentsChanged (QRect rect) |
Cube changed, repaint given area. | |
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 |
Convert a viewport x/y to a cube sample/line (may be outside the cube) | |
void | cubeToViewport (double sample, double line, int &x, int &y) const |
Convert a cube sample/line to a viewport x/y (may be outside the viewport) | |
void | contentsToCube (int x, int y, double &sample, double &line) const |
Convert a contents x/y to a cube sample/line (may be outside the cube) | |
void | cubeToContents (double sample, double line, int &x, int &y) const |
Convert a cube sample/line to a contents x/y (should not be outside) | |
double | redPixel (int sample, int line) |
Return the red pixel value at a sample/line. | |
double | greenPixel (int sample, int line) |
Return the green pixel value at a sample/line. | |
double | bluePixel (int sample, int line) |
Return the blue pixel value at a sample/line. | |
double | grayPixel (int sample, int line) |
Return the gray pixel value at a sample/line. | |
Stretch | grayStretch () const |
Return the gray band stretch. | |
Stretch | redStretch () const |
Return the red band stretch. | |
Stretch | greenStretch () const |
Return the green band stretch. | |
Stretch | blueStretch () const |
Return the blue band stretch. | |
Cube * | cube () const |
Return the cube associated with viewport. | |
Projection * | projection () const |
Return the projection associated with cube (NULL implies none) | |
Camera * | camera () const |
Return the camera associated with the cube (NULL implies none) | |
UniversalGroundMap * | universalGroundMap () const |
Return the universal ground map associated with the cube (NULL implies none) | |
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. | |
ViewportBuffer * | grayBuffer () |
Returns the gray viewport buffer (Will be NULL if in RGB mode.) | |
ViewportBuffer * | redBuffer () |
Returns the red viewport buffer (Will be NULL if in Gray mode.) | |
ViewportBuffer * | greenBuffer () |
Returns the green viewport buffer (Will be NULL if in Gray mode.) | |
ViewportBuffer * | blueBuffer () |
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. | |
virtual void | restretch (ViewportBuffer *buffer)=0 |
This is called by internal viewport buffers when a stretch action should be performed. | |
void | paintPixmap () |
Paint the whole pixmap. | |
void | forgetStretches () |
Resets all remembered stretches. | |
void | setAllBandStretches (Stretch stretch) |
Sets a stretch for all bands. | |
CubeDataThread * | cubeDataThread () |
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. | |
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. | |
virtual void | paintEvent (QPaintEvent *e) |
Repaint the viewport. | |
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 | |
ViewportBuffer * | p_grayBuffer |
Viewport Buffer to manage gray band. | |
ViewportBuffer * | p_redBuffer |
Viewport Buffer to manage red band. | |
ViewportBuffer * | p_greenBuffer |
Viewport Buffer to manage green band. | |
ViewportBuffer * | p_blueBuffer |
Viewport Buffer to manage blue band. | |
QColor | p_bgColor |
The color to paint the background of the viewport. | |
Cube * | p_cube |
The cube associated with the viewport. | |
Camera * | p_camera |
The camera from the cube. | |
Projection * | p_projection |
The projection from the cube. | |
UniversalGroundMap * | p_groundMap |
The universal ground map from the cube. | |
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. | |
Brick * | p_redBrick |
Bricks for every color. | |
Brick * | p_grnBrick |
Bricks for every color. | |
Brick * | p_bluBrick |
Bricks for every color. | |
Brick * | p_gryBrick |
Bricks for every color. | |
Brick * | p_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. | |
CubeDataThread * | p_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 | |
Widget to display Isis cubes for qt apps.
2007-01-30 Tracie Sucharski, Add information message if spice not found.
2007-02-07 Tracie Sucharski, Remove error message, decided it was more of a hassle to click ok when displaying many images without spice.
2007-03-20 Tracie Sucharski, Add fitScaleMinDimension, fitScaleWidth and fitScaleHeight methods. Change cursor to wait cursor in paintPixmap.
2007-04-13 Tracie Sucharski, Remove fitScaleMinDimension, turns out it was not needed.
2007-09-11 Steven Lambright, Added double click signal
2007-12-11 Steven Lambright, Added 1x1xn cube auto stretch support
2008-06-19 Noah Hilt, Added a close event for saving and discarding changes and a method to set the cube.
2008-12-04 Jeannie Walldren, Fixed a bug in computeStretch() method for comparing precision difference on 32 bit Linux system. Added try/catch in showCube() to set p_cubeShown = false if this fails.
2009-03-09 Steven Lambright - Changed the way we do floating point math in autoStretch to work better in order to allow more cubes to open.
2009-03-27 Noah Hilt/Steven Lambright - Removed old rubber band methods and variables. Added new ViewportBuffer to read and store visible dn values in the viewport.
2009-10-23 Steven Lambright - Camera::SetBand is now called when switching the band being shown.
2010-04-08 Steven Lambright and Eric Hyer - Now supports ViewportBuffer using threaded cube I/O
2010-04-30 Steven Lambright - Bug fixes and better support for threaded cube I/O
2010-05-20 Steven Lambright - Added memory of global stretches
2010-05-24 Eric Hyer - Fixed bug where QPainter construction was being attempted with a potentially null pixmap
2010-06-26 Eric Hyer - Moved MDI specific code to new child class called MdiCubeViewport. Fixed many include mistakes.
2010-07-12 Jeannie Walldren - Changed setScale() method's maximum value from hard-coded 16 to the max of the viewport width and height. Added setScale() minimum value of 1/min(samps,lines). Added exceptions to ViewportBuffer to help track errors.
2010-11-08 Eric Hyer - Added better mouseMove signal
2010-12-01 Steven Lambright - The initial scale now uses fitScale so that it is consistent with the zoom tool.
2011-03-30 Sharmila Prasad - Set the frame shadow and style to remove border around the image
2011-03-31 Sharmila Prasad - Added band info to "whatsthis" API to store the whatsthis info in a PVL format
2011-04-25 Steven Lambright - Fixed "center" and added more safety checks.
2012-03-22 Steven Lambright and Jai Rideout - Fixed bug where screenPixelsChanged was not correctly emitted on resize.
2012-05-29 Steven Lambright - Changed destructor to clean up the cube when necessary.
2012-06-28 Steven Lambright - Stretching gray no longer removes stretch special pixel values from the RGB stretches. References #684.
2012-07-27 Tracie Sucharski - Added viewportClosed signal so that tools can respond to the user closing a viewport rather than when the application exits.
2013-11-04 Janet Barrett - Added the p_comboCount and p_comboIndex variables to store the current state of the band bin combo box. Also added comboCount(), comboIndex(), setComboCount(), and setComboIndex() accessors and setters to allow the BandTool class to retain the settings for each cube viewport. Fixes #1612.
Definition at line 121 of file CubeViewport.h.
Isis::CubeViewport::CubeViewport | ( | Cube * | cube, |
CubeDataThread * | cubeData = 0 , |
||
QWidget * | parent = 0 |
||
) |
Construct a cube viewport.
cube | |
parent |
Definition at line 69 of file CubeViewport.cpp.
References _FILEINFO_, Isis::CubeDataThread::AddChangeListener(), Isis::CubeDataThread::AddCube(), Isis::Cube::bandCount(), Isis::UniversalGroundMap::Camera(), cube(), cubeDataChanged(), doneWithData(), Isis::Cube::fileName(), Isis::CubeDataThread::FindCubeId(), Isis::Camera::HasProjection(), Isis::Cube::isOpen(), Isis::Cube::lineCount(), onProgressTimer(), p_bgColor, p_bluBrick, p_blueBuffer, p_camera, p_color, p_comboCount, p_comboIndex, p_cube, p_cubeData, p_cubeId, p_cubeShown, p_cubeWhatsThisText, p_globalStretches, p_grayBuffer, p_greenBuffer, p_grnBrick, p_groundMap, p_gryBrick, p_image, p_knownStretches, p_paintPixmap, p_pixmapPaintRects, p_pntBrick, p_progressTimer, p_projection, p_redBrick, p_redBuffer, p_saveEnabled, p_scale, p_thisOwnsCubeData, p_updatingBuffers, p_whatsThisText, Isis::Cube::pixelType(), Isis::IException::Programmer, Isis::UniversalGroundMap::Projection(), Isis::Cube::projection(), Isis::Cube::sampleCount(), and setCaption().
|
virtual |
Destructor.
Definition at line 305 of file CubeViewport.cpp.
References p_bluBrick, p_blueBuffer, p_cube, p_cubeData, p_globalStretches, p_grayBuffer, p_greenBuffer, p_grnBrick, p_groundMap, p_gryBrick, p_image, p_knownStretches, p_pixmapPaintRects, p_pntBrick, p_progressTimer, p_redBrick, p_redBuffer, p_thisOwnsCubeData, and Isis::CubeDataThread::RemoveChangeListener().
|
inline |
Return the blue band currently viewed.
Definition at line 178 of file CubeViewport.h.
References p_blue.
Referenced by Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::StretchTool::stretchBand(), stretchBlue(), stretchKnownGlobal(), and Isis::BandTool::updateTool().
|
inline |
Returns the blue viewport buffer (Will be NULL if in Gray mode.)
Definition at line 326 of file CubeViewport.h.
References p_blueBuffer.
Referenced by Isis::StretchTool::setCubeViewport(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), and Isis::TrackTool::updateLabels().
double Isis::CubeViewport::bluePixel | ( | int | sample, |
int | line | ||
) |
Return the blue pixel value at a sample/line.
sample | |
line |
Definition at line 1630 of file CubeViewport.cpp.
References p_blue, p_cube, p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().
Stretch Isis::CubeViewport::blueStretch | ( | ) | const |
Return the blue band stretch.
Definition at line 1672 of file CubeViewport.cpp.
References p_blue.
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchBand(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), and Isis::AdvancedStretchDialog::updateStretch().
void Isis::CubeViewport::bufferUpdated | ( | QRect | rect | ) |
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.
rect | Area to update screen |
Definition at line 1104 of file CubeViewport.cpp.
References p_blueBuffer, p_grayBuffer, p_greenBuffer, p_redBuffer, paintPixmap(), and Isis::ViewportBuffer::working().
|
inline |
Return the camera associated with the cube (NULL implies none)
Definition at line 238 of file CubeViewport.h.
References p_camera.
Referenced by Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::MeasureTool::rubberBandComplete(), Isis::MeasureTool::updateDist(), Isis::TrackTool::updateLabels(), Isis::AdvancedTrackTool::updateRow(), and Isis::FindTool::updateTool().
|
slot |
Bring the cube pixel under viewport x/y to the center.
x | |
y |
Definition at line 726 of file CubeViewport.cpp.
References viewportToCube().
Referenced by setScale().
|
slot |
Bring the cube sample/line the center.
sample | |
line |
Definition at line 740 of file CubeViewport.cpp.
References cubeToContents(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_redBuffer, p_updatingBuffers, paintPixmapRects(), Isis::ViewportBuffer::pan(), screenPixelsChanged(), shiftPixmap(), and updateScrollBars().
|
slot |
Allows users to change the cursor type on the viewport.
cursor |
Definition at line 2353 of file CubeViewport.cpp.
|
inline |
Return the BandBin combo box count.
Definition at line 193 of file CubeViewport.h.
References p_comboCount.
Referenced by Isis::BandTool::setBandBin().
|
inline |
Return the BandBin combo box index.
Definition at line 198 of file CubeViewport.h.
References p_comboIndex.
Referenced by Isis::BandTool::setBandBin().
bool Isis::CubeViewport::confirmClose | ( | ) |
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.
Definition at line 520 of file CubeViewport.cpp.
References cube(), discardChanges(), p_saveEnabled, and saveChanges().
void Isis::CubeViewport::contentsToCube | ( | int | x, |
int | y, | ||
double & | sample, | ||
double & | line | ||
) | const |
Convert a contents x/y to a cube sample/line (may be outside the cube)
x | |
y | |
sample | |
line |
Definition at line 798 of file CubeViewport.cpp.
References p_scale.
Referenced by setScale(), and viewportToCube().
|
inline |
Return the cube associated with viewport.
Definition at line 228 of file CubeViewport.h.
References p_cube.
Referenced by confirmClose(), Isis::MatchTool::createPoint(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), Isis::QnetTool::drawAllMeasurments(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::FeatureNomenclatureTool::featuresForViewportFound(), Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::SpectralPlotTool::getSpectralStatistics(), Isis::StatisticsTool::getStatistics(), Isis::ScatterPlotWindow::isXCube(), Isis::ScatterPlotWindow::isYCube(), Isis::SunShadowTool::mouseButtonPress(), Isis::EditTool::mouseButtonRelease(), Isis::MatchTool::mouseButtonRelease(), Isis::QnetTool::mouseButtonRelease(), Isis::QnetTool::openGround(), Isis::CubePlotCurve::paint(), Isis::StereoTool::paintViewport(), Isis::SunShadowTool::recalculateShadowHeight(), Isis::EditTool::redoEdit(), Isis::HistogramTool::refreshPlot(), Isis::ScatterPlotConfigDialog::refreshWidgetStates(), Isis::AbstractPlotTool::repaintViewports(), Isis::EditTool::rubberBandComplete(), Isis::FileTool::save(), Isis::FileTool::saveAsCubeByOption(), Isis::FileTool::saveAsReducedCube(), Isis::ScatterPlotConfigDialog::ScatterPlotConfigDialog(), Isis::MatchTool::serialNumberList(), setCube(), Isis::StretchTool::stretchBand(), Isis::AdvancedTrackTool::TrackMosaicOrigin(), Isis::EditTool::undoAll(), Isis::EditTool::undoEdit(), Isis::MeasureTool::updateDist(), Isis::AdvancedTrackTool::updateRow(), Isis::BandTool::updateTool(), Isis::SunShadowTool::updateTool(), Isis::SpectralPlotTool::updateTool(), Isis::EditTool::writeToCube(), Isis::ScatterPlotConfigDialog::xAxisCubeViewport(), and Isis::ScatterPlotConfigDialog::yAxisCubeViewport().
int Isis::CubeViewport::cubeBands | ( | ) | const |
Return the number of bands in the cube.
Definition at line 440 of file CubeViewport.cpp.
References Isis::Cube::bandCount(), and p_cube.
Referenced by Isis::BandTool::copyAllViewports(), and Isis::BandTool::copyLinkedViewports().
|
slot |
This method is called when the cube has changed or changes have been finalized.
changed |
Definition at line 556 of file CubeViewport.cpp.
References p_saveEnabled.
Referenced by Isis::EditTool::redoEdit(), Isis::EditTool::save(), Isis::EditTool::undoEdit(), and Isis::EditTool::writeToCube().
void Isis::CubeViewport::cubeContentsChanged | ( | QRect | cubeRect | ) |
Cube changed, repaint given area.
[in] | cubeRect | (QRect rect) Rectange containing portion of cube (sample/line) that changed. |
Definition at line 2289 of file CubeViewport.cpp.
References cube(), cubeToViewport(), Isis::ViewportBuffer::fillBuffer(), Isis::Cube::lineCount(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_redBuffer, p_updatingBuffers, paintPixmapRects(), and Isis::Cube::sampleCount().
Referenced by Isis::EditTool::redoEdit(), Isis::EditTool::undoEdit(), and Isis::EditTool::writeToCube().
|
protectedvirtualslot |
This method updates the internal viewport buffer based on changes in cube DN values.
cubeId | Cube that the changed brick belongs to |
data | New data |
Definition at line 452 of file CubeViewport.cpp.
References cube(), cubeToViewport(), doneWithData(), Isis::ViewportBuffer::fillBuffer(), Isis::Buffer::Line(), Isis::Cube::lineCount(), Isis::Buffer::LineDimension(), p_blueBuffer, p_cubeId, p_grayBuffer, p_greenBuffer, p_redBuffer, p_updatingBuffers, paintPixmapRects(), Isis::Buffer::Sample(), Isis::Cube::sampleCount(), and Isis::Buffer::SampleDimension().
Referenced by CubeViewport().
|
inline |
Definition at line 358 of file CubeViewport.h.
References p_cubeData.
|
inline |
Definition at line 365 of file CubeViewport.h.
References p_cubeId.
int Isis::CubeViewport::cubeLines | ( | ) | const |
Return the number of lines in the cube.
Definition at line 434 of file CubeViewport.cpp.
References Isis::Cube::lineCount(), and p_cube.
Referenced by fitScale(), fitScaleHeight(), getCubeArea(), Isis::StatisticsTool::getStatistics(), Isis::EditTool::LineToPoints(), Isis::EditTool::mouseButtonRelease(), Isis::EditTool::rubberBandComplete(), setScale(), showEvent(), Isis::TrackTool::updateLabels(), Isis::AdvancedTrackTool::updateRow(), updateScrollBars(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), and Isis::ZoomTool::zoomFitWidth().
int Isis::CubeViewport::cubeSamples | ( | ) | const |
Return the number of samples in the cube.
Definition at line 428 of file CubeViewport.cpp.
References p_cube, and Isis::Cube::sampleCount().
Referenced by fitScale(), fitScaleWidth(), getCubeArea(), Isis::StatisticsTool::getStatistics(), Isis::EditTool::mouseButtonRelease(), Isis::EditTool::rubberBandComplete(), setScale(), showEvent(), Isis::TrackTool::updateLabels(), Isis::AdvancedTrackTool::updateRow(), updateScrollBars(), Isis::ZoomTool::zoomFit(), Isis::ZoomTool::zoomFitHeight(), and Isis::ZoomTool::zoomFitWidth().
|
inline |
Return if the cube is visible.
Definition at line 188 of file CubeViewport.h.
References p_cubeShown.
void Isis::CubeViewport::cubeToContents | ( | double | sample, |
double | line, | ||
int & | x, | ||
int & | y | ||
) | const |
Convert a cube sample/line to a contents x/y (should not be outside)
sample | |
line | |
x | |
y |
Definition at line 835 of file CubeViewport.cpp.
References p_scale.
Referenced by center(), cubeToViewport(), and setScale().
void Isis::CubeViewport::cubeToViewport | ( | double | sample, |
double | line, | ||
int & | x, | ||
int & | y | ||
) | const |
Convert a cube sample/line to a viewport x/y (may be outside the viewport)
sample | |
line | |
x | |
y |
Definition at line 852 of file CubeViewport.cpp.
References cubeToContents().
Referenced by cubeContentsChanged(), cubeDataChanged(), Isis::MatchTool::drawAllMeasurments(), Isis::QnetTool::drawAllMeasurments(), Isis::QnetTool::drawGroundMeasures(), Isis::FindTool::handleRecordClicked(), Isis::CubePlotCurve::paint(), Isis::SunShadowTool::paintViewport(), Isis::StereoTool::paintViewport(), Isis::FindTool::paintViewport(), and Isis::HistogramTool::refreshPlot().
bool Isis::CubeViewport::cursorInside | ( | ) | const |
QPoint Isis::CubeViewport::cursorPosition | ( | ) | const |
Return the cursor position in the viewport.
Definition at line 1811 of file CubeViewport.cpp.
|
signal |
Emitted when changes should be discarded.
Referenced by confirmClose().
|
signal |
Emitted when a brick is no longer needed, should only be sent to cube data thread.
Referenced by cubeDataChanged(), and CubeViewport().
|
slot |
This restarts the progress bar.
Does nothing if already loading.
Definition at line 972 of file CubeViewport.cpp.
References p_progressTimer, and progressChanged().
|
protectedvirtual |
Event filter to watch for mouse events on viewport.
o | |
e |
Reimplemented in Isis::IndependentCubeViewport.
Definition at line 1686 of file CubeViewport.cpp.
References mouseButtonPress(), mouseButtonRelease(), mouseDoubleClick(), mouseEnter(), mouseLeave(), and mouseMove().
double Isis::CubeViewport::fitScale | ( | ) | const |
Determine the scale that causes the full cube to fit in the viewport.
Definition at line 2247 of file CubeViewport.cpp.
References cubeLines(), cubeSamples(), and scale().
Referenced by showEvent(), and Isis::ZoomTool::zoomFit().
double Isis::CubeViewport::fitScaleHeight | ( | ) | const |
Determine the scale of cube in heighth to fit in the viewport.
Definition at line 2275 of file CubeViewport.cpp.
References cubeLines(), and scale().
Referenced by Isis::ZoomTool::zoomFitHeight().
double Isis::CubeViewport::fitScaleWidth | ( | ) | const |
Determine the scale of cube in the width to fit in the viewport.
Definition at line 2262 of file CubeViewport.cpp.
References cubeSamples(), and scale().
Referenced by Isis::ZoomTool::zoomFitWidth().
void Isis::CubeViewport::forgetStretches | ( | ) |
Resets all remembered stretches.
Definition at line 1950 of file CubeViewport.cpp.
References p_knownStretches.
Referenced by Isis::StretchTool::stretchGlobalAllBands().
void Isis::CubeViewport::getAllWhatsThisInfo | ( | Pvl & | pWhatsThisPvl | ) |
Get All WhatsThis info - viewport, cube, area in PVL format.
pWhatsThisPvl | - Pvl for all whatsthis info |
pWhatsThisPvl | - Pvl for all whatsthis info |
Definition at line 1364 of file CubeViewport.cpp.
References Isis::Cube::bandCount(), Isis::Cube::fileName(), Isis::ViewportBuffer::getBand(), getBandFilterName(), getCubeArea(), Isis::Cube::lineCount(), p_blueBuffer, p_color, p_cube, p_grayBuffer, p_greenBuffer, p_redBuffer, Isis::Cube::physicalBand(), Isis::Cube::sampleCount(), Isis::PvlKeyword::size(), and Isis::toString().
Referenced by Isis::FileTool::saveInfo().
void Isis::CubeViewport::getBandFilterName | ( | PvlKeyword & | pFilterNameKey | ) |
Get Band Filter name from the Isis cube label.
pFilterNameKey | - FilterName keyword containing the corresponding keyword from the Isis Cube label |
PvlKeyword& | pFilterNameKey - FilterName keyword containing the corresponding keyword from the Isis Cube label |
Definition at line 1466 of file CubeViewport.cpp.
References Isis::PvlObject::findGroup(), Isis::PvlContainer::findKeyword(), Isis::PvlObject::findObject(), Isis::PvlObject::hasGroup(), Isis::PvlContainer::hasKeyword(), Isis::Cube::label(), and p_cube.
Referenced by getAllWhatsThisInfo(), and updateWhatsThis().
void Isis::CubeViewport::getCubeArea | ( | double & | pdStartSample, |
double & | pdEndSample, | ||
double & | pdStartLine, | ||
double & | pdEndLine | ||
) |
Get Cube area corresponding to the viewport's dimension.
pdStartSample | - Cube Start Sample |
pdEndSample | - Cube End Sample |
pdStartLine | - Cube Start Line |
pdEndLine | - Cube End Line |
Definition at line 1487 of file CubeViewport.cpp.
References cubeLines(), cubeSamples(), and viewportToCube().
Referenced by getAllWhatsThisInfo(), and updateWhatsThis().
|
inline |
Return the gray band currently viewed.
Definition at line 163 of file CubeViewport.h.
References p_gray.
Referenced by Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::StatisticsTool::getStatistics(), Isis::ScatterPlotWindow::isXCube(), Isis::ScatterPlotWindow::isYCube(), Isis::EditTool::mouseButtonRelease(), Isis::EditTool::redoEdit(), Isis::HistogramTool::refreshPlot(), Isis::SpatialPlotTool::refreshPlot(), Isis::StretchTool::stretchBand(), stretchGray(), stretchKnownGlobal(), Isis::EditTool::undoEdit(), Isis::AdvancedTrackTool::updateRow(), Isis::BandTool::updateTool(), and Isis::EditTool::writeToCube().
|
inline |
Returns the gray viewport buffer (Will be NULL if in RGB mode.)
Definition at line 296 of file CubeViewport.h.
References p_grayBuffer.
Referenced by Isis::ScatterPlotWindow::paint(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateHistograms(), and Isis::TrackTool::updateLabels().
double Isis::CubeViewport::grayPixel | ( | int | sample, |
int | line | ||
) |
Return the gray pixel value at a sample/line.
sample | |
line |
Definition at line 1646 of file CubeViewport.cpp.
References p_cube, p_gray, p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().
Referenced by Isis::AdvancedTrackTool::updateRow().
Stretch Isis::CubeViewport::grayStretch | ( | ) | const |
Return the gray band stretch.
Definition at line 1654 of file CubeViewport.cpp.
References p_gray.
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchBand(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), and Isis::AdvancedStretchDialog::updateStretch().
|
inline |
Return the green band currently viewed.
Definition at line 173 of file CubeViewport.h.
References p_green.
Referenced by Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::StretchTool::stretchBand(), stretchGreen(), stretchKnownGlobal(), and Isis::BandTool::updateTool().
|
inline |
Returns the green viewport buffer (Will be NULL if in Gray mode.)
Definition at line 316 of file CubeViewport.h.
References p_greenBuffer.
Referenced by Isis::StretchTool::setCubeViewport(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), and Isis::TrackTool::updateLabels().
double Isis::CubeViewport::greenPixel | ( | int | sample, |
int | line | ||
) |
Return the green pixel value at a sample/line.
sample | |
line |
Definition at line 1614 of file CubeViewport.cpp.
References p_cube, p_green, p_pntBrick, Isis::Cube::read(), and Isis::Brick::SetBasePosition().
Stretch Isis::CubeViewport::greenStretch | ( | ) | const |
Return the green band stretch.
Definition at line 1666 of file CubeViewport.cpp.
References p_green.
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchBand(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), and Isis::AdvancedStretchDialog::updateStretch().
|
inline |
Is the viewport shown in 3-band color.
Definition at line 153 of file CubeViewport.h.
References p_color.
Referenced by Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::EditTool::mouseButtonRelease(), and Isis::EditTool::rubberBandComplete().
|
inline |
Is the viewport shown in gray / b&w.
Definition at line 158 of file CubeViewport.h.
References p_color.
Referenced by Isis::StretchTool::changeStretch(), Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::ScatterPlotWindow::isXCube(), Isis::ScatterPlotWindow::isYCube(), Isis::SpatialPlotTool::refreshPlot(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchChanged(), stretchKnownGlobal(), Isis::StretchTool::stretchRect(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), Isis::TrackTool::updateLabels(), Isis::AdvancedTrackTool::updateRow(), Isis::BandTool::updateTool(), and Isis::StretchTool::updateTool().
|
protectedvirtual |
Process arrow keystrokes on cube.
e |
Definition at line 1747 of file CubeViewport.cpp.
References moveCursor(), p_scale, scale(), and setScale().
|
signal |
Emitted when mouse button pressed.
Referenced by eventFilter().
|
signal |
Emitted when mouse button released.
Referenced by eventFilter().
|
signal |
Emitted when double click happens.
Referenced by eventFilter().
|
signal |
Emitted when the mouse enters the viewport.
Referenced by eventFilter().
|
signal |
Emitted when the mouse leaves the viewport.
Referenced by eventFilter().
|
signal |
Emitted when the mouse moves.
Referenced by eventFilter().
|
signal |
Emitted when the mouse moves.
void Isis::CubeViewport::moveCursor | ( | int | x, |
int | y | ||
) |
Move the cursor by x,y if possible.
x | |
y |
Definition at line 1824 of file CubeViewport.cpp.
Referenced by keyPressEvent().
|
slot |
This updates the progress bar visually.
Conceptually it emits the progressChanged signal with the current progress.
Definition at line 262 of file CubeViewport.cpp.
References Isis::ViewportBuffer::currentProgress(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_progressTimer, p_redBuffer, progressChanged(), screenPixelsChanged(), and Isis::ViewportBuffer::working().
Referenced by CubeViewport().
|
protectedvirtual |
Repaint the viewport.
e | [in] (QPaintEvent *) event |
Reimplemented in Isis::IndependentCubeViewport, and Isis::MdiCubeViewport.
Definition at line 1089 of file CubeViewport.cpp.
References p_cubeShown.
Referenced by Isis::IndependentCubeViewport::paintEvent().
void Isis::CubeViewport::paintPixmap | ( | ) |
Paint the whole pixmap.
Definition at line 1129 of file CubeViewport.cpp.
References p_image.
Referenced by bufferUpdated(), paintPixmapRects(), resizeEvent(), scrollContentsBy(), setScale(), shiftPixmap(), showEvent(), stretchBlue(), stretchGray(), stretchGreen(), and stretchRed().
|
private |
Paint a region of the pixmap.
rect |
Definition at line 1141 of file CubeViewport.cpp.
References _FILEINFO_, Isis::ViewportBuffer::bufferXYRect(), Isis::ViewportBuffer::enabled(), Isis::ViewportBuffer::getLine(), Isis::Stretch::Map(), p_bgColor, p_blue, p_blueBuffer, p_grayBuffer, p_green, p_greenBuffer, p_image, p_paintPixmap, p_pixmap, p_pixmapPaintRects, p_red, p_redBuffer, p_updatingBuffers, Isis::IException::Programmer, updateWhatsThis(), and Isis::ViewportBuffer::working().
|
private |
Goes through the list of requested paints, from the viewport buffer, and paints them.
Definition at line 779 of file CubeViewport.cpp.
References p_pixmapPaintRects, and paintPixmap().
Referenced by center(), cubeContentsChanged(), cubeDataChanged(), resizeEvent(), and setScale().
|
inline |
Returns the pixmap.
Definition at line 286 of file CubeViewport.h.
References p_pixmap.
Referenced by Isis::BlinkTool::eventFilter().
|
signal |
Emitted with current progress (0 to 100) when working.
Referenced by enableProgress(), and onProgressTimer().
|
inline |
Return the projection associated with cube (NULL implies none)
Definition at line 233 of file CubeViewport.h.
References p_projection.
Referenced by Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::MeasureTool::rubberBandComplete(), Isis::MeasureTool::updateDist(), Isis::TrackTool::updateLabels(), Isis::AdvancedTrackTool::updateRow(), and Isis::FindTool::updateTool().
|
inline |
Return the red band currently viewed.
Definition at line 168 of file CubeViewport.h.
References p_red.
Referenced by Isis::BandTool::changeView(), Isis::BandTool::copyAllViewports(), Isis::BandTool::copyLinkedViewports(), Isis::SpectralPlotWindow::drawBandMarkers(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::SpatialPlotTool::refreshPlot(), Isis::StretchTool::stretchBand(), stretchKnownGlobal(), stretchRed(), Isis::AdvancedTrackTool::updateRow(), and Isis::BandTool::updateTool().
|
inline |
Returns the red viewport buffer (Will be NULL if in Gray mode.)
Definition at line 306 of file CubeViewport.h.
References p_redBuffer.
Referenced by Isis::StretchTool::setCubeViewport(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), Isis::StretchTool::updateHistograms(), and Isis::TrackTool::updateLabels().
double Isis::CubeViewport::redPixel | ( | int | sample, |
int | line | ||
) |
Return the red pixel value at a sample/line.
sample | |
line |
Definition at line 1598 of file CubeViewport.cpp.
References p_cube, p_pntBrick, p_red, Isis::Cube::read(), and Isis::Brick::SetBasePosition().
Referenced by Isis::AdvancedTrackTool::updateRow().
Stretch Isis::CubeViewport::redStretch | ( | ) | const |
Return the red band stretch.
Definition at line 1660 of file CubeViewport.cpp.
References p_red.
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setCubeViewport(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchBand(), Isis::StretchTool::stretchChanged(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), Isis::StretchTool::updateAdvStretchDialogforAll(), and Isis::AdvancedStretchDialog::updateStretch().
|
protectedvirtual |
The viewport is being resized.
e |
Definition at line 1023 of file CubeViewport.cpp.
References p_blueBuffer, p_grayBuffer, p_greenBuffer, p_image, p_paintPixmap, p_pixmap, p_redBuffer, p_updatingBuffers, p_viewportWhatsThisText, paintPixmap(), paintPixmapRects(), Isis::ViewportBuffer::resizedViewport(), screenPixelsChanged(), and updateScrollBars().
|
pure virtual |
This is called by internal viewport buffers when a stretch action should be performed.
The buffer passes itself as the argument.
buffer |
Implemented in Isis::IndependentCubeViewport, and Isis::MdiCubeViewport.
|
signal |
Emitted when changes should be saved.
Referenced by confirmClose().
|
inline |
Return the scale.
Definition at line 183 of file CubeViewport.h.
References p_scale.
Referenced by Isis::FindTool::centerLinkedViewports(), fitScale(), fitScaleHeight(), fitScaleWidth(), keyPressEvent(), Isis::ZoomTool::rubberBandComplete(), Isis::ZoomTool::setScale(), setScale(), Isis::MeasureTool::updateDist(), Isis::ZoomTool::updateTool(), and Isis::ZoomTool::zoomBy().
|
signal |
Emitted when zoom factor changed just before the repaint event.
Referenced by setScale(), and updateScrollBars().
|
signal |
Emitted when cube pixels that should be on the screen change.
Referenced by center(), onProgressTimer(), resizeEvent(), scrollContentsBy(), and setScale().
|
slot |
Move the scrollbars by dx/dy screen pixels.
dx | |
dy |
Definition at line 869 of file CubeViewport.cpp.
References scrollContentsBy(), and updateScrollBars().
|
protected |
Scroll the viewport contents by dx/dy screen pixels.
dx | |
dy |
Definition at line 909 of file CubeViewport.cpp.
References Isis::ViewportBuffer::bufferXYRect(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_pixmapPaintRects, p_redBuffer, p_updatingBuffers, paintPixmap(), Isis::ViewportBuffer::pan(), screenPixelsChanged(), shiftPixmap(), and Isis::ViewportBuffer::working().
Referenced by scrollBy().
void Isis::CubeViewport::setAllBandStretches | ( | Stretch | stretch | ) |
Sets a stretch for all bands.
stretch |
Definition at line 1960 of file CubeViewport.cpp.
References p_knownStretches.
Referenced by Isis::StretchTool::setStretchAcrossBands().
|
inline |
Sets the background color.
color |
Definition at line 258 of file CubeViewport.h.
References p_bgColor.
Referenced by Isis::SpecialPixelTool::apply().
void Isis::CubeViewport::setCaption | ( | ) |
Change the caption on the viewport title bar.
Definition at line 985 of file CubeViewport.cpp.
References Isis::Cube::fileName(), p_blue, p_color, p_cube, p_gray, p_green, p_red, p_saveEnabled, p_scale, and windowTitleChanged().
Referenced by CubeViewport(), Isis::EditTool::redoEdit(), Isis::EditTool::save(), setCube(), setScale(), Isis::EditTool::undoEdit(), viewGray(), viewRGB(), and Isis::EditTool::writeToCube().
|
inline |
Sets the band bin combo box count.
count |
Definition at line 267 of file CubeViewport.h.
References p_comboCount.
Referenced by Isis::BandTool::setBandBin(), and Isis::BandTool::setList().
|
inline |
Sets the band bin combo box index.
index |
Definition at line 276 of file CubeViewport.h.
References p_comboIndex.
Referenced by Isis::BandTool::setBandBin(), and Isis::BandTool::setList().
void Isis::CubeViewport::setCube | ( | Cube * | cube | ) |
This method sets the viewports cube.
cube |
Definition at line 421 of file CubeViewport.cpp.
References cube(), p_cube, and setCaption().
void Isis::CubeViewport::setCursorPosition | ( | int | x, |
int | y | ||
) |
Set the cursor position to x/y in the viewport.
x | |
y |
Definition at line 1851 of file CubeViewport.cpp.
|
slot |
Change the scale of the cube to the given parameter value.
This method will reset the scale value if the value passed in is too large or too small.
scale | Value by which to scale the image. |
Definition at line 583 of file CubeViewport.cpp.
References contentsToCube(), cubeLines(), cubeSamples(), cubeToContents(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_redBuffer, p_scale, p_updatingBuffers, paintPixmap(), paintPixmapRects(), scale(), Isis::ViewportBuffer::scaleChanged(), scaleChanged(), screenPixelsChanged(), setCaption(), and updateScrollBars().
Referenced by Isis::FindTool::centerLinkedViewports(), keyPressEvent(), Isis::ZoomTool::setScale(), setScale(), and showEvent().
|
slot |
Change the scale of the cube after moving samp/line to the center.
scale | |
sample | |
line |
Definition at line 666 of file CubeViewport.cpp.
References center(), Isis::ViewportBuffer::enable(), Isis::ViewportBuffer::enabled(), p_blueBuffer, p_grayBuffer, p_greenBuffer, p_paintPixmap, p_redBuffer, paintPixmap(), screenPixelsChanged(), and setScale().
|
slot |
Change the scale of the cube after moving x,y to the center.
scale | |
x | |
y |
Definition at line 650 of file CubeViewport.cpp.
References setScale(), and viewportToCube().
|
private |
Shifts the pixels on the pixmap without reading new data.
dx | |
dy |
Definition at line 1284 of file CubeViewport.cpp.
References p_bgColor, p_paintPixmap, p_pixmap, and paintPixmap().
Referenced by center(), and scrollContentsBy().
|
slot |
This method is called to initially show the viewport.
It will set the scale to show the entire cube and enable the gray buffer.
Definition at line 232 of file CubeViewport.cpp.
References Isis::ViewportBuffer::addStretchAction(), cubeLines(), cubeSamples(), Isis::ViewportBuffer::enable(), Isis::ViewportBuffer::enabled(), fitScale(), p_grayBuffer, p_paintPixmap, p_scale, paintPixmap(), and setScale().
|
slot |
|
slot |
Apply stretch pairs to blue bands.
stretch |
Definition at line 2120 of file CubeViewport.cpp.
References Isis::Stretch::Parse().
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchChanged(), stretchKnownGlobal(), Isis::StretchTool::stretchRect(), and Isis::StretchTool::stretchRequested().
|
slot |
Sets the stretch for blue in rgb mode.
stretch |
Definition at line 2227 of file CubeViewport.cpp.
References blueBand(), p_blue, p_globalStretches, paintPixmap(), and Isis::Stretch::Pairs().
|
slot |
Apply stretch pairs to gray band.
string |
Definition at line 2084 of file CubeViewport.cpp.
References Isis::Stretch::Parse().
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchChanged(), stretchKnownGlobal(), Isis::StretchTool::stretchRect(), Isis::StretchTool::stretchRequested(), and viewGray().
|
slot |
Sets the stretch for gray mode.
stretch |
Definition at line 2161 of file CubeViewport.cpp.
References Isis::Stretch::CopyPairs(), grayBand(), p_blue, p_globalStretches, p_gray, p_green, p_red, paintPixmap(), and Isis::Stretch::Pairs().
|
slot |
Apply stretch pairs to green bands.
stretch |
Definition at line 2108 of file CubeViewport.cpp.
References Isis::Stretch::Parse().
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchChanged(), stretchKnownGlobal(), Isis::StretchTool::stretchRect(), and Isis::StretchTool::stretchRequested().
|
slot |
Sets the stretch for green in rgb mode.
stretch |
Definition at line 2209 of file CubeViewport.cpp.
References greenBand(), p_globalStretches, p_green, paintPixmap(), and Isis::Stretch::Pairs().
|
slot |
List<Tool *> p This stretches to the global stretch.
Definition at line 2130 of file CubeViewport.cpp.
References blueBand(), grayBand(), greenBand(), isGray(), p_globalStretches, redBand(), stretchBlue(), stretchGray(), stretchGreen(), and stretchRed().
Referenced by Isis::StretchTool::stretchChanged(), and Isis::StretchTool::stretchGlobal().
|
slot |
Apply stretch pairs to red bands.
stretch |
Definition at line 2096 of file CubeViewport.cpp.
References Isis::Stretch::Parse().
Referenced by Isis::StretchTool::advancedStretchChanged(), Isis::SpecialPixelTool::apply(), Isis::StretchTool::changeStretch(), Isis::StretchTool::setStretchAcrossBands(), Isis::StretchTool::setStretchAllViewports(), Isis::StretchTool::stretchChanged(), stretchKnownGlobal(), Isis::StretchTool::stretchRect(), and Isis::StretchTool::stretchRequested().
|
slot |
Sets the stretch for red in rgb mode.
stretch |
Definition at line 2191 of file CubeViewport.cpp.
References p_globalStretches, p_red, paintPixmap(), Isis::Stretch::Pairs(), and redBand().
|
inline |
Return the universal ground map associated with the cube (NULL implies none)
Definition at line 243 of file CubeViewport.h.
References p_groundMap.
Referenced by Isis::FindTool::centerLinkedViewports(), Isis::FindTool::distancePerPixel(), Isis::FeatureNomenclatureTool::FeaturePosition::FeaturePosition(), Isis::FeatureNomenclatureTool::findMissingNomenclature(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::FindTool::handleLinkClicked(), Isis::FindTool::handleRecordClicked(), Isis::FindTool::mouseButtonRelease(), Isis::QnetTool::mouseButtonRelease(), Isis::FindTool::paintViewport(), Isis::SpatialPlotTool::updateTool(), and Isis::FindTool::updateTool().
|
private |
Update the scroll bar.
x | |
y |
Definition at line 1865 of file CubeViewport.cpp.
References cubeLines(), cubeSamples(), p_scale, and scaleChanged().
Referenced by center(), resizeEvent(), scrollBy(), and setScale().
|
private |
Update the What's This text.
Definition at line 1512 of file CubeViewport.cpp.
References Isis::ViewportBuffer::getBand(), getBandFilterName(), getCubeArea(), p_blueBuffer, p_color, p_cube, p_cubeWhatsThisText, p_grayBuffer, p_greenBuffer, p_redBuffer, p_viewportWhatsThisText, p_whatsThisText, Isis::Cube::physicalBand(), and Isis::PvlKeyword::size().
Referenced by paintPixmap().
|
virtualslot |
View cube as gray.
band |
Definition at line 1895 of file CubeViewport.cpp.
References Isis::ViewportBuffer::addStretchAction(), Isis::ViewportBuffer::getBand(), p_blueBuffer, p_camera, p_color, p_cubeData, p_cubeId, p_gray, p_grayBuffer, p_greenBuffer, p_knownStretches, p_redBuffer, Isis::ViewportBuffer::setBand(), Isis::Camera::SetBand(), setCaption(), and stretchGray().
|
signal |
Emitted when viewport is closed.
void Isis::CubeViewport::viewportToCube | ( | int | x, |
int | y, | ||
double & | sample, | ||
double & | line | ||
) | const |
Convert a viewport x/y to a cube sample/line (may be outside the cube)
x | |
y | |
sample | |
line |
Definition at line 815 of file CubeViewport.cpp.
References contentsToCube().
Referenced by center(), getCubeArea(), Isis::SpatialPlotTool::getSpatialStatistics(), Isis::SpectralPlotTool::getSpectralStatistics(), Isis::StatisticsTool::getStatistics(), Isis::SunShadowTool::mouseButtonPress(), Isis::EditTool::mouseButtonRelease(), Isis::FindTool::mouseButtonRelease(), Isis::MatchTool::mouseButtonRelease(), Isis::QnetTool::mouseButtonRelease(), Isis::SunShadowTool::mouseMove(), Isis::ScatterPlotWindow::paint(), Isis::ScatterPlotConfigDialog::range(), Isis::HistogramTool::refreshPlot(), Isis::EditTool::rubberBandComplete(), Isis::ScatterPlotWindow::setMousePosition(), setScale(), Isis::HistogramItem::setVertices(), Isis::MeasureTool::updateDist(), Isis::TrackTool::updateLabels(), and Isis::AdvancedTrackTool::updateRow().
|
signal |
Emitted when viewport updated.
|
virtualslot |
View cube as color.
rband | |
gband | |
bband |
Definition at line 1979 of file CubeViewport.cpp.
References Isis::ViewportBuffer::addStretchAction(), Isis::ViewportBuffer::getBand(), p_blue, p_blueBuffer, p_camera, p_color, p_cubeData, p_cubeId, p_grayBuffer, p_green, p_greenBuffer, p_knownStretches, p_red, p_redBuffer, Isis::ViewportBuffer::setBand(), Isis::Camera::SetBand(), and setCaption().
|
signal |
Emitted when window title changes.
Referenced by setCaption().
|
private |
The color to paint the background of the viewport.
Definition at line 504 of file CubeViewport.h.
Referenced by CubeViewport(), paintPixmap(), setBackground(), and shiftPixmap().
|
private |
Bricks for every color.
Definition at line 527 of file CubeViewport.h.
Referenced by CubeViewport(), and ~CubeViewport().
|
private |
Blue band info.
Definition at line 520 of file CubeViewport.h.
Referenced by blueBand(), bluePixel(), blueStretch(), paintPixmap(), setCaption(), stretchBlue(), stretchGray(), and viewRGB().
|
private |
Viewport Buffer to manage blue band.
Definition at line 502 of file CubeViewport.h.
Referenced by blueBuffer(), bufferUpdated(), center(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), getAllWhatsThisInfo(), onProgressTimer(), paintPixmap(), resizeEvent(), scrollContentsBy(), setScale(), updateWhatsThis(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
The camera from the cube.
Definition at line 507 of file CubeViewport.h.
Referenced by camera(), CubeViewport(), viewGray(), and viewRGB().
|
private |
Is the viewport in color?
Definition at line 516 of file CubeViewport.h.
Referenced by CubeViewport(), getAllWhatsThisInfo(), isColor(), isGray(), setCaption(), updateWhatsThis(), viewGray(), and viewRGB().
|
private |
Number of elements in band bin combo box.
Definition at line 522 of file CubeViewport.h.
Referenced by comboCount(), CubeViewport(), and setComboCount().
|
private |
Current element chosen from combo box.
Definition at line 523 of file CubeViewport.h.
Referenced by comboIndex(), CubeViewport(), and setComboIndex().
|
private |
The cube associated with the viewport.
Definition at line 506 of file CubeViewport.h.
Referenced by bluePixel(), cube(), cubeBands(), cubeLines(), cubeSamples(), CubeViewport(), getAllWhatsThisInfo(), getBandFilterName(), grayPixel(), greenPixel(), redPixel(), setCaption(), setCube(), updateWhatsThis(), and ~CubeViewport().
|
private |
Does all the cube I/O.
Definition at line 544 of file CubeViewport.h.
Referenced by cubeDataThread(), CubeViewport(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
Cube ID given from cube data thread for I/O.
Definition at line 545 of file CubeViewport.h.
Referenced by cubeDataChanged(), cubeID(), CubeViewport(), viewGray(), and viewRGB().
|
private |
Is the cube visible?
Definition at line 531 of file CubeViewport.h.
Referenced by cubeShown(), CubeViewport(), and paintEvent().
|
private |
The text for the cube's What's this.
Definition at line 537 of file CubeViewport.h.
Referenced by CubeViewport(), and updateWhatsThis().
Global stretches for each stretched band.
Definition at line 495 of file CubeViewport.h.
Referenced by CubeViewport(), stretchBlue(), stretchGray(), stretchGreen(), stretchKnownGlobal(), stretchRed(), and ~CubeViewport().
|
private |
Gray band info.
Definition at line 517 of file CubeViewport.h.
Referenced by grayBand(), grayPixel(), grayStretch(), setCaption(), stretchGray(), and viewGray().
|
private |
Viewport Buffer to manage gray band.
Definition at line 499 of file CubeViewport.h.
Referenced by bufferUpdated(), center(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), getAllWhatsThisInfo(), grayBuffer(), onProgressTimer(), paintPixmap(), resizeEvent(), scrollContentsBy(), setScale(), showEvent(), updateWhatsThis(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
Green band info.
Definition at line 519 of file CubeViewport.h.
Referenced by greenBand(), greenPixel(), greenStretch(), paintPixmap(), setCaption(), stretchGray(), stretchGreen(), and viewRGB().
|
private |
Viewport Buffer to manage green band.
Definition at line 501 of file CubeViewport.h.
Referenced by bufferUpdated(), center(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), getAllWhatsThisInfo(), greenBuffer(), onProgressTimer(), paintPixmap(), resizeEvent(), scrollContentsBy(), setScale(), updateWhatsThis(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
Bricks for every color.
Definition at line 526 of file CubeViewport.h.
Referenced by CubeViewport(), and ~CubeViewport().
|
private |
The universal ground map from the cube.
Definition at line 509 of file CubeViewport.h.
Referenced by CubeViewport(), universalGroundMap(), and ~CubeViewport().
|
private |
Bricks for every color.
Definition at line 528 of file CubeViewport.h.
Referenced by CubeViewport(), and ~CubeViewport().
|
private |
The qimage.
Definition at line 532 of file CubeViewport.h.
Referenced by CubeViewport(), paintPixmap(), resizeEvent(), and ~CubeViewport().
Stretches for each previously stretched band.
Definition at line 492 of file CubeViewport.h.
Referenced by CubeViewport(), forgetStretches(), setAllBandStretches(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
Paint the pixmap?
Definition at line 533 of file CubeViewport.h.
Referenced by CubeViewport(), paintPixmap(), resizeEvent(), setScale(), shiftPixmap(), and showEvent().
|
protected |
The qpixmap.
Definition at line 489 of file CubeViewport.h.
Referenced by paintPixmap(), pixmap(), resizeEvent(), and shiftPixmap().
|
private |
A list of rects that the viewport buffers have requested painted.
Definition at line 542 of file CubeViewport.h.
Referenced by CubeViewport(), paintPixmap(), paintPixmapRects(), scrollContentsBy(), and ~CubeViewport().
|
private |
Bricks for every color.
Definition at line 529 of file CubeViewport.h.
Referenced by bluePixel(), CubeViewport(), grayPixel(), greenPixel(), redPixel(), and ~CubeViewport().
|
private |
Activated to update progress bar.
Definition at line 512 of file CubeViewport.h.
Referenced by CubeViewport(), enableProgress(), onProgressTimer(), and ~CubeViewport().
|
private |
The projection from the cube.
Definition at line 508 of file CubeViewport.h.
Referenced by CubeViewport(), and projection().
|
private |
Red band info.
Definition at line 518 of file CubeViewport.h.
Referenced by paintPixmap(), redBand(), redPixel(), redStretch(), setCaption(), stretchGray(), stretchRed(), and viewRGB().
|
private |
Bricks for every color.
Definition at line 525 of file CubeViewport.h.
Referenced by CubeViewport(), and ~CubeViewport().
|
private |
Viewport Buffer to manage red band.
Definition at line 500 of file CubeViewport.h.
Referenced by bufferUpdated(), center(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), getAllWhatsThisInfo(), onProgressTimer(), paintPixmap(), redBuffer(), resizeEvent(), scrollContentsBy(), setScale(), updateWhatsThis(), viewGray(), viewRGB(), and ~CubeViewport().
|
private |
Has the cube changed?
Definition at line 530 of file CubeViewport.h.
Referenced by confirmClose(), cubeChanged(), CubeViewport(), and setCaption().
|
private |
The scale number.
Definition at line 514 of file CubeViewport.h.
Referenced by contentsToCube(), cubeToContents(), CubeViewport(), keyPressEvent(), scale(), setCaption(), setScale(), showEvent(), and updateScrollBars().
|
private |
if true then this owns the CubeDataThread, and should thus delete it
Definition at line 551 of file CubeViewport.h.
Referenced by CubeViewport(), and ~CubeViewport().
|
private |
Changing RGB and need to not repaint pixmap?
Definition at line 534 of file CubeViewport.h.
Referenced by center(), cubeContentsChanged(), cubeDataChanged(), CubeViewport(), paintPixmap(), resizeEvent(), scrollContentsBy(), and setScale().
|
private |
The text for the viewport's what's this.
Definition at line 538 of file CubeViewport.h.
Referenced by resizeEvent(), and updateWhatsThis().
|
private |
The text for What's this.
Definition at line 536 of file CubeViewport.h.
Referenced by CubeViewport(), and updateWhatsThis().