Package gov.nih.mipav.view.dialogs
Class JDialogTLRC
- 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.JDialogTLRC
-
- All Implemented Interfaces:
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 JDialogTLRC extends JDialogBase
Dialog to enter points for creating an Talaraich image.- Author:
- William Gandler, Pierre-Louis Bazin
- See Also:
TalairachTransformInfo
,AlgorithmTalairachTransform
,JDialogTalairachTransform
,JDialogACPC
, 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 ModelImage
acpcImage
private javax.swing.JRadioButton
anteriorPt
private WildMagic.LibFoundation.Mathematics.Vector3f
anteriorPt3Df
private javax.swing.JButton
applyTalairachButton
private static float
ATLAS_AC_TO_LAT
private static float
ATLAS_AC_TO_TOP
private static float
ATLAS_BOT_TO_AC
private static float
ATLAS_FRONT_TO_AC
private static float
ATLAS_PC_TO_BACK
private javax.swing.JButton
cancelTalairachButton
private javax.swing.JButton
clearTalairachButton
private ViewJFrameTriImage
frame
private boolean
haveAnteriorPt
private boolean
haveInferiorPt
private boolean
haveLeftPt
private boolean
havePosteriorPt
private boolean
haveRightPt
private boolean
haveSuperiorPt
private javax.swing.JRadioButton
inferiorPt
private WildMagic.LibFoundation.Mathematics.Vector3f
inferiorPt3Df
private int
interpolation
private javax.swing.JRadioButton
leftPt
private WildMagic.LibFoundation.Mathematics.Vector3f
leftPt3Df
private static float
MAX_ALLOWED_DEVIATION
private static float
MIN_ALLOWED_DEVIATION
private ModelImage
originalImage
private javax.swing.JRadioButton
posteriorPt
private WildMagic.LibFoundation.Mathematics.Vector3f
posteriorPt3Df
private javax.swing.JRadioButton
rightPt
private WildMagic.LibFoundation.Mathematics.Vector3f
rightPt3Df
private javax.swing.JButton
setTalairachButton
private javax.swing.JRadioButton
superiorPt
private WildMagic.LibFoundation.Mathematics.Vector3f
superiorPt3Df
private ModelImage
talairachImage
private TalairachTransformInfo
transform
-
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 JDialogTLRC(ViewJFrameTriImage theParentFrame, ModelImage orig, ModelImage acpc, ModelImage tlrc, TalairachTransformInfo trans, int interp)
This method creates a dialog for selecting markers used for generating a Talairach view image from an AC-PC aligned view image
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent event)
If user clicks "Set", sets point here and in component image.private void
computeTrilinearImage(float[] img, float xi, float yi, float zi, int nix, int niy, int niz, float[] result, int xr, int yr, int zr, int nrx, int nry, int nrz)
Transforms and resamples volume using trilinear interpolationprivate void
convertToTalairach()
Creates Talairach image based on points that were set in component images.private void
init()
Initializes GUI components of dialog.private void
setAnteriorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets anterior label based on the point.private void
setInferiorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets inferior label based on the point.private void
setLeftPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets left label based on the point.private void
setPosteriorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets posterior label based on the point.private void
setRightPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets right label based on the point.private void
setSuperiorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets superior label based on the point.void
setTalairachHeader(ModelImage img)
add the Talairach Transform to the image headerprivate WildMagic.LibFoundation.Mathematics.Vector3f
toOriginal(WildMagic.LibFoundation.Mathematics.Vector3f in)
to convert frame coordinates into the original image onesprivate void
transformTalairachTrilinear(float[] imgBuffer, double[][] xfrm, float ires, int iXdim, int iYdim, int iZdim, float oXres, float oYres, float oZres, int oXdim, int oYdim, int oZdim, int oXlow, int oYlow, int oZlow, int oXhigh, int oYhigh, int oZhigh, ViewJProgressBar progressBar, ModelImage image)
Transforms and resamples volume using trilinear interpolation-
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, itemStateChanged, 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, 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
-
MAX_ALLOWED_DEVIATION
private static final float MAX_ALLOWED_DEVIATION
- See Also:
- Constant Field Values
-
MIN_ALLOWED_DEVIATION
private static final float MIN_ALLOWED_DEVIATION
- See Also:
- Constant Field Values
-
ATLAS_FRONT_TO_AC
private static final float ATLAS_FRONT_TO_AC
- See Also:
- Constant Field Values
-
ATLAS_PC_TO_BACK
private static final float ATLAS_PC_TO_BACK
- See Also:
- Constant Field Values
-
ATLAS_BOT_TO_AC
private static final float ATLAS_BOT_TO_AC
- See Also:
- Constant Field Values
-
ATLAS_AC_TO_TOP
private static final float ATLAS_AC_TO_TOP
- See Also:
- Constant Field Values
-
ATLAS_AC_TO_LAT
private static final float ATLAS_AC_TO_LAT
- See Also:
- Constant Field Values
-
frame
private ViewJFrameTriImage frame
-
originalImage
private ModelImage originalImage
-
acpcImage
private ModelImage acpcImage
-
talairachImage
private ModelImage talairachImage
-
transform
private TalairachTransformInfo transform
-
applyTalairachButton
private javax.swing.JButton applyTalairachButton
-
cancelTalairachButton
private javax.swing.JButton cancelTalairachButton
-
anteriorPt
private javax.swing.JRadioButton anteriorPt
-
posteriorPt
private javax.swing.JRadioButton posteriorPt
-
superiorPt
private javax.swing.JRadioButton superiorPt
-
inferiorPt
private javax.swing.JRadioButton inferiorPt
-
leftPt
private javax.swing.JRadioButton leftPt
-
rightPt
private javax.swing.JRadioButton rightPt
-
setTalairachButton
private javax.swing.JButton setTalairachButton
-
clearTalairachButton
private javax.swing.JButton clearTalairachButton
-
anteriorPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f anteriorPt3Df
-
posteriorPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f posteriorPt3Df
-
superiorPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f superiorPt3Df
-
inferiorPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f inferiorPt3Df
-
leftPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f leftPt3Df
-
rightPt3Df
private WildMagic.LibFoundation.Mathematics.Vector3f rightPt3Df
-
haveAnteriorPt
private boolean haveAnteriorPt
-
havePosteriorPt
private boolean havePosteriorPt
-
haveSuperiorPt
private boolean haveSuperiorPt
-
haveInferiorPt
private boolean haveInferiorPt
-
haveLeftPt
private boolean haveLeftPt
-
haveRightPt
private boolean haveRightPt
-
interpolation
private int interpolation
-
-
Constructor Detail
-
JDialogTLRC
public JDialogTLRC(ViewJFrameTriImage theParentFrame, ModelImage orig, ModelImage acpc, ModelImage tlrc, TalairachTransformInfo trans, int interp)
This method creates a dialog for selecting markers used for generating a Talairach view image from an AC-PC aligned view image- Parameters:
theParentFrame
- The tri planar view frame that called this dialog.orig
- Image to generate a Talairach view from.acpc
- ACPC-aligned imagetlrc
- Talairach-aligned image
-
-
Method Detail
-
init
private void init()
Initializes GUI components of dialog.
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
If user clicks "Set", sets point here and in component image. If user clicks "Clear", clears point here and in component image. If user clicks "Apply", creates new Talairach image based on points. If user clicks "Cancel", disposes this dialog.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Overrides:
actionPerformed
in classJDialogBase
- Parameters:
event
- Event that triggered this method.
-
setAnteriorPt
private void setAnteriorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets anterior label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
setPosteriorPt
private void setPosteriorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets posterior label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
setSuperiorPt
private void setSuperiorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets superior label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
setInferiorPt
private void setInferiorPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets inferior label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
setLeftPt
private void setLeftPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets left label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
setRightPt
private void setRightPt(WildMagic.LibFoundation.Mathematics.Vector3f pt)
Sets right label based on the point. Enables "Apply" if all points have been set.- Parameters:
pt
- Point that was set.
-
convertToTalairach
private void convertToTalairach()
Creates Talairach image based on points that were set in component images.
-
setTalairachHeader
public void setTalairachHeader(ModelImage img)
add the Talairach Transform to the image header
-
toOriginal
private WildMagic.LibFoundation.Mathematics.Vector3f toOriginal(WildMagic.LibFoundation.Mathematics.Vector3f in)
to convert frame coordinates into the original image ones
-
transformTalairachTrilinear
private void transformTalairachTrilinear(float[] imgBuffer, double[][] xfrm, float ires, int iXdim, int iYdim, int iZdim, float oXres, float oYres, float oZres, int oXdim, int oYdim, int oZdim, int oXlow, int oYlow, int oZlow, int oXhigh, int oYhigh, int oZhigh, ViewJProgressBar progressBar, ModelImage image)
Transforms and resamples volume using trilinear interpolation- Parameters:
imgBuffer
- Image array.xfrm
- Transformation matrix to be applied.ires
- In resolution (same in all dimensions).iXdim
- In X dimension.iYdim
- In Y dimension.iZdim
- In Z dimension.oXres
- Out X resolution.oYres
- Out Y resolution.oZres
- Out Z resolution.oXdim
- Out X dimension.oYdim
- Out Y dimension.oZdim
- Out Z dimension.oXlow
- Out X low.oYlow
- Out Y low.oZlow
- Out Z low.oXhigh
- Out X high.oYhigh
- Out Y high.oZhigh
- Out Z high.progressBar
- Progress bar.image
- Image.
-
computeTrilinearImage
private void computeTrilinearImage(float[] img, float xi, float yi, float zi, int nix, int niy, int niz, float[] result, int xr, int yr, int zr, int nrx, int nry, int nrz)
Transforms and resamples volume using trilinear interpolation
-
-