Class ViewJFramePlotterView
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- gov.nih.mipav.view.ViewJFrameBase
-
- gov.nih.mipav.view.renderer.J3D.surfaceview.plotterview.ViewJFramePlotterView
-
- All Implemented Interfaces:
ViewImageUpdateInterface
,java.awt.event.ActionListener
,java.awt.event.ComponentListener
,java.awt.event.WindowListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.event.ChangeListener
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
public class ViewJFramePlotterView extends ViewJFrameBase
Title: ViewJFramePlotterView
Description: The plotter render view frame. The plotter render views images based on each slice intensity values. Component surface created from a 2D image. The intensity values are mapped like a relief map, with higher intensities making peaks and lower intensities forming valleys. A quad mesh is used to create the three-dimensional map. The same LUT from the image is used to colors the vertices of the quad mesh.
- Author:
- Matthew J. McAuliffe, Ph.D.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
ViewJFramePlotterView.TabbedItem
Item to hold tab name and corresponding panel.-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description private javax.swing.JPanel
cameraPanel
DOCUMENT ME!private javax.swing.border.Border
compound
Panel Border view.protected java.awt.GraphicsConfiguration
config
Configuration param, which will pass down to each render's constructor.private javax.swing.JPanel
imagePanel
The image panel to hold one Canvas3D.private javax.swing.JCheckBoxMenuItem
itemLine
Image line mode check box.private javax.swing.border.Border
loweredbevel
Panel Border view.private javax.swing.JPanel
mousePanel
DOCUMENT ME!private javax.swing.JMenuBar
openingMenuBar
Menu bar.private javax.swing.JPanel
panelToolbar
Toolbar panel.private SurfacePlotter
plotterRender
Surface plotter view.private javax.swing.border.Border
raisedbevel
Panel Border view.private int
screenHeight
Screen width, screen height.private int
screenWidth
Screen width, screen height.private static long
serialVersionUID
Use serialVersionUID for interoperability.protected java.awt.Font
serif12
Fonts, same asMipavUtil.font12
andMipavUtil.font12B.
protected java.awt.Font
serif12B
Fonts, same asMipavUtil.font12
andMipavUtil.font12B.
private javax.swing.JPanel
sliderControlPanel
DOCUMENT ME!private javax.swing.JPanel
surfaceBoxPanel
DOCUMENT ME!private java.util.Vector
surTabVector
DOCUMENT ME!private javax.swing.JTabbedPane
tabbedPane
The main tabbed pane in the volume view frame.private java.util.Vector
tabVector
For each render, use the vector to store the currently active tabs.private javax.swing.JPanel
viewPanel
Control panel for the surface renderer.-
Fields inherited from class gov.nih.mipav.view.ViewJFrameBase
absoluteGoToButton, absoluteGoToPanel, absoluteLabel, absoluteLabelVals, absolutePanel, absoluteXLabel, absoluteXTextField, absoluteYLabel, absoluteYTextField, absoluteZLabel, absoluteZTextField, alphaBlend, defaultLUTa, defaultLUTb, displayMode, IMAGE_A, IMAGE_A_B, IMAGE_B, imageA, imageB, isClosing, linkedScrolling, linkFrame, linkTriFrame, LUTa, LUTb, progressBar, scannerLPS_APLabel, scannerLPS_APTextField, scannerLPS_GoToButton, scannerLPS_GoToPanel, scannerLPS_ISLabel, scannerLPS_ISTextField, scannerLPS_RLLabel, scannerLPS_RLTextField, scannerLPSLabel, scannerLPSLabelVals, scannerLPSPanel, scannerRAS_APLabel, scannerRAS_APTextField, scannerRAS_GoToButton, scannerRAS_GoToPanel, scannerRAS_ISLabel, scannerRAS_ISTextField, scannerRAS_RLLabel, scannerRAS_RLTextField, scannerRASLabel, scannerRASLabelVals, scannerRASPanel, scannerTabbedPane, talGoToButton, talGoToPanel, talXLabel, talXTextField, talYLabel, talYTextField, talZLabel, talZTextField, userInterface, zoomMode
-
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description ViewJFramePlotterView(ModelImage _imageA, ModelLUT _LUTa, int slice)
The frame the rendering the plotter view of images.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent event)
Calls various methods depending on the action.private void
buildCameraPanel()
Build the camera snap shot panel.protected javax.swing.JMenuBar
buildMenu()
Builds menu.private void
buildMousePanel()
Build the mouse recorder panel.private void
buildSurfaceBoxPanel()
Build the options panel.private void
buildToolBar()
Builds the toolbar for the volume render frame.private void
buildViewPanel()
Build the view control panel.protected void
configureFrame()
Constructs main frame structures for 3 images.void
disposeLocal(boolean flag)
Dispose memory.protected void
finalize()
Cleans up memory from gc.ViewControlsImage
getControls()
DOCUMENT ME!ModelImage
getImageA()
DOCUMENT ME!ModelImage
getImageB()
DOCUMENT ME!protected void
init()
Initialize the the frame layout.void
insertTab(java.lang.String _name, javax.swing.JPanel _panel)
Insert the new tab into the current visible tab list.void
removeControls()
DOCUMENT ME!void
setActiveImage(int active)
DOCUMENT ME!void
setAlphaBlend(int value)
DOCUMENT ME!void
setControls()
DOCUMENT ME!void
setEnabled(boolean flag)
DOCUMENT ME!void
setImageB(ModelImage imageB)
DOCUMENT ME!void
setLUTa(ModelLUT LUT)
Accessor that sets the LUT.void
setPaintBitmapSwitch(boolean flag)
DOCUMENT ME!void
setRGBTA(ModelRGB RGBT)
Sets the RGB table for ARGB image A.void
setRGBTB(ModelRGB RGBT)
DOCUMENT ME!void
setSlice(int slice)
Funcions do nothing, but extends ViewJFrameBase.void
setTimeSlice(int slice)
DOCUMENT ME!void
setTitle()
DOCUMENT ME!boolean
updateImageExtents()
DOCUMENT ME!boolean
updateImages()
Update images in surface render, raycast render and shearwarp render.boolean
updateImages(boolean forceShow)
This methods calls corresponding render to update images without LUT changes.boolean
updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
This methods calls corresponding render to update images with LUT changes.void
windowClosing(java.awt.event.WindowEvent event)
Closes window and disposes of frame and component.-
Methods inherited from class gov.nih.mipav.view.ViewJFrameBase
about, buildLabelPanel, canCloseImageBAfterLoad, close, close, closeImageB, componentHidden, componentMoved, componentResized, componentShown, getAlphaBlend, getDefaultLUTa, getDefaultLUTb, getDisplayMode, getImageNameA, getImageNameB, getLastState, getLUTa, getLUTb, getRGBTA, getRGBTB, getTriImg, getUserInterface, handleMaskPopupMenu, handlePaintToMaskPopupMenu, handleZoomPopupMenu, initExtents, initImageBuffer, initLUT, initNumSlices, initPixelBuffer, initResFactor, initResolutions, initRGB, initSlicePositions, initUnits, initZoom, loadAllVOIs, loadAllVOIsFrom, loadImage, loadLUT, loadLUTandTransferFunctionFrom, loadLUTandTransferFunctionFrom, makeString, newFrameBeenCreated, openVOI, openVOI, pickImageFile, save, save, save, saveAllVOIs, saveAllVOIsTo, saveLabels, saveLUT, saveLUTandTransferFunction, saveLUTandTransferFunction, saveLUTAs, saveLUTAs, saveVOI, saveVOIAs, saveVOIAs, saveVOIIntensities, saveVOIIntensitiesTo, setAbsPositionLabels, setEnableCloseImageBAfterLoad, setImageA, setLastState, setLinkedFrame, setLinkedTriFrame, setLUTb, setLUTs, setMessageText, setOpacityInfo, setpaintBitmap, setScannerPosition, stateChanged, windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
config
protected java.awt.GraphicsConfiguration config
Configuration param, which will pass down to each render's constructor.
-
serif12
protected java.awt.Font serif12
Fonts, same asMipavUtil.font12
andMipavUtil.font12B.
-
serif12B
protected java.awt.Font serif12B
Fonts, same asMipavUtil.font12
andMipavUtil.font12B.
-
cameraPanel
private javax.swing.JPanel cameraPanel
DOCUMENT ME!
-
imagePanel
private javax.swing.JPanel imagePanel
The image panel to hold one Canvas3D.
-
itemLine
private javax.swing.JCheckBoxMenuItem itemLine
Image line mode check box.
-
mousePanel
private javax.swing.JPanel mousePanel
DOCUMENT ME!
-
openingMenuBar
private javax.swing.JMenuBar openingMenuBar
Menu bar.
-
panelToolbar
private javax.swing.JPanel panelToolbar
Toolbar panel.
-
plotterRender
private SurfacePlotter plotterRender
Surface plotter view.
-
raisedbevel
private javax.swing.border.Border raisedbevel
Panel Border view.
-
loweredbevel
private javax.swing.border.Border loweredbevel
Panel Border view.
-
compound
private javax.swing.border.Border compound
Panel Border view.
-
screenWidth
private int screenWidth
Screen width, screen height.
-
screenHeight
private int screenHeight
Screen width, screen height.
-
sliderControlPanel
private javax.swing.JPanel sliderControlPanel
DOCUMENT ME!
-
surfaceBoxPanel
private javax.swing.JPanel surfaceBoxPanel
DOCUMENT ME!
-
surTabVector
private java.util.Vector surTabVector
DOCUMENT ME!
-
tabbedPane
private javax.swing.JTabbedPane tabbedPane
The main tabbed pane in the volume view frame.
-
tabVector
private java.util.Vector tabVector
For each render, use the vector to store the currently active tabs.
-
viewPanel
private javax.swing.JPanel viewPanel
Control panel for the surface renderer.
-
-
Constructor Detail
-
ViewJFramePlotterView
public ViewJFramePlotterView(ModelImage _imageA, ModelLUT _LUTa, int slice)
The frame the rendering the plotter view of images. The plotter renderer view images based on the image intensity values.- Parameters:
_imageA
- ModelImage source model images_LUTa
- ModelLUT image LUT tableslice
- int slice number
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Calls various methods depending on the action.- Surface - opens the surface dialog
- View - opens the view control dialog
- Mouse - opens the mouse recorder dialog
- About - displays a message about this renderer
- Exit - sets variables to null and disposes of this frame
- X, Y, Z checkboxes - toggles the appropriate image planes on or off
- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Specified by:
actionPerformed
in classViewJFrameBase
- Parameters:
event
- Event that triggered function.
-
disposeLocal
public void disposeLocal(boolean flag)
Dispose memory.- Parameters:
flag
- DOCUMENT ME!
-
getControls
public ViewControlsImage getControls()
DOCUMENT ME!- Specified by:
getControls
in classViewJFrameBase
- Returns:
- DOCUMENT ME!
-
getImageA
public ModelImage getImageA()
DOCUMENT ME!- Specified by:
getImageA
in classViewJFrameBase
- Returns:
- DOCUMENT ME!
-
getImageB
public ModelImage getImageB()
DOCUMENT ME!- Specified by:
getImageB
in classViewJFrameBase
- Returns:
- DOCUMENT ME!
-
insertTab
public void insertTab(java.lang.String _name, javax.swing.JPanel _panel)
Insert the new tab into the current visible tab list.- Parameters:
_name
- String Tab name._panel
- JPanel Control panel.
-
removeControls
public void removeControls()
DOCUMENT ME!- Specified by:
removeControls
in classViewJFrameBase
-
setActiveImage
public void setActiveImage(int active)
DOCUMENT ME!- Specified by:
setActiveImage
in classViewJFrameBase
- Parameters:
active
- DOCUMENT ME!
-
setAlphaBlend
public void setAlphaBlend(int value)
DOCUMENT ME!- Specified by:
setAlphaBlend
in classViewJFrameBase
- Parameters:
value
- DOCUMENT ME!
-
setControls
public void setControls()
DOCUMENT ME!- Specified by:
setControls
in classViewJFrameBase
-
setEnabled
public void setEnabled(boolean flag)
DOCUMENT ME!- Specified by:
setEnabled
in classViewJFrameBase
- Parameters:
flag
- DOCUMENT ME!
-
setImageB
public void setImageB(ModelImage imageB)
DOCUMENT ME!- Specified by:
setImageB
in classViewJFrameBase
- Parameters:
imageB
- DOCUMENT ME!
-
setLUTa
public void setLUTa(ModelLUT LUT)
Accessor that sets the LUT.- Overrides:
setLUTa
in classViewJFrameBase
- Parameters:
LUT
- the LUT
-
setPaintBitmapSwitch
public void setPaintBitmapSwitch(boolean flag)
DOCUMENT ME!- Specified by:
setPaintBitmapSwitch
in classViewJFrameBase
- Parameters:
flag
- DOCUMENT ME!
-
setRGBTA
public void setRGBTA(ModelRGB RGBT)
Sets the RGB table for ARGB image A.- Specified by:
setRGBTA
in classViewJFrameBase
- Parameters:
RGBT
- DOCUMENT ME!
-
setRGBTB
public void setRGBTB(ModelRGB RGBT)
DOCUMENT ME!- Specified by:
setRGBTB
in classViewJFrameBase
- Parameters:
RGBT
- DOCUMENT ME!
-
setSlice
public void setSlice(int slice)
Funcions do nothing, but extends ViewJFrameBase.- Parameters:
slice
- DOCUMENT ME!
-
setTimeSlice
public void setTimeSlice(int slice)
DOCUMENT ME!- Parameters:
slice
- DOCUMENT ME!
-
setTitle
public void setTitle()
DOCUMENT ME!- Specified by:
setTitle
in classViewJFrameBase
-
updateImageExtents
public boolean updateImageExtents()
DOCUMENT ME!- Specified by:
updateImageExtents
in interfaceViewImageUpdateInterface
- Specified by:
updateImageExtents
in classViewJFrameBase
- Returns:
- DOCUMENT ME!
- See Also:
ViewImageUpdateInterface
-
updateImages
public boolean updateImages()
Update images in surface render, raycast render and shearwarp render.- Returns:
- boolean boolean confirming successful update
-
updateImages
public boolean updateImages(boolean forceShow)
This methods calls corresponding render to update images without LUT changes.- Parameters:
forceShow
- forces show to reimport image and calc. java image- Returns:
- boolean confirming successful update
-
updateImages
public boolean updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
This methods calls corresponding render to update images with LUT changes.- Parameters:
LUTa
- LUT used to update imageALUTb
- LUT used to update imageBforceShow
- forces show to reimport image and calc. java imageinterpMode
- image interpolation method (Nearest or Smooth)- Returns:
- boolean confirming successful update
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent event)
Closes window and disposes of frame and component.- Specified by:
windowClosing
in interfacejava.awt.event.WindowListener
- Overrides:
windowClosing
in classViewJFrameBase
- Parameters:
event
- Event that triggered function
-
buildMenu
protected javax.swing.JMenuBar buildMenu()
Builds menu.- Returns:
- DOCUMENT ME!
-
configureFrame
protected void configureFrame()
Constructs main frame structures for 3 images.
-
finalize
protected void finalize() throws java.lang.Throwable
Cleans up memory from gc.- Overrides:
finalize
in classViewJFrameBase
- Throws:
java.lang.Throwable
- DOCUMENT ME!
-
init
protected void init()
Initialize the the frame layout.
-
buildCameraPanel
private void buildCameraPanel()
Build the camera snap shot panel.
-
buildMousePanel
private void buildMousePanel()
Build the mouse recorder panel.
-
buildSurfaceBoxPanel
private void buildSurfaceBoxPanel()
Build the options panel.
-
buildToolBar
private void buildToolBar()
Builds the toolbar for the volume render frame.
-
buildViewPanel
private void buildViewPanel()
Build the view control panel.
-
-