Package gov.nih.mipav.view.dialogs
Class JDialogHistogram2Dim
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.JDialogHistogram2Dim
- All Implemented Interfaces:
AlgorithmInterface,ScriptableActionInterface,DialogDefaultsInterface,ActionListener,FocusListener,ItemListener,WindowListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,RootPaneContainer,WindowConstants
Dialog to get user input Create 2D histogram of images with equal dimensions or 2D histograms with 2 colors inside a
RGB image. Algorithms are executed in their own thread.
- See Also:
-
Nested Class Summary
Nested 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 intNumber of bins for first image.private booleanDefault number of bins for first image.private JLabelLabel description for bin1.private JTextFieldTextfield for bin1.private intNumber of bins for second image.private booleanDefault number of bins for first image.private JLabelLabel description for bin1.private JTextFieldTextfield for bin2.private JCheckBoxCheckbox to select blue image.private intNumber of colors present.private booleanIf true, the range of second image is same as the range of the first image.private booleanIf true, calculates the log of the result image for better visualization.private ModelImageFirst image (Source image).private JCheckBoxCheckbox to select green image.private AlgorithmHistogram2DimInstance of AlgorithmHistogram2Dim.private JComboBoxCombobox to select the second image.private JLabelImage label.private JCheckBoxCheckbox to select linear rescaling of second image.private doubleMax intensity values in Red, Green and Blue images respectively.private doubleMax intensity values in Red, Green and Blue images respectively.private doubleMax intensity values in Red, Green and Blue images respectively.private doubleMin. intensity values in Red, Green and Blue images respectivelyprivate doubleMin. intensity values in Red, Green and Blue images respectivelyprivate doubleMin. intensity values in Red, Green and Blue images respectivelyprivate doublePossible intensity values for second image.private doublePossible intensity values for first image.private JCheckBoxCheckbox to select Red image.private JCheckBoxCheckbox to display the log of result image.private ModelImageImage where the result is stored.private ModelImageSecond image (Base image).private static final longUse serialVersionUID for interoperability.private String[]String titles for the new windows.private booleanIf true, blue image is selected as of the two images for calculating histogram.private booleanIf true, green image is selected as of the two images for calculating histogram.private booleanIf true, red image is selected as of the two images for calculating histogram.private ViewUserInterfaceKeeps record of the present structure of the application.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).JDialogHistogram2Dim(Frame theParentFrame, ModelImage im) Creates new dialog. -
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.private JComboBoxbuildComboBox(ModelImage image) Builds a list of images.protected voidDOCUMENT ME!protected voidStore the result image in the script runner's image table now that the action execution is finished.Accessor that returns the image.private voidinit()Initializes GUI components and displays dialog.voiditemStateChanged(ItemEvent event) itemStateChanged.voidsetBin1(int bin1) Accessor that sets bin1.voidsetBin1Default(boolean bin1Default) DOCUMENT ME!voidsetBin2(int bin2) Accessor that sets bin2.voidsetBin2Default(boolean bin2Default) DOCUMENT ME!voidsetDoLinearRescale(boolean doLinearRescale) Accessor that sets whether or not linear rescaling occurs.voidsetDoLogResult(boolean doLogResult) Accessor that sets whether or not log of result image is displayed.protected voidSet the dialog GUI using the script parameters while running this algorithm as part of a script.voidsetSecondImage(ModelImage secondImage) Accessor to set the secondImage.voidsetUseBlue(boolean useBlue) Accessor that setes if the blue channel is used.voidsetUseGreen(boolean useGreen) Accessor that sets if the green channel is used.voidsetUseRed(boolean useRed) Accessor that sets if the red channel is used.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:
-
bin1
private int bin1Number of bins for first image. -
bin1Default
private boolean bin1DefaultDefault number of bins for first image. Default is 256. -
bin1Label
Label description for bin1. -
bin1Text
Textfield for bin1. -
bin2
private int bin2Number of bins for second image. -
bin2Default
private boolean bin2DefaultDefault number of bins for first image. Default is 256. -
bin2Label
Label description for bin1. -
bin2Text
Textfield for bin2. -
blueCheckBox
Checkbox to select blue image. -
colorsPresent
private int colorsPresentNumber of colors present. -
doLinearRescale
private boolean doLinearRescaleIf true, the range of second image is same as the range of the first image. -
doLogResult
private boolean doLogResultIf true, calculates the log of the result image for better visualization. -
firstImage
First image (Source image). -
greenCheckBox
Checkbox to select green image. -
histogram2DimAlgo
Instance of AlgorithmHistogram2Dim. -
imageComboBox
Combobox to select the second image. -
labelImage
Image label. -
linearCheckbox
Checkbox to select linear rescaling of second image. -
maxR
private double maxRMax intensity values in Red, Green and Blue images respectively. -
maxG
private double maxGMax intensity values in Red, Green and Blue images respectively. -
maxB
private double maxBMax intensity values in Red, Green and Blue images respectively. -
minR
private double minRMin. intensity values in Red, Green and Blue images respectively -
minG
private double minGMin. intensity values in Red, Green and Blue images respectively -
minB
private double minBMin. intensity values in Red, Green and Blue images respectively -
possibleInt2Values
private double possibleInt2ValuesPossible intensity values for second image. -
possibleIntValues
private double possibleIntValuesPossible intensity values for first image. -
redCheckBox
Checkbox to select Red image. -
resultCheckbox
Checkbox to display the log of result image. -
resultImage
Image where the result is stored. -
secondImage
Second image (Base image). -
titles
String titles for the new windows. -
useBlue
private boolean useBlueIf true, blue image is selected as of the two images for calculating histogram. -
useGreen
private boolean useGreenIf true, green image is selected as of the two images for calculating histogram. -
useRed
private boolean useRedIf true, red image is selected as of the two images for calculating histogram. -
userInterface
Keeps record of the present structure of the application.
-
-
Constructor Details
-
JDialogHistogram2Dim
public JDialogHistogram2Dim()Empty constructor needed for dynamic instantiation (used during scripting). -
JDialogHistogram2Dim
Creates new dialog.- Parameters:
theParentFrame- Parent frameim- 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 algorithm 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.
-
getResultImage
Accessor that returns the image.- Returns:
- The result image.
-
itemStateChanged
itemStateChanged.- Specified by:
itemStateChangedin interfaceItemListener- Overrides:
itemStateChangedin classJDialogBase- Parameters:
event- DOCUMENT ME!
-
setBin1
public void setBin1(int bin1) Accessor that sets bin1.- Parameters:
bin1- DOCUMENT ME!
-
setBin1Default
public void setBin1Default(boolean bin1Default) DOCUMENT ME!- Parameters:
bin1Default- DOCUMENT ME!
-
setBin2
public void setBin2(int bin2) Accessor that sets bin2.- Parameters:
bin2- DOCUMENT ME!
-
setBin2Default
public void setBin2Default(boolean bin2Default) DOCUMENT ME!- Parameters:
bin2Default- DOCUMENT ME!
-
setDoLinearRescale
public void setDoLinearRescale(boolean doLinearRescale) Accessor that sets whether or not linear rescaling occurs.- Parameters:
doLinearRescale- DOCUMENT ME!
-
setDoLogResult
public void setDoLogResult(boolean doLogResult) Accessor that sets whether or not log of result image is displayed.- Parameters:
doLogResult- If true, displays the log of result image for better visualization
-
setSecondImage
Accessor to set the secondImage.- Parameters:
secondImage- DOCUMENT ME!
-
setUseBlue
public void setUseBlue(boolean useBlue) Accessor that setes if the blue channel is used.- Parameters:
useBlue- DOCUMENT ME!
-
setUseGreen
public void setUseGreen(boolean useGreen) Accessor that sets if the green channel is used.- Parameters:
useGreen- DOCUMENT ME!
-
setUseRed
public void setUseRed(boolean useRed) Accessor that sets if the red channel is used.- Parameters:
useRed- DOCUMENT ME!
-
callAlgorithm
protected void callAlgorithm()DOCUMENT ME!- Specified by:
callAlgorithmin classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()Store the result image in the script runner's image table now that the action execution is finished.- 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.
-
buildComboBox
Builds a list of images. Returns combobox. List must be all color or all black and white.- Parameters:
image- DOCUMENT ME!- Returns:
- Newly created combo box.
-
init
private void init()Initializes GUI components and displays dialog. -
setVariables
private boolean setVariables()Use the GUI results to set up the variables needed to run the algorithm.- Returns:
trueif parameters set successfully,falseotherwise.
-