Package gov.nih.mipav.view.dialogs
Class JDialogHoughHyperbola
- 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.JDialogHoughHyperbola
-
- All Implemented Interfaces:
AlgorithmInterface
,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 JDialogHoughHyperbola extends JDialogBase implements AlgorithmInterface, java.awt.event.ItemListener, java.awt.event.WindowListener
Dialog to create Hough transform with p, q, r1, r2, and theta output for hyperbola detection in binary image, where p is the x coordinate of the hyperbola center, q is the y coordinate of the hyperbola center, r1 is the 1/2 the transverse axis, r2 is 1/2 the conjugate axis, and theta is the angle of the transverse axis with the x axis.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKAction
-
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
-
-
Field Summary
Fields Modifier and Type Field Description private javax.swing.JTextField
countText
private int
countThreshold
Number of counts required to find a hyperbolaprivate javax.swing.JTextField
degreesWidthText
private AlgorithmHoughHyperbola
hAlgo
DOCUMENT ME!private double
hyperbolaRangeTolerance
Maximum percent by which perimiter pixels can deviate from the hyperbola equationprivate ModelImage
image
DOCUMENT ME!private int
maxBufferSize
The maximum Hough transform size in megabytes - default is currently 256private javax.swing.JTextField
maxBufferText
private javax.swing.JTextField
maxCyclesText
private double
maxDegreesBinWidth
For theta must have bin width <= maxDegreesBinWidthprivate int
maxHyperbolaFindCycles
Maximum number of pointSetsRequired triplet point acquisitions that is allowed to occurprivate double
maxPixelBinWidth
For xCenter, yCenter, r1, and r2 must bin width <= maxPixelBinWidthprivate double
maxPointDistance
Largest allowable distance between 2 of 3 picked pointsprivate javax.swing.JTextField
maxPointText
private int
minPixels
Minimum number of points found on a hyperbola for it to be valid.private javax.swing.JTextField
minPixelsText
DOCUMENT ME!private double
minPointDistance
Smallest allowable distance between 2 of 3 picked pointsprivate javax.swing.JTextField
minPointText
private int
numHyperbolas
number of hyperbolas to be foundprivate javax.swing.JTextField
numHyperbolasText
private javax.swing.JTextField
pixelWidthText
private int
pointSetsRequired
Number of point triplets required before each hyperbola find is performedprivate javax.swing.JTextField
pointSetsText
private ModelImage
resultImage
DOCUMENT ME!private static long
serialVersionUID
Use serialVersionUID for interoperability.private int
sidePointsForTangent
Maximum number of points to take from each side of a point on a curve in determining a tangentprivate javax.swing.JTextField
sideText
private javax.swing.JTextField
toleranceText
-
Fields 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, voiManager
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JDialogHoughHyperbola(ModelImage image)
Creates a new JDialogHoughHyperbola object.JDialogHoughHyperbola(java.awt.Frame theParentFrame, ModelImage im)
Creates new dialog.
-
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 void
callAlgorithm()
DOCUMENT ME!private void
init()
Initializes GUI components and displays dialog.void
itemStateChanged(java.awt.event.ItemEvent event)
itemStateChanged.private boolean
setVariables()
Use the GUI results to set up the variables needed to run the algorithm.void
windowClosing(java.awt.event.WindowEvent event)
Disposes of error dialog, then frame.-
Methods 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, windowDeactivated, windowDeiconified, windowIconified, windowOpened
-
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
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
hAlgo
private AlgorithmHoughHyperbola hAlgo
DOCUMENT ME!
-
image
private ModelImage image
DOCUMENT ME!
-
resultImage
private ModelImage resultImage
DOCUMENT ME!
-
minPixels
private int minPixels
Minimum number of points found on a hyperbola for it to be valid.
-
minPixelsText
private javax.swing.JTextField minPixelsText
DOCUMENT ME!
-
sidePointsForTangent
private int sidePointsForTangent
Maximum number of points to take from each side of a point on a curve in determining a tangent
-
sideText
private javax.swing.JTextField sideText
-
pixelWidthText
private javax.swing.JTextField pixelWidthText
-
maxPixelBinWidth
private double maxPixelBinWidth
For xCenter, yCenter, r1, and r2 must bin width <= maxPixelBinWidth
-
degreesWidthText
private javax.swing.JTextField degreesWidthText
-
maxDegreesBinWidth
private double maxDegreesBinWidth
For theta must have bin width <= maxDegreesBinWidth
-
numHyperbolas
private int numHyperbolas
number of hyperbolas to be found
-
numHyperbolasText
private javax.swing.JTextField numHyperbolasText
-
minPointDistance
private double minPointDistance
Smallest allowable distance between 2 of 3 picked points
-
minPointText
private javax.swing.JTextField minPointText
-
maxPointDistance
private double maxPointDistance
Largest allowable distance between 2 of 3 picked points
-
maxPointText
private javax.swing.JTextField maxPointText
-
pointSetsRequired
private int pointSetsRequired
Number of point triplets required before each hyperbola find is performed
-
pointSetsText
private javax.swing.JTextField pointSetsText
-
countThreshold
private int countThreshold
Number of counts required to find a hyperbola
-
countText
private javax.swing.JTextField countText
-
hyperbolaRangeTolerance
private double hyperbolaRangeTolerance
Maximum percent by which perimiter pixels can deviate from the hyperbola equation
-
toleranceText
private javax.swing.JTextField toleranceText
-
maxCyclesText
private javax.swing.JTextField maxCyclesText
-
maxHyperbolaFindCycles
private int maxHyperbolaFindCycles
Maximum number of pointSetsRequired triplet point acquisitions that is allowed to occur
-
maxBufferText
private javax.swing.JTextField maxBufferText
-
maxBufferSize
private int maxBufferSize
The maximum Hough transform size in megabytes - default is currently 256
-
-
Constructor Detail
-
JDialogHoughHyperbola
public JDialogHoughHyperbola(ModelImage image)
Creates a new JDialogHoughHyperbola object.- Parameters:
image
- DOCUMENT ME!
-
JDialogHoughHyperbola
public JDialogHoughHyperbola(java.awt.Frame theParentFrame, ModelImage im)
Creates new dialog.- Parameters:
theParentFrame
- Parent frameim
- 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 interfacejava.awt.event.ActionListener
- Overrides:
actionPerformed
in classJDialogBase
- 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 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:
algorithmPerformed
in interfaceAlgorithmInterface
- Parameters:
algorithm
- Algorithm that caused the event.
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent event)
itemStateChanged.- Specified by:
itemStateChanged
in interfacejava.awt.event.ItemListener
- Overrides:
itemStateChanged
in classJDialogBase
- Parameters:
event
- DOCUMENT ME!
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent event)
Disposes of error dialog, then frame. Sets cancelled totrue
.- Specified by:
windowClosing
in interfacejava.awt.event.WindowListener
- Overrides:
windowClosing
in classJDialogBase
- Parameters:
event
- DOCUMENT ME!
-
callAlgorithm
private void callAlgorithm()
DOCUMENT ME!
-
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:
true
if parameters set successfully,false
otherwise.
-
-