Class JDialogRGBtoGray

  • 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 JDialogRGBtoGray
    extends JDialogScriptableBase
    implements AlgorithmInterface
    DOCUMENT ME!
    Version:
    0.1 Nov 17, 1998
    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
      JDialogRGBtoGray()
      Empty constructor needed for dynamic instantiation (used during scripting).
      JDialogRGBtoGray​(java.awt.Frame theParentFrame, ModelImage imA)
      Sets variables needed to call algorithm.
    • 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.
      protected void callAlgorithm()
      Calls the algorithm.
      protected void doPostAlgorithmActions()
      Store the result image in the script runner's image table now that the action execution is finished.
      ModelImage getResultImage()
      Accessor that returns the result image.
      private void init()
      Sets up the GUI (panels, buttons, etc) and displays it on the screen.
      void setDisplayLocNew()
      Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.
      void setDisplayLocReplace()
      Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.
      void setEqualRange​(boolean equalRange)  
      protected void setGUIFromParams()
      Set the dialog GUI using the script parameters while running this algorithm as part of a script.
      void setIntensityAverage​(boolean intensityAverage)
      Sets whether intensity averaging is performed to determine which which channels should be used in calculating the gray.
      void setMaxB​(float maxB)  
      void setMaxG​(float maxG)  
      void setMaxR​(float maxR)  
      void setMinB​(float minB)  
      void setMinG​(float minG)  
      void setMinR​(float minR)  
      void setRGBEqual()
      Sets the red, green, and blue values to equal values.
      void setRGBGraphics()
      Sets the red, green, and blue values to computer graphic values.
      void setRGBValues​(float rVal, float gVal, float bVal)
      Sets the red, green, and blue values to the given parameters.
      void setThreshold​(float threshold)
      Sets the threshold for threshold average.
      void setThresholdAverage​(boolean thresholdAverage)
      Sets whether threshold averaging is performed - Only include those components greater than threshold.
      private boolean setVariables()
      Use the GUI results to set up the variables needed to run the algorithm.
      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
      • blueValue

        private float blueValue
        DOCUMENT ME!
      • destinationGroup

        private javax.swing.ButtonGroup destinationGroup
        DOCUMENT ME!
      • destinationPanel

        private javax.swing.JPanel destinationPanel
        DOCUMENT ME!
      • displayLoc

        private int displayLoc
        DOCUMENT ME!
      • equalButton

        private javax.swing.JRadioButton equalButton
        DOCUMENT ME!
      • graphicsButton

        private javax.swing.JRadioButton graphicsButton
        DOCUMENT ME!
      • greenValue

        private float greenValue
        DOCUMENT ME!
      • intensityAverage

        private boolean intensityAverage
        DOCUMENT ME!
      • labelR

        private javax.swing.JLabel labelR
        DOCUMENT ME!
      • labelG

        private javax.swing.JLabel labelG
        DOCUMENT ME!
      • labelB

        private javax.swing.JLabel labelB
        DOCUMENT ME!
      • newImage

        private javax.swing.JRadioButton newImage
        DOCUMENT ME!
      • redValue

        private float redValue
        set the values to the defaults -- based on a default of equal values.
      • replaceImage

        private javax.swing.JRadioButton replaceImage
        DOCUMENT ME!
      • resultImage

        private ModelImage resultImage
        DOCUMENT ME!
      • textR

        private javax.swing.JTextField textR
        DOCUMENT ME!
      • textG

        private javax.swing.JTextField textG
        DOCUMENT ME!
      • textB

        private javax.swing.JTextField textB
        DOCUMENT ME!
      • textThreshold

        private javax.swing.JTextField textThreshold
        DOCUMENT ME!
      • threshold

        private float threshold
        DOCUMENT ME!
      • thresholdAverage

        private boolean thresholdAverage
        DOCUMENT ME!
      • thresholdCheckBox

        private javax.swing.JCheckBox thresholdCheckBox
        DOCUMENT ME!
      • userButton

        private javax.swing.JRadioButton userButton
        DOCUMENT ME!
      • equalRangeButton

        private javax.swing.JRadioButton equalRangeButton
      • unequalRangeButton

        private javax.swing.JRadioButton unequalRangeButton
      • labelMinR

        private javax.swing.JLabel labelMinR
      • labelMinG

        private javax.swing.JLabel labelMinG
      • labelMinB

        private javax.swing.JLabel labelMinB
      • labelMaxR

        private javax.swing.JLabel labelMaxR
      • labelMaxG

        private javax.swing.JLabel labelMaxG
      • labelMaxB

        private javax.swing.JLabel labelMaxB
      • textMinR

        private javax.swing.JTextField textMinR
      • textMinG

        private javax.swing.JTextField textMinG
      • textMinB

        private javax.swing.JTextField textMinB
      • textMaxR

        private javax.swing.JTextField textMaxR
      • textMaxG

        private javax.swing.JTextField textMaxG
      • textMaxB

        private javax.swing.JTextField textMaxB
      • equalRange

        private boolean equalRange
      • minR

        private float minR
      • maxR

        private float maxR
      • minG

        private float minG
      • maxG

        private float maxG
      • minB

        private float minB
      • maxB

        private float maxB
    • Constructor Detail

      • JDialogRGBtoGray

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

        public JDialogRGBtoGray​(java.awt.Frame theParentFrame,
                                ModelImage imA)
        Sets variables needed to call algorithm.
        Parameters:
        theParentFrame - Parent frame
        imA - Source image
    • 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 result image.
        Returns:
        The result image.
      • setDisplayLocNew

        public void setDisplayLocNew()
        Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.
      • setDisplayLocReplace

        public void setDisplayLocReplace()
        Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.
      • setIntensityAverage

        public void setIntensityAverage​(boolean intensityAverage)
        Sets whether intensity averaging is performed to determine which which channels should be used in calculating the gray.
        Parameters:
        intensityAverage - DOCUMENT ME!
      • setRGBEqual

        public void setRGBEqual()
        Sets the red, green, and blue values to equal values. The values represent the proportion of one color to another (i.e. they must add up to 1.0).
      • setRGBGraphics

        public void setRGBGraphics()
        Sets the red, green, and blue values to computer graphic values. The values represent the proportion of one color to another (i.e. they must add up to 1.0).
      • setRGBValues

        public void setRGBValues​(float rVal,
                                 float gVal,
                                 float bVal)
        Sets the red, green, and blue values to the given parameters. The values represent the proportion of one color to another (i.e. they must add up to 1.0).
        Parameters:
        rVal - the red proportion
        gVal - the green proportion
        bVal - the blue proportion
      • setThreshold

        public void setThreshold​(float threshold)
        Sets the threshold for threshold average.
        Parameters:
        threshold - DOCUMENT ME!
      • setThresholdAverage

        public void setThresholdAverage​(boolean thresholdAverage)
        Sets whether threshold averaging is performed - Only include those components greater than threshold.
        Parameters:
        thresholdAverage - DOCUMENT ME!
      • setEqualRange

        public void setEqualRange​(boolean equalRange)
      • setMinR

        public void setMinR​(float minR)
      • setMaxR

        public void setMaxR​(float maxR)
      • setMinG

        public void setMinG​(float minG)
      • setMaxG

        public void setMaxG​(float maxG)
      • setMinB

        public void setMinB​(float minB)
      • setMaxB

        public void setMaxB​(float maxB)
      • 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
      • init

        private void init()
        Sets up the GUI (panels, buttons, etc) and displays it on the screen.
      • setVariables

        private boolean setVariables()
        Use the GUI results to set up the variables needed to run the algorithm.
        Returns:
        true if parameters set successfully, false otherwise.