Class ViewJFrameAnimate
- 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.ViewJFrameAnimate
-
- 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 ViewJFrameAnimate extends ViewJFrameBase implements javax.swing.event.ChangeListener
This class produces a frame surrounding an image whose slices are animated. Tool bar buttons are present for continuous reverse, reverse, continuous forward, forward, pause, stop, magnify, unmagnify, for generating a dialog to set brightness and contrast, and for deleting the current slice from the animation. In continuous forward the images are continuously displayed from start to end over and over again until pause or stop are hit. If pause is hit, the display may be resumed by repushing the continuous forward button. In forward each image is only displayed once from start to finish unless pause or stop are hit. If pause is hit, the display may be resumed by repushing the forward button. Continuous reverse and reverse work the same way as continuous forward and forward except for a reversal in direction. Users can instantly jump from one mode to another without hitting stop ro pause - from continuous forward to continuous reverse for example. Magnify will double the present magnification and Unmagnify will half the present magnification. Magnifications are only powers of 2. However, the scale function can be set to any value in the dialog box called up by JDialogAnimate. This scale function will do a slice by slice bilinear of bspline interpolation to create the initial slices on which the power of 2 magnification may be changed.The dialog box for brightness and contrast has brightness and contrast sliders, an Apply button, and a Cancel button. The brightness will add an offset ranging from -255 to 255 to every scaled red, green, and blue in the image. Contrast will multiply every original red, green, and blue value by a floating point number ranging from 0.1 to 10.0. Before apply is pressed, slider changes are only temporarily made to the currently displayed slice. If apply is pressed, these changes are permanently made to all slices. Pressing cancel keeps all slices in their original state.
Images may also be viewed in a steady state mode. The slider is used to control the number of the slice shown when animation is not occurring. A text field for the desired frames per second is present. The initial default value is 30 per second. This is followed by a text field for the actual frames per second.
The file menu only has 2 simple functions - a save as function and a close animate structure function. The options menu has a view z slice numbers for use for 4D images.
ViewJFrameAnimate is called in ViewJFrameImage.
An animation of a blended image A and image B can be performed. However, all the blending parameters must be set before the animation structure is created. One parameter is alphaBlend for all images. For color only are also the parameters: RaOn, GaOn, BaOn, RbOn, GbOn, BbOn, RGBTA, and RGBTB. Changes in these parmeters that are made after the animation structure is created will not be propagated into the animation structure.
If 4D images are animated, the animation is performed on the fourth time dimension with all the z slices for a given time present in a given frame. The number of rows or columns for the z slices, whether or not a border frame is present around z slices, and the border frame color are all selected in JDialogAnimate before ViewJFrameAnimate is invoked. Note that JDialogAnimate converts all 4D images to 3D images so ViewJFrameAnimate actually is always passed 3D images.
- Version:
- 1.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classViewJFrameAnimate.CBackForwardcontinuous backward and forward - continuously cycles from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.(package private) classViewJFrameAnimate.cbfStopContinuous back and forth has been selected.(package private) classViewJFrameAnimate.CForwardcontinuous forward continuously cycles from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.(package private) classViewJFrameAnimate.cfStopThreads are used because they are required by the sleep function. cf , fStop, crStop, and rStop set stop to true and keep sleeping for 5 millisecond intervals until the other 3 animation modes have ended.(package private) classViewJFrameAnimate.CReversecontinuous reverse continuously cycles from last to frist slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.(package private) classViewJFrameAnimate.crStopContinuous reverse has been selected.(package private) classViewJFrameAnimate.Forwardforward cycles a single time from first to last slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.(package private) classViewJFrameAnimate.fStopForward has been selected.(package private) classViewJFrameAnimate.Reversereverse cycles a single time from last to first slice unless a pause suspends the loop in 5 millisecond sleep functions or a stop causes the loop to exit.(package private) classViewJFrameAnimate.rStopReverse has been selected.-
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 floatactualPerSecondDOCUMENT ME!private floatalphaBlendDOCUMENT ME!private java.lang.Stringapsset to give 2 digits to the right of the decimal.private javax.swing.JToggleButtonbackForthButtonDOCUMENT ME!private booleanbfRunDOCUMENT ME!private java.awt.ColorborderColz slice.private javax.swing.JButton[]buttonArrayDOCUMENT ME!private javax.swing.JToggleButtoncForwardButtonDOCUMENT ME!private booleancfRunDOCUMENT ME!private ViewJComponentAnimatecomponentImagewith complex images.private intcomponentYDOCUMENT ME!private ViewJFrameBasecontrolFrameDOCUMENT ME!private javax.swing.JPanelcontrolPanelDOCUMENT ME!private ViewControlsImagecontrolsDOCUMENT ME!private java.awt.GridBagConstraintscpGBCDOCUMENT ME!private java.awt.GridBagLayoutcpGBLDOCUMENT ME!private javax.swing.JToggleButtoncReverseButtonDOCUMENT ME!private booleancrRunDOCUMENT ME!private longcycleTimeDOCUMENT ME!private javax.swing.JButtondeleteButtonDOCUMENT ME!private booleandisposeImageDOCUMENT ME!private javax.swing.border.BorderetchedBorderDOCUMENT ME!private int[]extentsDOCUMENT ME!private javax.swing.JToggleButtonforwardButtonDOCUMENT ME!private javax.swing.JSliderfpsSliderDOCUMENT ME!private floatframesPerSecondDOCUMENT ME!private booleanfRunDOCUMENT ME!private java.awt.GridBagConstraintsgbcTPDOCUMENT ME!private ModelImageimageADOCUMENT ME!private ModelImageimageBDOCUMENT ME!private float[]imageBufferADOCUMENT ME!private float[]imageBufferBDOCUMENT ME!private javax.swing.JPanelinnerPanelDOCUMENT ME!private javax.swing.JLabellabelAnimationFrameDOCUMENT ME!private javax.swing.JLabellabelFramesPerSecondDOCUMENT ME!private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel>labelTableDOCUMENT ME!private longlocalTimenewmsWait = msWait - msElapsed is passed to the sleep function.private longlocalTime2DOCUMENT ME!private booleanlogMagDisplayDOCUMENT ME!private ModelLUTLUTaDOCUMENT ME!private ModelLUTLUTbDOCUMENT ME!private ViewMenuBuildermenuObjDOCUMENT ME!private intminimumHeightDOCUMENT ME!private intminimumToolBarWidthDOCUMENT ME!private floatmjpegQualityDOCUMENT ME!private longmsElapsedDOCUMENT ME!private longmsWaitDOCUMENT ME!private intnColumnDOCUMENT ME!private longnewmsWaitDOCUMENT ME!private java.text.NumberFormatnfDOCUMENT ME!private intnImageDOCUMENT ME!private intnRowDOCUMENT ME!private javax.swing.JMenuBaropeningMenuBarDOCUMENT ME!private intorigBrightnessDOCUMENT ME!private floatorigContrastred, green, and blue origBrightness remains constant until applyButton is pressed, restores brightness if cancelButton is pressed.private intoriginalZDimfor 4D originalXDim and originalYDim are xDim and yDim before 4D to 3D conversion.private int[]paintBufferDOCUMENT ME!private booleanpauseDOCUMENT ME!private javax.swing.JToggleButtonpauseButtonDOCUMENT ME!private int[]pixBufferDOCUMENT ME!private javax.swing.border.BorderpressedBorderDOCUMENT ME!(package private) ViewJProgressBarprogressBarcurrently running.private javax.swing.JButtonrecordButtonDOCUMENT ME!private javax.swing.JToggleButtonreverseButtonDOCUMENT ME!private ModelRGBRGBTADOCUMENT ME!private ModelRGBRGBTBDOCUMENT ME!private booleanrRuncurrently running.private javax.swing.JScrollPanescrollPaneDOCUMENT ME!private intscrollPaneSizeDOCUMENT ME!private static longserialVersionUIDUse serialVersionUID for interoperability.private booleanshowFrameBorderDOCUMENT ME!private booleanshowNumbersequals zDim of original 4D before 4D to 3D conversion.private int[]sliceOldNumberred, green, and blue origContrast remains constant until applyButton is pressed, restores contrast if cancelButton is pressed.private javax.swing.JSlidersliderDOCUMENT ME!private longstartTime= localTime2 - localTime.private booleanstopcontaining only 5 msec. sleep commands.private javax.swing.JToggleButtonstopButtonDOCUMENT ME!private longstopTime= localTime2 - localTime.private intstructureYDOCUMENT ME!private javax.swing.JTextFieldtextActualPerSecondDOCUMENT ME!private javax.swing.JTextFieldtextAnimationFrameNote that an attempt to have DocumentListener for textAnimationFrame set the slider value was unsuccessful.private javax.swing.JTextFieldtextFramesPerSecondDOCUMENT ME!javax.swing.JToggleButton[]toggleArrayDOCUMENT ME!private javax.swing.JToolBartoolBarDOCUMENT ME!private javax.swing.JPaneltopPaneland innerPanel placed in scrollPane.private intxScreenDOCUMENT ME!private intyScreenDOCUMENT ME!private floatzoomDOCUMENT ME!private intzShowDOCUMENT ME!private intzSliceDOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.ViewJFrameBase
absoluteGoToButton, absoluteGoToPanel, absoluteLabel, absoluteLabelVals, absolutePanel, absoluteXLabel, absoluteXTextField, absoluteYLabel, absoluteYTextField, absoluteZLabel, absoluteZTextField, defaultLUTa, defaultLUTb, displayMode, IMAGE_A, IMAGE_A_B, IMAGE_B, isClosing, linkedScrolling, linkFrame, linkTriFrame, 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, tabbedPane, 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 ViewJFrameAnimate(ModelImage _imageA, ModelLUT _LUTa, ModelImage _imageB, ModelLUT _LUTb, ModelRGB _RGBTA, ModelRGB _RGBTB, ViewJFrameBase controlFrame, int nRow, int nColumn, int originalZDim, boolean showFrameBorder, java.awt.Color borderCol, boolean disposeImage)Makes a frame of the animated image.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent event)Calls various methods depending on the action.private voidaddControlPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)Method that adds components to the control paenl.private javax.swing.JToolBarbuildAnimateToolBar(java.awt.event.ActionListener al)Method to build the toolbar for the Animate frame.private voidbuildControlPanel()Panel that sets the at rest frame number and the desired frames per second and reports the actual frames per second.private voidbuildMenu()This method builds a menu which contains the options Save image as and Close Animate.private voidbuildScrollPane()Make a scroll frame and puts an image component into it.voidcancelBrightness()Resets current slice's brightness and contrast to original.voidcomponentResized(java.awt.event.ComponentEvent event)Resizes frame and all components.private javax.swing.JLabelcreateLabel(java.lang.String title)Helper method to create a label with the proper font and font color.voiddispose()Disposes of components and frame.ViewControlsImagegetControls()Get control widgets for frame.ModelImagegetImageA()Accessor that returns the reference to imageA.ModelImagegetImageB()Accessor that returns the reference to imageB.private javax.swing.JButtonmakeSeparator()Makes a separator for the use in the toolbars.voidremoveControls()Does nothing.voidsetActiveImage(int active)Does nothing.voidsetAlphaBlend(int value)Does nothing.voidsetBrightness(int brightness, float contrast)Sets the brightness and contrast of the component image.voidsetControls()Does nothing.voidsetDisposeImages(boolean doDispose)DOCUMENT ME!voidsetEnabled(boolean flag)Does nothing.voidsetFramesPerSecond(int fps)Sets the slider value (for invoking save image from dialog).voidsetImageB(ModelImage _imageB)Does nothing.voidsetPaintBitmapSwitch(boolean paintBitmapSwitch)Does nothing.voidsetRGBTA(ModelRGB RGBT)Sets the RGB LUT table for ARGB image A.voidsetRGBTB(ModelRGB RGBT)Sets the RGB LUT table for ARGB image B.voidsetSlice(int slice)Sets the slice to be displayed and updates title frame.voidsetTimeSlice(int slice)Does nothing.voidsetTitle()Set the title of the frame with the image name and magnification.voidstateChanged(javax.swing.event.ChangeEvent e)Sets values based on knob along slider.protected booleantestParameter(java.lang.String str, double minValue, double maxValue)Tests that the entered parameter is in range.voidupdateFrame(float sX, float sY)Does nothing.booleanupdateImageExtents()Does nothing.booleanupdateImages()Does nothing.booleanupdateImages(boolean forceShow)This methods calls the componentImage's update method to redraw the screen.booleanupdateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)Does nothing.voidwindowActivated(java.awt.event.WindowEvent event)Does nothing.voidwindowClosed(java.awt.event.WindowEvent event)Does nothing.voidwindowClosing(java.awt.event.WindowEvent event)Stops thread, calls close.voidwindowDeactivated(java.awt.event.WindowEvent event)Does nothing.voidwindowDeiconified(java.awt.event.WindowEvent event)Does nothing.voidwindowIconified(java.awt.event.WindowEvent event)Does nothing.voidwindowOpened(java.awt.event.WindowEvent event)Does nothing.-
Methods inherited from class gov.nih.mipav.view.ViewJFrameBase
about, buildLabelPanel, canCloseImageBAfterLoad, close, close, closeImageB, componentHidden, componentMoved, componentShown, finalize, 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, setLUTa, setLUTb, setLUTs, setMessageText, setOpacityInfo, setpaintBitmap, setScannerPosition
-
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, 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
-
toggleArray
public javax.swing.JToggleButton[] toggleArray
DOCUMENT ME!
-
progressBar
ViewJProgressBar progressBar
currently running.
-
actualPerSecond
private float actualPerSecond
DOCUMENT ME!
-
alphaBlend
private float alphaBlend
DOCUMENT ME!
-
aps
private java.lang.String aps
set to give 2 digits to the right of the decimal.
-
backForthButton
private javax.swing.JToggleButton backForthButton
DOCUMENT ME!
-
bfRun
private boolean bfRun
DOCUMENT ME!
-
borderCol
private java.awt.Color borderCol
z slice.
-
buttonArray
private javax.swing.JButton[] buttonArray
DOCUMENT ME!
-
cForwardButton
private javax.swing.JToggleButton cForwardButton
DOCUMENT ME!
-
cfRun
private boolean cfRun
DOCUMENT ME!
-
componentImage
private ViewJComponentAnimate componentImage
with complex images.
-
componentY
private int componentY
DOCUMENT ME!
-
controlFrame
private ViewJFrameBase controlFrame
DOCUMENT ME!
-
controlPanel
private javax.swing.JPanel controlPanel
DOCUMENT ME!
-
controls
private ViewControlsImage controls
DOCUMENT ME!
-
cpGBC
private java.awt.GridBagConstraints cpGBC
DOCUMENT ME!
-
cpGBL
private java.awt.GridBagLayout cpGBL
DOCUMENT ME!
-
cReverseButton
private javax.swing.JToggleButton cReverseButton
DOCUMENT ME!
-
crRun
private boolean crRun
DOCUMENT ME!
-
cycleTime
private long cycleTime
DOCUMENT ME!
-
deleteButton
private javax.swing.JButton deleteButton
DOCUMENT ME!
-
disposeImage
private boolean disposeImage
DOCUMENT ME!
-
etchedBorder
private javax.swing.border.Border etchedBorder
DOCUMENT ME!
-
extents
private int[] extents
DOCUMENT ME!
-
forwardButton
private javax.swing.JToggleButton forwardButton
DOCUMENT ME!
-
fpsSlider
private javax.swing.JSlider fpsSlider
DOCUMENT ME!
-
framesPerSecond
private float framesPerSecond
DOCUMENT ME!
-
fRun
private boolean fRun
DOCUMENT ME!
-
gbcTP
private java.awt.GridBagConstraints gbcTP
DOCUMENT ME!
-
imageA
private ModelImage imageA
DOCUMENT ME!
-
imageB
private ModelImage imageB
DOCUMENT ME!
-
imageBufferA
private float[] imageBufferA
DOCUMENT ME!
-
imageBufferB
private float[] imageBufferB
DOCUMENT ME!
-
innerPanel
private javax.swing.JPanel innerPanel
DOCUMENT ME!
-
labelAnimationFrame
private javax.swing.JLabel labelAnimationFrame
DOCUMENT ME!
-
labelFramesPerSecond
private javax.swing.JLabel labelFramesPerSecond
DOCUMENT ME!
-
labelTable
private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel> labelTable
DOCUMENT ME!
-
localTime
private long localTime
newmsWait = msWait - msElapsed is passed to the sleep function.
-
localTime2
private long localTime2
DOCUMENT ME!
-
logMagDisplay
private boolean logMagDisplay
DOCUMENT ME!
-
LUTa
private ModelLUT LUTa
DOCUMENT ME!
-
LUTb
private ModelLUT LUTb
DOCUMENT ME!
-
menuObj
private ViewMenuBuilder menuObj
DOCUMENT ME!
-
minimumHeight
private int minimumHeight
DOCUMENT ME!
-
minimumToolBarWidth
private int minimumToolBarWidth
DOCUMENT ME!
-
mjpegQuality
private float mjpegQuality
DOCUMENT ME!
-
msElapsed
private long msElapsed
DOCUMENT ME!
-
msWait
private long msWait
DOCUMENT ME!
-
nColumn
private int nColumn
DOCUMENT ME!
-
newmsWait
private long newmsWait
DOCUMENT ME!
-
nf
private java.text.NumberFormat nf
DOCUMENT ME!
-
nImage
private int nImage
DOCUMENT ME!
-
nRow
private int nRow
DOCUMENT ME!
-
openingMenuBar
private javax.swing.JMenuBar openingMenuBar
DOCUMENT ME!
-
origBrightness
private int origBrightness
DOCUMENT ME!
-
origContrast
private float origContrast
red, green, and blue origBrightness remains constant until applyButton is pressed, restores brightness if cancelButton is pressed.
-
originalZDim
private int originalZDim
for 4D originalXDim and originalYDim are xDim and yDim before 4D to 3D conversion.
-
paintBuffer
private int[] paintBuffer
DOCUMENT ME!
-
pause
private boolean pause
DOCUMENT ME!
-
pauseButton
private javax.swing.JToggleButton pauseButton
DOCUMENT ME!
-
pixBuffer
private int[] pixBuffer
DOCUMENT ME!
-
pressedBorder
private javax.swing.border.Border pressedBorder
DOCUMENT ME!
-
recordButton
private javax.swing.JButton recordButton
DOCUMENT ME!
-
reverseButton
private javax.swing.JToggleButton reverseButton
DOCUMENT ME!
-
RGBTA
private ModelRGB RGBTA
DOCUMENT ME!
-
RGBTB
private ModelRGB RGBTB
DOCUMENT ME!
-
rRun
private boolean rRun
currently running.
-
scrollPane
private javax.swing.JScrollPane scrollPane
DOCUMENT ME!
-
scrollPaneSize
private int scrollPaneSize
DOCUMENT ME!
-
showFrameBorder
private boolean showFrameBorder
DOCUMENT ME!
-
showNumbers
private boolean showNumbers
equals zDim of original 4D before 4D to 3D conversion.
-
sliceOldNumber
private int[] sliceOldNumber
red, green, and blue origContrast remains constant until applyButton is pressed, restores contrast if cancelButton is pressed.
-
slider
private javax.swing.JSlider slider
DOCUMENT ME!
-
startTime
private long startTime
= localTime2 - localTime.
-
stopTime
private long stopTime
= localTime2 - localTime.
-
stop
private boolean stop
containing only 5 msec. sleep commands.
-
stopButton
private javax.swing.JToggleButton stopButton
DOCUMENT ME!
-
structureY
private int structureY
DOCUMENT ME!
-
textActualPerSecond
private javax.swing.JTextField textActualPerSecond
DOCUMENT ME!
-
textAnimationFrame
private javax.swing.JTextField textAnimationFrame
Note that an attempt to have DocumentListener for textAnimationFrame set the slider value was unsuccessful.
-
textFramesPerSecond
private javax.swing.JTextField textFramesPerSecond
DOCUMENT ME!
-
toolBar
private javax.swing.JToolBar toolBar
DOCUMENT ME!
-
topPanel
private javax.swing.JPanel topPanel
and innerPanel placed in scrollPane.
-
xScreen
private int xScreen
DOCUMENT ME!
-
yScreen
private int yScreen
DOCUMENT ME!
-
zoom
private float zoom
DOCUMENT ME!
-
zShow
private int zShow
DOCUMENT ME!
-
zSlice
private int zSlice
DOCUMENT ME!
-
-
Constructor Detail
-
ViewJFrameAnimate
public ViewJFrameAnimate(ModelImage _imageA, ModelLUT _LUTa, ModelImage _imageB, ModelLUT _LUTb, ModelRGB _RGBTA, ModelRGB _RGBTB, ViewJFrameBase controlFrame, int nRow, int nColumn, int originalZDim, boolean showFrameBorder, java.awt.Color borderCol, boolean disposeImage)
Makes a frame of the animated image.- Parameters:
_imageA- Model of imageA_LUTa- Model of LUT for image A_imageB- Model of imageB_LUTb- Model of LUT for image B_RGBTA- Model RGB LUT for color image (A) else null_RGBTB- Model RGB LUT for color image (B) else nullcontrolFrame- ViewJFrameBase passed to ViewJComponentAnimatenRow- rows of z images in 4D imagesnColumn- columns of z images in 4D imagesoriginalZDim- for 4D images equals zDim before 4D to 3D conversionshowFrameBorder- puts colored borders around z images in 4D imagesborderCol- color of the z image bordersdisposeImage- dispose of imageA and imageB on frame close
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Calls various methods depending on the action.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Specified by:
actionPerformedin classViewJFrameBase- Parameters:
event- event that triggered function
-
cancelBrightness
public void cancelBrightness()
Resets current slice's brightness and contrast to original.
-
componentResized
public void componentResized(java.awt.event.ComponentEvent event)
Resizes frame and all components.- Specified by:
componentResizedin interfacejava.awt.event.ComponentListener- Overrides:
componentResizedin classViewJFrameBase- Parameters:
event- event that triggered function
-
dispose
public void dispose()
Disposes of components and frame.- Overrides:
disposein classjava.awt.Window
-
getControls
public ViewControlsImage getControls()
Get control widgets for frame.- Specified by:
getControlsin classViewJFrameBase- Returns:
- controls
-
getImageA
public ModelImage getImageA()
Accessor that returns the reference to imageA.- Specified by:
getImageAin classViewJFrameBase- Returns:
- image
-
getImageB
public ModelImage getImageB()
Accessor that returns the reference to imageB.- Specified by:
getImageBin classViewJFrameBase- Returns:
- imageB
-
removeControls
public void removeControls()
Does nothing.- Specified by:
removeControlsin classViewJFrameBase
-
setActiveImage
public void setActiveImage(int active)
Does nothing.- Specified by:
setActiveImagein classViewJFrameBase- Parameters:
active- DOCUMENT ME!
-
setAlphaBlend
public void setAlphaBlend(int value)
Does nothing.- Specified by:
setAlphaBlendin classViewJFrameBase- Parameters:
value- DOCUMENT ME!
-
setBrightness
public void setBrightness(int brightness, float contrast)Sets the brightness and contrast of the component image. Set all slices to have the new brightness and contrast. Results in createImage producing an Image img[slice] for every slice.- Parameters:
brightness- Brightness to set.contrast- Contrast to set.
-
setControls
public void setControls()
Does nothing.- Specified by:
setControlsin classViewJFrameBase
-
setDisposeImages
public void setDisposeImages(boolean doDispose)
DOCUMENT ME!- Parameters:
doDispose- DOCUMENT ME!
-
setEnabled
public void setEnabled(boolean flag)
Does nothing.- Specified by:
setEnabledin classViewJFrameBase- Parameters:
flag- DOCUMENT ME!
-
setFramesPerSecond
public void setFramesPerSecond(int fps)
Sets the slider value (for invoking save image from dialog).- Parameters:
fps- int frames per second
-
setImageB
public void setImageB(ModelImage _imageB)
Does nothing.- Specified by:
setImageBin classViewJFrameBase- Parameters:
_imageB- DOCUMENT ME!
-
setPaintBitmapSwitch
public void setPaintBitmapSwitch(boolean paintBitmapSwitch)
Does nothing.- Specified by:
setPaintBitmapSwitchin classViewJFrameBase- Parameters:
paintBitmapSwitch- DOCUMENT ME!
-
setRGBTA
public void setRGBTA(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image A.- Specified by:
setRGBTAin classViewJFrameBase- Parameters:
RGBT- the new RGB LUT to be applied to the image
-
setRGBTB
public void setRGBTB(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image B.- Specified by:
setRGBTBin classViewJFrameBase- Parameters:
RGBT- the new RGB LUT to be applied to the image
-
setSlice
public void setSlice(int slice)
Sets the slice to be displayed and updates title frame.- Specified by:
setSlicein interfaceViewImageUpdateInterface- Parameters:
slice- indicates image slice to be displayed
-
setTimeSlice
public void setTimeSlice(int slice)
Does nothing.- Specified by:
setTimeSlicein interfaceViewImageUpdateInterface- Parameters:
slice- DOCUMENT ME!
-
setTitle
public void setTitle()
Set the title of the frame with the image name and magnification.- Specified by:
setTitlein classViewJFrameBase
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent e)
Sets values based on knob along slider.- Specified by:
stateChangedin interfacejavax.swing.event.ChangeListener- Overrides:
stateChangedin classViewJFrameBase- Parameters:
e- Event that triggered this function
-
updateFrame
public void updateFrame(float sX, float sY)Does nothing.- Parameters:
sX- DOCUMENT ME!sY- DOCUMENT ME!
-
updateImageExtents
public boolean updateImageExtents()
Does nothing.- Specified by:
updateImageExtentsin interfaceViewImageUpdateInterface- Specified by:
updateImageExtentsin classViewJFrameBase- Returns:
- DOCUMENT ME!
- See Also:
ViewImageUpdateInterface
-
updateImages
public final boolean updateImages()
Does nothing.- Specified by:
updateImagesin interfaceViewImageUpdateInterface- Returns:
- DOCUMENT ME!
-
updateImages
public final boolean updateImages(boolean forceShow)
This methods calls the componentImage's update method to redraw the screen. Without LUT changes.- Specified by:
updateImagesin interfaceViewImageUpdateInterface- Parameters:
forceShow- unused parameter- Returns:
- boolean confirming successful update
-
updateImages
public final boolean updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
Does nothing.- Specified by:
updateImagesin interfaceViewImageUpdateInterface- Parameters:
LUTa- DOCUMENT ME!LUTb- DOCUMENT ME!forceShow- DOCUMENT ME!interpMode- DOCUMENT ME!- Returns:
- DOCUMENT ME!
-
windowActivated
public void windowActivated(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowActivatedin interfacejava.awt.event.WindowListener- Overrides:
windowActivatedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowClosed
public void windowClosed(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowClosedin interfacejava.awt.event.WindowListener- Overrides:
windowClosedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent event)
Stops thread, calls close.- Specified by:
windowClosingin interfacejava.awt.event.WindowListener- Overrides:
windowClosingin classViewJFrameBase- Parameters:
event- event that triggered function
-
windowDeactivated
public void windowDeactivated(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowDeactivatedin interfacejava.awt.event.WindowListener- Overrides:
windowDeactivatedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowDeiconified
public void windowDeiconified(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowDeiconifiedin interfacejava.awt.event.WindowListener- Overrides:
windowDeiconifiedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowIconified
public void windowIconified(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowIconifiedin interfacejava.awt.event.WindowListener- Overrides:
windowIconifiedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowOpened
public void windowOpened(java.awt.event.WindowEvent event)
Does nothing.- Specified by:
windowOpenedin interfacejava.awt.event.WindowListener- Overrides:
windowOpenedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
testParameter
protected boolean testParameter(java.lang.String str, double minValue, double maxValue)Tests that the entered parameter is in range.- Parameters:
str- the value entered by the userminValue- the minimum value this variable may be set tomaxValue- the maximum value this variable may be set to- Returns:
- boolean result of test
-
addControlPanel
private void addControlPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)Method that adds components to the control paenl.- Parameters:
c- component added to the control panelgbc- GridBagConstraints of added componentx- grdix locationy- gridy locationw- gridwidthh- gridheight
-
buildAnimateToolBar
private javax.swing.JToolBar buildAnimateToolBar(java.awt.event.ActionListener al)
Method to build the toolbar for the Animate frame.- Parameters:
al- Action listener (this frame)- Returns:
- The animation toolbar
-
buildControlPanel
private void buildControlPanel()
Panel that sets the at rest frame number and the desired frames per second and reports the actual frames per second.
-
buildMenu
private void buildMenu()
This method builds a menu which contains the options Save image as and Close Animate.
-
buildScrollPane
private void buildScrollPane()
Make a scroll frame and puts an image component into it.
-
createLabel
private javax.swing.JLabel createLabel(java.lang.String title)
Helper method to create a label with the proper font and font color.- Parameters:
title- Text of the label.- Returns:
- New label.
-
makeSeparator
private javax.swing.JButton makeSeparator()
Makes a separator for the use in the toolbars.- Returns:
- Separator button.
-
-