Package gov.nih.mipav.view.components
Class JPanelSigmas
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
gov.nih.mipav.view.components.JPanelSigmas
- All Implemented Interfaces:
FocusListener,ItemListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible
A panel containing fields which allow the user to input sigmas in three dimensions (of, for example, a gaussian
kernel). Also optionally normalizes the third dimension based on the image resolution.
- Author:
- mccreedy
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested 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 JCheckBoxguiprivate JLabellabelprivate JLabelprivate JLabelprivate JLabellabelprivate static final longUse serialVersionUID for interoperability.private ModelImagethe input image which will be processedprivate JTextFieldgui, sigma valueprivate JTextFieldgui, sigma valueprivate JTextFieldgui, sigma valueFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidenable3DComponents(boolean enable3D) Enables or disables the components in this panel which are 3D-related.voidenableLabelGaussX(boolean enable) voidenableLabelGaussY(boolean enable) voidenableResolutionCorrection(boolean enableCorrection) Enables or disables z-dimension sigma resolution correction.voidenableTextGaussX(boolean enable) voidenableTextGaussY(boolean enable) voidfocusGained(FocusEvent event) Do nothing.voidfocusLost(FocusEvent event) When the user clicks the mouse out of a text field, resets the neccessary variables.private floatReturns the amount of correction which should be applied to the z-direction sigma (assuming that correction is requested).private StringReturns a string indicating the z-direction sigma after applying the resolution correction factor.float[]Returns the sigmas to use in the algorithm, with the z-dim normalized if the user has requested it.float[]Returns the un-normalized sigmas in three dimensions (even if the input image is 2D).private voidinitGUI()Initialize the panel's GUI.booleanReturns whether the z-dimension sigma should be corrected based on the image resolution.voiditemStateChanged(ItemEvent event) Changes resolution normalization label based on whether or not the resolution normalization check box is checked.voidsetBorderName(String borderName) Set the name of the titled bordervoidsetSigmaX(float sigma) Changes the sigma value in the x direction.voidsetSigmaY(float sigma) Changes the sigma value in the y direction.voidsetSigmaZ(float sigma) Changes the un-normalized sigma value in the z direction.booleanTests the un-normalized sigma values against pre-determined okay values.private voidUpdates the resolution-corrected z-direction sigma label.Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDUse serialVersionUID for interoperability.- See Also:
-
correctionFactorCheckbox
gui -
correctionFactorLabel
label -
labelGaussX
-
labelGaussY
-
labelGaussZ
label -
srcImage
the input image which will be processed -
textGaussX
gui, sigma value -
textGaussY
gui, sigma value -
textGaussZ
gui, sigma value
-
-
Constructor Details
-
JPanelSigmas
Construct the sigma panel.- Parameters:
img- the input image which will be processed
-
-
Method Details
-
enable3DComponents
public void enable3DComponents(boolean enable3D) Enables or disables the components in this panel which are 3D-related.- Parameters:
enable3D- whether to enable the 3D components
-
enableResolutionCorrection
public void enableResolutionCorrection(boolean enableCorrection) Enables or disables z-dimension sigma resolution correction.- Parameters:
enableCorrection- whether to enable the correction
-
enableLabelGaussX
public void enableLabelGaussX(boolean enable) -
enableLabelGaussY
public void enableLabelGaussY(boolean enable) -
enableTextGaussX
public void enableTextGaussX(boolean enable) -
enableTextGaussY
public void enableTextGaussY(boolean enable) -
focusGained
Do nothing.- Specified by:
focusGainedin interfaceFocusListener- Parameters:
event- focus gained event
-
focusLost
When the user clicks the mouse out of a text field, resets the neccessary variables.- Specified by:
focusLostin interfaceFocusListener- Parameters:
event- focus lost event
-
getNormalizedSigmas
public float[] getNormalizedSigmas()Returns the sigmas to use in the algorithm, with the z-dim normalized if the user has requested it.- Returns:
- a 2 sigma array if the image is 2D, 3 sigmas if the input image is 3D (with the 3rd dim optionally normalized)
-
getUnnormalized3DSigmas
public float[] getUnnormalized3DSigmas()Returns the un-normalized sigmas in three dimensions (even if the input image is 2D). This is used to record the values in the text fields when saving dialog defaults and during script recording.- Returns:
- a 3 element array of un-normalized floating-point sigmas
-
isResolutionCorrectionEnabled
public boolean isResolutionCorrectionEnabled()Returns whether the z-dimension sigma should be corrected based on the image resolution.- Returns:
- true if the z-dimension sigma should be corrected
-
itemStateChanged
Changes resolution normalization label based on whether or not the resolution normalization check box is checked.- Specified by:
itemStateChangedin interfaceItemListener- Parameters:
event- checkbox item change event
-
setSigmaX
public void setSigmaX(float sigma) Changes the sigma value in the x direction.- Parameters:
sigma- the new sigma
-
setSigmaY
public void setSigmaY(float sigma) Changes the sigma value in the y direction.- Parameters:
sigma- the new sigma
-
setSigmaZ
public void setSigmaZ(float sigma) Changes the un-normalized sigma value in the z direction.- Parameters:
sigma- the new sigma
-
testSigmaValues
public boolean testSigmaValues()Tests the un-normalized sigma values against pre-determined okay values.- Returns:
- true if all the sigmas are in a good range, false otherwise
-
getCorrectionFactor
private float getCorrectionFactor()Returns the amount of correction which should be applied to the z-direction sigma (assuming that correction is requested).- Returns:
- the amount to multiply the z-sigma by to correct for resolution differences
-
getCorrectionFactorString
Returns a string indicating the z-direction sigma after applying the resolution correction factor.- Returns:
- resolution corrected z-sigma string
-
setBorderName
Set the name of the titled border- Parameters:
borderName-
-
initGUI
private void initGUI()Initialize the panel's GUI. -
updateResolutionCorrection
private void updateResolutionCorrection()Updates the resolution-corrected z-direction sigma label.
-