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.JTextFieldcountTextprivate intcountThresholdNumber of counts required to find a hyperbolaprivate javax.swing.JTextFielddegreesWidthTextprivate AlgorithmHoughHyperbolahAlgoDOCUMENT ME!private doublehyperbolaRangeToleranceMaximum percent by which perimiter pixels can deviate from the hyperbola equationprivate ModelImageimageDOCUMENT ME!private intmaxBufferSizeThe maximum Hough transform size in megabytes - default is currently 256private javax.swing.JTextFieldmaxBufferTextprivate javax.swing.JTextFieldmaxCyclesTextprivate doublemaxDegreesBinWidthFor theta must have bin width <= maxDegreesBinWidthprivate intmaxHyperbolaFindCyclesMaximum number of pointSetsRequired triplet point acquisitions that is allowed to occurprivate doublemaxPixelBinWidthFor xCenter, yCenter, r1, and r2 must bin width <= maxPixelBinWidthprivate doublemaxPointDistanceLargest allowable distance between 2 of 3 picked pointsprivate javax.swing.JTextFieldmaxPointTextprivate intminPixelsMinimum number of points found on a hyperbola for it to be valid.private javax.swing.JTextFieldminPixelsTextDOCUMENT ME!private doubleminPointDistanceSmallest allowable distance between 2 of 3 picked pointsprivate javax.swing.JTextFieldminPointTextprivate intnumHyperbolasnumber of hyperbolas to be foundprivate javax.swing.JTextFieldnumHyperbolasTextprivate javax.swing.JTextFieldpixelWidthTextprivate intpointSetsRequiredNumber of point triplets required before each hyperbola find is performedprivate javax.swing.JTextFieldpointSetsTextprivate ModelImageresultImageDOCUMENT ME!private static longserialVersionUIDUse serialVersionUID for interoperability.private intsidePointsForTangentMaximum number of points to take from each side of a point on a curve in determining a tangentprivate javax.swing.JTextFieldsideTextprivate javax.swing.JTextFieldtoleranceText-
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 voidactionPerformed(java.awt.event.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 voidcallAlgorithm()DOCUMENT ME!private voidinit()Initializes GUI components and displays dialog.voiditemStateChanged(java.awt.event.ItemEvent event)itemStateChanged.private booleansetVariables()Use the GUI results to set up the variables needed to run the algorithm.voidwindowClosing(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:
actionPerformedin interfacejava.awt.event.ActionListener- Overrides:
actionPerformedin 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:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent event)
itemStateChanged.- Specified by:
itemStateChangedin interfacejava.awt.event.ItemListener- Overrides:
itemStateChangedin 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:
windowClosingin interfacejava.awt.event.WindowListener- Overrides:
windowClosingin 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:
trueif parameters set successfully,falseotherwise.
-
-