Package gov.nih.mipav.view.dialogs
Class JDialogRegistrationLeastSquares
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.JDialogRegistrationLeastSquares
- All Implemented Interfaces:
AlgorithmInterface,ScriptableActionInterface,DialogDefaultsInterface,ActionListener,FocusListener,ItemListener,WindowListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,RootPaneContainer,WindowConstants
- Direct Known Subclasses:
JDialogRegistrationValidation
public class JDialogRegistrationLeastSquares
extends JDialogScriptableBase
implements AlgorithmInterface
Dialog to get user input, then call algorithmRegLeastSquares. Selects image is match image, the image that gets transformed
until it is registered to the base image. Algorithms are executed in their own thread.
- Version:
- 0.1 May 19, 1999
- Author:
- Delia McGarry
- 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 TypeFieldDescriptionprotected ModelImageBase image - register match image to base image.private JComboBoxCombo box with image names for choosing base image.private intprivate intNumber of dimensions in match image.private floatprivate booleanDOCUMENT ME!private booleanprivate doubleprivate doubleprivate booleanDOCUMENT ME!private AlgorithmRegLeastSquaresAlgorithm to run from this dialog.protected ModelImageMatch image - register match image to base image.private JComboBoxprivate Stringprivate JLabelprivate JComboBoxprivate intTells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maximumprivate JLabelprotected ModelImageResult image - image returned from registration algorithm.private TransMatrixDOCUMENT ME!private static final longUse serialVersionUID for interoperability.private String[]Used to lock and unlock images.private JLabelprivate JTextFieldprivate ViewUserInterfaceReference to userface.private JLabelprivate JTextFieldprivate intDimensions of match image and base image.private floatResolutions of match image and base image.private floatResolutions of match image and base image.private intDimensions of match image and base image.private floatResolutions of match image and base image.private floatResolutions of match image and base image.private intDimensions of match image and base image.private floatResolutions of match image and base image.private floatResolutions of match image and base image.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).JDialogRegistrationLeastSquares(Frame theParentFrame, ModelImage im) Creates new registration dialog to get base image name.JDialogRegistrationLeastSquares(Frame theParentFrame, ModelImage _mi, ModelImage _ri) Creates a new JDialogRegistrationLeastSquares object. -
Method Summary
Modifier and TypeMethodDescriptionvoidactionPerformed(ActionEvent event) Closes dialog box when the OK button is pressed, set variables, and calls the algorithm.voidalgorithmPerformed(AlgorithmBase algorithm) This method is required if the AlgorithmPerformed interface is implemented.protected JPanelprotected JPanelprivate JComboBoxbuildImgComboBox(ModelImage image) Builds a list of images.protected voidSets arrays appropriately and calls registration algorithm, running it in it's own thread.protected voidStore the result image in the script runner's image table now that the action execution is finished.booleanAccessor that returns whether or not the algorithm successfully completed.Accessor that returns the image.Gets the result matrix (only used by OAR3D).protected voidinit()Initializes GuserInterface components and displays dialog.voiditemStateChanged(ItemEvent event) Changes the interpolation box to enabled or disabled depending on if the transform box is checked or not.voidsetFillValue(float fillValue) Accessor to set intensity value for out of bounds dataprotected voidSet the dialog GUI using the script parameters while running this algorithm as part of a script.voidsetMatrixDirectory(String matrixDirectory) Accessor to set directory in which the matrix file is storedvoidsetOutOfBoundsIndex(int outOfBoundsIndex) tells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maxprivate booleanSets the variables needed for calling the algorithm.protected voidRecord the parameters just used to run this algorithm in a script.private booleantestType(int type, float value) Determine if the value is in the image type range and within the float range since AlgorithmTransform does not use double buffers.private voidtransform2DVOI(ModelImage image, ModelImage destImage, float[] imgBuffer, TransMatrix trans) private voidtransform3DVOI(ModelImage image, ModelImage destImage, float[] imgBuffer, TransMatrix trans) 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:
-
baseImage
Base image - register match image to base image. -
comboBoxImage
Combo box with image names for choosing base image. -
DIM
private int DIMNumber of dimensions in match image. -
fromOAR3D
private boolean fromOAR3DDOCUMENT ME! -
lsCompleted
private boolean lsCompletedDOCUMENT ME! -
LSMatch
Algorithm to run from this dialog. -
matchImage
Match image - register match image to base image. -
resultImage
Result image - image returned from registration algorithm. -
resultMatrix
DOCUMENT ME! -
titles
Used to lock and unlock images. -
userInterface
Reference to userface. -
xdimA
private int xdimADimensions of match image and base image. -
ydimA
private int ydimADimensions of match image and base image. -
zdimA
private int zdimADimensions of match image and base image. -
xresA
private float xresAResolutions of match image and base image. -
yresA
private float yresAResolutions of match image and base image. -
zresA
private float zresAResolutions of match image and base image. -
xresB
private float xresBResolutions of match image and base image. -
yresB
private float yresBResolutions of match image and base image. -
zresB
private float zresBResolutions of match image and base image. -
outOfBoundsLabel
-
outOfBoundsComboBox
-
valueLabel
-
valueText
-
imageMin
private double imageMin -
imageMax
private double imageMax -
dataType
private int dataType -
outOfBoundsIndex
private int outOfBoundsIndexTells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image maximum -
fillValue
private float fillValue -
matrixLabel
-
matrixComboBox
-
matrixDirectory
-
userDirectoryLabel
-
userDirectoryText
-
haveNonPointVOI
private boolean haveNonPointVOI
-
-
Constructor Details
-
JDialogRegistrationLeastSquares
public JDialogRegistrationLeastSquares()Empty constructor needed for dynamic instantiation (used during scripting). -
JDialogRegistrationLeastSquares
Creates new registration dialog to get base image name.- Parameters:
theParentFrame- Parent frame.im- Source image.
-
JDialogRegistrationLeastSquares
Creates a new JDialogRegistrationLeastSquares object.- Parameters:
theParentFrame- DOCUMENT ME!_mi- DOCUMENT ME!_ri- DOCUMENT ME!
-
-
Method Details
-
actionPerformed
Closes dialog box when the OK button is pressed, set variables, 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.- Specified by:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
transform2DVOI
private void transform2DVOI(ModelImage image, ModelImage destImage, float[] imgBuffer, TransMatrix trans) -
transform3DVOI
private void transform3DVOI(ModelImage image, ModelImage destImage, float[] imgBuffer, TransMatrix trans) -
getLSCompleted
public boolean getLSCompleted()Accessor that returns whether or not the algorithm successfully completed.- Returns:
- boolean
-
getResultImage
Accessor that returns the image.- Returns:
- The result image
-
getResultMatrix
Gets the result matrix (only used by OAR3D).- Returns:
- TransMatrix
-
callAlgorithm
protected void callAlgorithm()Sets arrays appropriately and calls registration algorithm, running it in it's own thread.- 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
-
setOutOfBoundsIndex
public void setOutOfBoundsIndex(int outOfBoundsIndex) tells how to select fill value for out of bounds data 0 for image minimum 1 for NaN for float, zero otherwise. 2 for user defined 3 for image max- Parameters:
outOfBoundsIndex-
-
setFillValue
public void setFillValue(float fillValue) Accessor to set intensity value for out of bounds data- Parameters:
fillValue-
-
setMatrixDirectory
Accessor to set directory in which the matrix file is stored- Parameters:
matrixDirectory-
-
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.
-
init
protected void init()Initializes GuserInterface components and displays dialog. -
buildImagePanel
-
buildExtentsPanel
-
buildImgComboBox
Builds a list of images. Returns combobox.- Parameters:
image- DOCUMENT ME!- Returns:
- Newly created combo box.
-
itemStateChanged
Changes the interpolation box to enabled or disabled depending on if the transform box is checked or not.- Specified by:
itemStateChangedin interfaceItemListener- Overrides:
itemStateChangedin classJDialogBase- Parameters:
event- Event that triggered this function.
-
setVariables
private boolean setVariables()Sets the variables needed for calling the algorithm.- Returns:
trueif successful in setting variables.
-
testType
private boolean testType(int type, float value) Determine if the value is in the image type range and within the float range since AlgorithmTransform does not use double buffers.- Parameters:
type- image typevalue- value tested- Returns:
- true if value is within acceptable range
-