Class JDialogCrop

  • All Implemented Interfaces:
    AlgorithmInterface, ScriptableActionInterface, DialogDefaultsInterface, java.awt.event.ActionListener, java.awt.event.FocusListener, java.awt.event.ItemListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

    public class JDialogCrop
    extends JDialogScriptableBase
    implements AlgorithmInterface
    Dialog to get user input, then call the crop algorithm.
    Version:
    1.0 June 10, 1999
    Author:
    Matthew J. McAuliffe, Ph.D.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JDialog

        javax.swing.JDialog.AccessibleJDialog
      • Nested classes/interfaces inherited from class java.awt.Dialog

        java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
      • Nested classes/interfaces inherited from class java.awt.Window

        java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Constructor Summary

      Constructors 
      Constructor Description
      JDialogCrop()
      Empty constructor needed for dynamic instantiation (used during scripting).
      JDialogCrop​(ModelImage im)
      Used primarily for the script to store variables and run the algorithm.
      JDialogCrop​(java.awt.Frame theParentFrame, ModelImage im)
      Creates new dialog for cropping image.
      JDialogCrop​(java.awt.Frame theParentFrame, ModelImage im, boolean noninteractive)
      Constructor for doing non-interactive cropping (border will be zero) primarily used by VOI's pop-up menu
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void actionPerformed​(java.awt.event.ActionEvent event)
      Closes dialog box when the OK button is pressed and calls the algorithm.
      void algorithmPerformed​(AlgorithmBase algorithm)
      This method is required if the AlgorithmPerformed interface is implemented.
      private boolean calcLowerResol()
      This method calculates the lower X, lower Y, and lower Z coordinates(millimeters) for the CROP VOI region.
      void callAlgorithm()
      DOCUMENT ME!
      protected void doPostAlgorithmActions()
      Store the result image in the script runner's image table now that the action execution is finished.
      private boolean findBounds()
      This method finds the bounding box when CROP apply to 2D, 3D VOI images.
      ModelImage getResultImage()
      Accessor that returns the image.
      private void init()
      Sets up GUI variables and displays dialog.
      void setBorderSize​(int borderSize)
      Accessor that sets the borderSize.
      protected void setGUIFromParams()
      Set the dialog GUI using the script parameters while running this algorithm as part of a script.
      void setXBounds​(int[] xBounds)
      Accessor that set xBounds.
      void setYBounds​(int[] yBounds)
      Accessor that set yBounds.
      void setZBounds​(int[] zBounds)
      Accessor that set zBounds.
      protected void storeParamsFromGUI()
      Record the parameters just used to run this algorithm in a script.
      • Methods inherited from class javax.swing.JDialog

        addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
      • Methods inherited from class java.awt.Dialog

        addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
      • 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, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, 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, remove, 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, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Use serialVersionUID for interoperability.
        See Also:
        Constant Field Values
      • borderSize

        private int borderSize
        DOCUMENT ME!
      • imgRes

        private float[] imgRes
        DOCUMENT ME!
      • startPos

        private float[] startPos
        DOCUMENT ME!
      • lowXmm

        private float lowXmm
        DOCUMENT ME!
      • lowYmm

        private float lowYmm
        DOCUMENT ME!
      • lowZmm

        private float lowZmm
        DOCUMENT ME!
      • nDims

        private int nDims
        DOCUMENT ME!
      • resultImage

        private ModelImage resultImage
        DOCUMENT ME!
      • resXUnit

        private int resXUnit
        DOCUMENT ME!
      • resYUnit

        private int resYUnit
        DOCUMENT ME!
      • textBorderSize

        private javax.swing.JTextField textBorderSize
        DOCUMENT ME!
      • textWidth

        private javax.swing.JTextField textWidth
        DOCUMENT ME!
      • textHeight

        private javax.swing.JTextField textHeight
        DOCUMENT ME!
      • textDepth

        private javax.swing.JTextField textDepth
        DOCUMENT ME!
      • textXmin

        private javax.swing.JTextField textXmin
        DOCUMENT ME!
      • textYmin

        private javax.swing.JTextField textYmin
        DOCUMENT ME!
      • textZmin

        private javax.swing.JTextField textZmin
        DOCUMENT ME!
      • textLowerXmm

        private javax.swing.JTextField textLowerXmm
        DOCUMENT ME!
      • textLowerYmm

        private javax.swing.JTextField textLowerYmm
        DOCUMENT ME!
      • textLowerZmm

        private javax.swing.JTextField textLowerZmm
        DOCUMENT ME!
      • xBounds

        private int[] xBounds
        DOCUMENT ME!
      • yBounds

        private int[] yBounds
        DOCUMENT ME!
      • zBounds

        private int[] zBounds
        DOCUMENT ME!
    • Constructor Detail

      • JDialogCrop

        public JDialogCrop()
        Empty constructor needed for dynamic instantiation (used during scripting).
      • JDialogCrop

        public JDialogCrop​(ModelImage im)
        Used primarily for the script to store variables and run the algorithm.
        Parameters:
        im - Source image.
      • JDialogCrop

        public JDialogCrop​(java.awt.Frame theParentFrame,
                           ModelImage im)
        Creates new dialog for cropping image.
        Parameters:
        theParentFrame - Parent frame
        im - Source image
      • JDialogCrop

        public JDialogCrop​(java.awt.Frame theParentFrame,
                           ModelImage im,
                           boolean noninteractive)
        Constructor for doing non-interactive cropping (border will be zero) primarily used by VOI's pop-up menu
        Parameters:
        theParentFrame - the parent frame
        im - the image
        noninteractive - if this is true, no dialog will pop up and the algorithm will run
    • Method Detail

      • actionPerformed

        public void actionPerformed​(java.awt.event.ActionEvent event)
        Closes dialog box when the OK button is pressed and calls the algorithm.
        Specified by:
        actionPerformed in interface java.awt.event.ActionListener
        Overrides:
        actionPerformed in class JDialogBase
        Parameters:
        event - Event that triggers function
      • algorithmPerformed

        public void algorithmPerformed​(AlgorithmBase algorithm)
        This method is required if the AlgorithmPerformed interface is implemented. It is called by the algorithms when it has completed or failed to to complete, so that the dialog can be display the result image and/or clean up.
        Specified by:
        algorithmPerformed in interface AlgorithmInterface
        Parameters:
        algorithm - Algorithm that caused the event.
      • getResultImage

        public ModelImage getResultImage()
        Accessor that returns the image.
        Returns:
        The result image.
      • setBorderSize

        public void setBorderSize​(int borderSize)
        Accessor that sets the borderSize.
        Parameters:
        borderSize - DOCUMENT ME!
      • setXBounds

        public void setXBounds​(int[] xBounds)
        Accessor that set xBounds.
        Parameters:
        xBounds - DOCUMENT ME!
      • setYBounds

        public void setYBounds​(int[] yBounds)
        Accessor that set yBounds.
        Parameters:
        yBounds - DOCUMENT ME!
      • setZBounds

        public void setZBounds​(int[] zBounds)
        Accessor that set zBounds.
        Parameters:
        zBounds - DOCUMENT ME!
      • doPostAlgorithmActions

        protected void doPostAlgorithmActions()
        Store the result image in the script runner's image table now that the action execution is finished.
        Overrides:
        doPostAlgorithmActions in class JDialogScriptableBase
      • setGUIFromParams

        protected void setGUIFromParams()
        Set the dialog GUI using the script parameters while running this algorithm as part of a script.
        Specified by:
        setGUIFromParams in class JDialogScriptableBase
      • calcLowerResol

        private boolean calcLowerResol()
        This method calculates the lower X, lower Y, and lower Z coordinates(millimeters) for the CROP VOI region.
      • findBounds

        private boolean findBounds()
        This method finds the bounding box when CROP apply to 2D, 3D VOI images.
        Returns:
        True if the bounds were calculated successfully, false otherwise.
      • init

        private void init()
        Sets up GUI variables and displays dialog.