Package gov.nih.mipav.view.dialogs
Class JDialogThreshold
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
javax.swing.JDialog
gov.nih.mipav.view.dialogs.JDialogBase
gov.nih.mipav.view.dialogs.JDialogScriptableBase
gov.nih.mipav.view.dialogs.JDialogThreshold
- All Implemented Interfaces:
AlgorithmInterface,ScriptableActionInterface,DialogDefaultsInterface,ActionListener,FocusListener,ItemListener,WindowListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,RootPaneContainer,WindowConstants
Dialog to get user input, then call the algorithm. The user has the option to generate a new image or replace the
source image. In addition the user can indicate if you wishes to have the algorithm applied to whole image or to the
VOI regions. In should be noted, that the algorithms are executed in their own thread.
- Version:
- 1.0 Nov 9, 1999
- Author:
- Matthew J. McAuliffe, Ph.D.
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKActionNested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialogNested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityTypeNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intDOCUMENT ME!private intDOCUMENT ME!private floatDOCUMENT ME!private ModelHistogramDOCUMENT ME!private ModelImageDOCUMENT ME!private JCheckBoxDOCUMENT ME!private booleanDOCUMENT ME!private JLabelDOCUMENT ME!private floatDOCUMENT ME!private static final intDOCUMENT ME!private JCheckBoxDOCUMENT ME!private floatDOCUMENT ME!private JRadioButtonDOCUMENT ME!private static final intDOCUMENT ME!private JCheckBoxDOCUMENT ME!private doubleDOCUMENT ME!private doubleDOCUMENT ME!private JComboBoxHolds the choices for the outputType.private intSame data-type, binary, or unsigned byte mask.private booleanor if the source image is to be replaced.private JRadioButtonDOCUMENT ME!private ModelImageDOCUMENT ME!private static final longUse serialVersionUID for interoperability.private JTextFieldDOCUMENT ME!private JTextFieldDOCUMENT ME!private JTextFieldDOCUMENT ME!private floatDOCUMENT ME!private floatDOCUMENT ME!private AlgorithmThresholdDualDOCUMENT ME!private intDOCUMENT ME!private String[]DOCUMENT ME!private ViewUserInterfaceDOCUMENT ME!private JRadioButtonDOCUMENT ME!private JRadioButtonDOCUMENT ME!Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
displayInNewFrame, isComplete, scriptParametersFields inherited from class gov.nih.mipav.view.dialogs.JDialogBase
applyButton, bar, cancelButton, cancelFlag, closeButton, HELP, helpButton, mainDialogPanel, NEW, OKButton, parentFrame, progressBar, REPLACE, runInSeparateThread, runningScriptFlag, runQuiet, serif12, serif12B, voiManagerFields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabledFields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPEFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
ConstructorsConstructorDescriptionEmpty constructor needed for dynamic instantiation (used during scripting).JDialogThreshold(Frame theParentFrame, ModelImage im) Creates a new JDialogThreshold object. -
Method Summary
Modifier and TypeMethodDescriptionvoidactionPerformed(ActionEvent event) Closes dialog box when the OK button is pressed and calls the algorithm.voidalgorithmPerformed(AlgorithmBase algorithm) This method is required if the AlgorithmPerformed interface is implemented.voidDOCUMENT ME!protected voidOnce all the necessary variables are set, call the Gaussian Blur algorithm based on what type of image this is and whether or not there is a separate destination image.protected voidUsed to perform actions after the execution of the algorithm is completed (e.g., put the result image in the image table).private StringgetRangeString(int imageType) DOCUMENT ME!Accessor that returns the image.private voidinit()Sets up the GUI (panels, buttons, etc) and displays it on the screen.voiditemStateChanged(ItemEvent event) Sets the fill value text box to enabled or disabled depending on if the binary checkbox is selected.voidrunFromLUTFrame(ModelImage im, float lowerThres, float upperThres, float fillV, int output_type, boolean inverseFlag) Function for setting up/running the threshold algorithm from the ViewJFrameHistoLUT.voidAccessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.voidAccessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.voidsetFillValue(float scale) Accessor that sets the fill value.protected voidSet the dialog GUI using the script parameters while running this algorithm as part of a script.voidsetOutputType(int output_type) Accessor that sets the output type.voidsetRegionFlag(boolean flag) Accessor that sets the region flag.voidsetThres1(float threshold) Accessor that sets the first threshold.voidsetThres2(float threshold) Accessor that sets the second threshold.private booleanUse the GUI results to set up the variables needed to run the algorithm.protected voidRecord the parameters just used to run this algorithm in a script.Methods inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
getDialogActionString, insertScriptLine, isComplete, scriptRun, setCompleteMethods inherited from class gov.nih.mipav.view.dialogs.JDialogBase
buildApplyButton, buildButtons, buildCancelButton, buildCancelButton, buildCloseButton, buildHelpButton, buildImageComboBox, buildOKButton, buildOKButton, buildOKCancelButtons, buildTitledBorder, buildTitledBorder, createLabel, createProgressBar, createProgressBar, createTextField, focusGained, focusLost, getDialogName, isCancelled, isQuietRunning, isRunInSeparateThread, isScriptRunning, loadDefaults, loadDefaults, makeImageName, makeString, openNewFrame, saveDefaults, saveDefaults, setLeftHandSystem, setQuietRunning, setScriptRunning, setSeparateThread, setVisible, setVisible, setVisibleMenuBar, setVisibleStandard, setVOIManager, setWCSystem, testParameter, testParameterMin, updateFFTFileInfo, updateFileInfo, updateFileInfoOtherModality, updateFileInfoStatic, updateFileInfoStatic, updateFileTypeInfo, updateFileTypeInfo, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpenedMethods 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, updateMethods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBackMethods 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, toFrontMethods 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, validateTreeMethods 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
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDUse serialVersionUID for interoperability.- See Also:
-
DEFAULT
private static final int DEFAULTDOCUMENT ME!- See Also:
-
OTSU
private static final int OTSUDOCUMENT ME!- See Also:
-
MAX_ENT
private static final int MAX_ENTDOCUMENT ME!- See Also:
-
displayLoc
private int displayLocDOCUMENT ME! -
fillValue
private float fillValueDOCUMENT ME! -
histogram
DOCUMENT ME! -
image
DOCUMENT ME! -
inverseCheckbox
DOCUMENT ME! -
isInverse
private boolean isInverseDOCUMENT ME! -
labelThres2
DOCUMENT ME! -
maxEntCheckbox
DOCUMENT ME! -
min
private float minDOCUMENT ME! -
max
private float maxDOCUMENT ME! -
newImage
DOCUMENT ME! -
otsuCheckbox
DOCUMENT ME! -
outMax
private double outMaxDOCUMENT ME! -
outMin
private double outMinDOCUMENT ME! -
outputBox
Holds the choices for the outputType. -
outputType
private int outputTypeSame data-type, binary, or unsigned byte mask. -
regionFlag
private boolean regionFlagor if the source image is to be replaced. -
replaceImage
DOCUMENT ME! -
resultImage
DOCUMENT ME! -
textFill
DOCUMENT ME! -
textThres1
DOCUMENT ME! -
textThres2
DOCUMENT ME! -
thres1
private float thres1DOCUMENT ME! -
thres2
private float thres2DOCUMENT ME! -
thresholdAlgo
DOCUMENT ME! -
thresholdType
private int thresholdTypeDOCUMENT ME! -
titles
DOCUMENT ME! -
userInterface
DOCUMENT ME! -
VOIRegions
DOCUMENT ME! -
wholeImage
DOCUMENT ME!
-
-
Constructor Details
-
JDialogThreshold
public JDialogThreshold()Empty constructor needed for dynamic instantiation (used during scripting). -
JDialogThreshold
Creates a new JDialogThreshold object.- Parameters:
theParentFrame- Parent frame.im- Source image.
-
-
Method Details
-
actionPerformed
Closes dialog box when the OK button is pressed and calls the algorithm.- Specified by:
actionPerformedin interfaceActionListener- Overrides:
actionPerformedin classJDialogBase- Parameters:
event- Event that triggers function.
-
algorithmPerformed
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:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
calcHistogram
public void calcHistogram()DOCUMENT ME! -
getResultImage
Accessor that returns the image.- Returns:
- The result image.
-
itemStateChanged
Sets the fill value text box to enabled or disabled depending on if the binary checkbox is selected.- Specified by:
itemStateChangedin interfaceItemListener- Overrides:
itemStateChangedin classJDialogBase- Parameters:
event- Event that cause the method to fire.
-
runFromLUTFrame
public void runFromLUTFrame(ModelImage im, float lowerThres, float upperThres, float fillV, int output_type, boolean inverseFlag) Function for setting up/running the threshold algorithm from the ViewJFrameHistoLUT.- Parameters:
im- ModelImage imagelowerThres- float lower thresholdupperThres- float upper thresholdfillV- float fill valueoutput_type- output type: same, binary, unsigned byte maskinverseFlag- normal or inverse threshold
-
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. -
setFillValue
public void setFillValue(float scale) Accessor that sets the fill value. Will not be used if writing out a binary image.- Parameters:
scale- Value to set fill value to.
-
setOutputType
public void setOutputType(int output_type) Accessor that sets the output type.- Parameters:
output_type- 0 is normal, 1 is binary, 2 is unsigned byte mask
-
setRegionFlag
public void setRegionFlag(boolean flag) Accessor that sets the region flag.- Parameters:
flag-trueindicates the whole image is blurred,falseindicates a region.
-
setThres1
public void setThres1(float threshold) Accessor that sets the first threshold.- Parameters:
threshold- Value to set threshold to (between min and max of image).
-
setThres2
public void setThres2(float threshold) Accessor that sets the second threshold.- Parameters:
threshold- Value to set threshold to (between min and max of image).
-
callAlgorithm
protected void callAlgorithm()Once all the necessary variables are set, call the Gaussian Blur algorithm based on what type of image this is and whether or not there is a separate destination image.- Specified by:
callAlgorithmin classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()Used to perform actions after the execution of the algorithm is completed (e.g., put the result image in the image table). Defaults to no action, override to actually have it do something.- Overrides:
doPostAlgorithmActionsin classJDialogScriptableBase
-
setGUIFromParams
protected void setGUIFromParams()Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
setGUIFromParamsin classJDialogScriptableBase
-
storeParamsFromGUI
Record the parameters just used to run this algorithm in a script.- Specified by:
storeParamsFromGUIin classJDialogScriptableBase- Throws:
ParserException- If there is a problem creating/recording the new parameters.
-
getRangeString
DOCUMENT ME!- Parameters:
imageType- DOCUMENT ME!- Returns:
- DOCUMENT ME!
-
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:
trueif parameters set successfully,falseotherwise.
-