Class ViewJFrameRegistration
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- gov.nih.mipav.view.ViewJFrameBase
-
- gov.nih.mipav.view.ViewJFrameRegistration
-
- All Implemented Interfaces:
VOIManagerInterfaceListener
,ViewImageUpdateInterface
,java.awt.event.ActionListener
,java.awt.event.ComponentListener
,java.awt.event.FocusListener
,java.awt.event.ItemListener
,java.awt.event.MouseListener
,java.awt.event.MouseMotionListener
,java.awt.event.WindowListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.event.ChangeListener
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
public class ViewJFrameRegistration extends ViewJFrameBase implements java.awt.event.ItemListener, javax.swing.event.ChangeListener, java.awt.event.FocusListener, java.awt.event.MouseMotionListener, java.awt.event.MouseListener, VOIManagerInterfaceListener
ViewJFrameRegistration is called in ViewJFrameImage. ViewJFrameRegistration calls ViewJComponentRegistration.
In ordinary image dragging you simply drag one image. Here the adjustable slice is moved while the reference slice stays fixed, and a bilinear transformation followed by an alpha blending of the 2 images occurs. Because g.drawImage in ViewJComponentBase draws the blended image, the movement cannot simply be performed by changing the parameters of g.drawImage.
The adjustable image slice moves are determined by floating point values fed into a transform routine that performs bilinear interpolation.
The file menu has 1 item, Close registration. A reference slice slider selects the slice which does not move and against which the other slices are adjusted. An adjusted slice slider selects a slice which will be moved into a desired alignment with the reference slice. An alpha blending slider determines the percentages of the image produced by the reference slice(image R) and the adjusted slice(imageA). 24 toolbar buttons are present:
1.) Display LUT table calls forth a display panel which allows the user to set separate histograms for the reference and adjusted slices.
2.) Create checkerboard pattern
3.) Magnify image 2.0X.
4.) Magnify image 0.5X.
5.) Window region of imageB
6.) Apply least squares alignment.
7.) Apply thin plate spline alignment.
8.) Reset to return slice to original state and remove all markers
9.) Commit the slice to the image.
10.) Set the pixel increment for image translations and movements of the rotation center. Values can range from 0.01 to 2048.0. Movements of the rotation center will only be performed to the nearest integer. The default value is 1.0 pixels.
11.) Put in translate mode. In this mode the image can either be moved with the up, down, right, and left buttons or moved a distance and direction with mouse dragging. 12.) up button for image translation in translate mode and rotation center and marker movements in POINT_VOI mode.
13.) down button for image translation in translate mode and rotation center and marker movements in POINT_VOI mode.
14.) right button for image translation in translate mode and rotation center and marker movements in POINT_VOI mode.
15.) left button for image translation in translate mode and rotation center and marker movements in POINT_VOI mode.
16.) Set degree increment for image rotations. Values can range from 0.01 to 360.0 degrees. The default value is 1.0 degrees.
17.) Put in rotate mode for rotating the image. In this mode the image can be moved either with the cw and ccw buttons or moved an angle around the rotation center point as given by mouse dragging. The initial rotation point is the center, but a new rotation point can be set with a mouse press.
18.) cw button for rotating an image clockwise in rotate mode.
19.) ccw button for rotating an image counterclockwise in rotate mode.
20.) Put in POINT_VOI mode for setting the location of reference slice markers. Red markers are used.
21.) Put in the POINT_VOI mode for setting the location of adjusted slice markers. Green markers are used. Green markers move with translations and rotations.
22.) Delete selected reference slice markers.
23.) Delete selected adjusted slice markers.
24.) Return to default mode.
- Version:
- 1.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
ViewJFrameRegistration.JDialogIncrement
Class for the two dialogs for incrementing - the pixel increment dialog and the degree increment dialog.-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
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 int
adjMark
DOCUMENT ME!static int
ADJMARK
DOCUMENT ME!private javax.swing.JToggleButton
adjMarkButton
DOCUMENT ME!private javax.swing.JButton
adjMarkMinusButton
DOCUMENT ME!private AlgorithmCostFunctions2D
algoCost
private javax.swing.JSlider
alphaSlider
DOCUMENT ME!private int
bufferFactor
DOCUMENT ME!private int
bufferSize
DOCUMENT ME!private javax.swing.JButton[]
buttonArray
DOCUMENT ME!private javax.swing.JButton
calculateCostButton
private javax.swing.JButton
ccwButton
DOCUMENT ME!private ViewJComponentRegistration
componentImage
DOCUMENT ME!private int
componentY
DOCUMENT ME!private javax.swing.JPanel
controlPanel
DOCUMENT ME!private ViewControlsImage
controls
DOCUMENT ME!private javax.swing.JScrollPane
costFunctionScrollPane
Scroll Pane for the Text Areaprivate javax.swing.JTextArea
costFunctionTextArea
private java.awt.GridBagConstraints
cpGBC
DOCUMENT ME!private java.awt.GridBagLayout
cpGBL
DOCUMENT ME!private int
curAdjMark
DOCUMENT ME!private int
curRefMark
DOCUMENT ME!private javax.swing.JButton
cwButton
DOCUMENT ME!private javax.swing.JToggleButton
defaultModeButton
DOCUMENT ME!private float
degreeIncrement
DOCUMENT ME!private javax.swing.JButton
degreeIncrementButton
DOCUMENT ME!private boolean
doDrag
DOCUMENT ME!private boolean
doneLeastSquares
DOCUMENT ME!private boolean
doRegionB
DOCUMENT ME!private javax.swing.JButton
downButton
DOCUMENT ME!private javax.swing.JToggleButton
dragButton
DOCUMENT ME!private javax.swing.border.Border
etchedBorder
DOCUMENT ME!private int[]
extents
DOCUMENT ME!private javax.swing.JMenu
fileMenu
DOCUMENT ME!private java.awt.Font
font12
DOCUMENT ME!private java.awt.GridBagConstraints
gbc
DOCUMENT ME!private boolean
haveVOIPoints
DOCUMENT ME!private javax.swing.JMenu
helpMenu
DOCUMENT ME!private int
i
DOCUMENT ME!private ModelImage
image
DOCUMENT ME!private float[]
imageBufferA
DOCUMENT ME!private float[]
imageBufferB
DOCUMENT ME!private float[]
imageBufferOriginalB
DOCUMENT ME!private int
imageSize
DOCUMENT ME!private javax.swing.JMenuItem
itemClose
DOCUMENT ME!private javax.swing.JMenuItem
itemHelp
DOCUMENT ME!private int
j
DOCUMENT ME!private javax.swing.JLabel
labelAdjustedSlice
DOCUMENT ME!private javax.swing.JLabel
labelReferenceSlice
DOCUMENT ME!private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel>
labelTable
DOCUMENT ME!private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel>
labelTable2
DOCUMENT ME!private javax.swing.JButton
leftButton
DOCUMENT ME!private boolean
logMagDisplay
DOCUMENT ME!private int[]
markerType
DOCUMENT ME!private int
minimumToolBarWidth
DOCUMENT ME!private int
mode
DOCUMENT ME!private javax.swing.ButtonGroup
movementGroup
DOCUMENT ME!private int
n
DOCUMENT ME!private int
newAlphaBlend
DOCUMENT ME!private int[]
newExtents
DOCUMENT ME!private int
nImage
DOCUMENT ME!private int
nVOI
DOCUMENT ME!private javax.swing.JMenuBar
openingMenuBar
DOCUMENT ME!private int[]
pixBuffer
DOCUMENT ME!private int[]
pixBufferB
DOCUMENT ME!private float
pixelIncrement
DOCUMENT ME!private javax.swing.JButton
pixelIncrementButton
DOCUMENT ME!private double[][]
pointSetA
DOCUMENT ME!private double[][]
pointSetB
DOCUMENT ME!private int
refMark
DOCUMENT ME!static int
REFMARK
DOCUMENT ME!private javax.swing.JToggleButton
refMarkButton
DOCUMENT ME!private javax.swing.JButton
refMarkMinusButton
DOCUMENT ME!private javax.swing.JButton
rightButton
DOCUMENT ME!private javax.swing.JToggleButton
rotateButton
DOCUMENT ME!static int
ROTATIONCENTER
The 3 types of markers - rotation center, reference slice, and adjusted slice.private javax.swing.JScrollPane
scrollPane
DOCUMENT ME!private int
scrollPaneSize
DOCUMENT ME!private ModelImage
secondImage
DOCUMENT ME!private static long
serialVersionUID
Use serialVersionUID for interoperability.protected java.awt.Font
serif12
DOCUMENT ME!private ModelSimpleImage
simpleImg1
Holds extents, other info about firstImage and SecondImageprivate ModelSimpleImage
simpleImg2
Holds extents, other info about firstImage and SecondImageprivate javax.swing.JSlider
slider
DOCUMENT ME!private javax.swing.JSlider
slider2
DOCUMENT ME!private javax.swing.JTextField
textAdjustedSlice
DOCUMENT ME!private javax.swing.JTextField
textReferenceSlice
DOCUMENT ME!private TransMatrix
tMatrix
Identity matrix for testing costjavax.swing.JToggleButton[]
toggleArray
DOCUMENT ME!private javax.swing.JToolBar
toolBar
DOCUMENT ME!private javax.swing.JToolBar
toolBar2
DOCUMENT ME!private javax.swing.JPanel
topPanel
DOCUMENT ME!private javax.swing.JToggleButton
translateButton
DOCUMENT ME!private javax.swing.JButton
upButton
DOCUMENT ME!private VOI
voi
DOCUMENT ME!private VOIManagerInterface
voiManager
private java.util.Vector<WildMagic.LibFoundation.Mathematics.Vector3f>
VOIPoints
DOCUMENT ME!private int
xDim
DOCUMENT ME!private TransMatrix
xfrm
DOCUMENT ME!private TransMatrix
xfrmBA
DOCUMENT ME!private TransMatrix
xfrmD
DOCUMENT ME!private TransMatrix
xfrmH
DOCUMENT ME!private int[]
xOrg
DOCUMENT ME!private int[]
xPres
DOCUMENT ME!private float
xRes
DOCUMENT ME!private float
xRotation
DOCUMENT ME!private int
xScreen
DOCUMENT ME!private int
yDim
DOCUMENT ME!private int[]
yOrg
DOCUMENT ME!private int[]
yPres
DOCUMENT ME!private float
yRes
DOCUMENT ME!private float
yRotation
DOCUMENT ME!private int
yScreen
DOCUMENT ME!private int
zLastSlice
DOCUMENT ME!private int
zLastSlice2
DOCUMENT ME!private float
zoom
DOCUMENT ME!private int
zSlice
DOCUMENT ME!private int
zSlice2
DOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.ViewJFrameBase
absoluteGoToButton, absoluteGoToPanel, absoluteLabel, absoluteLabelVals, absolutePanel, absoluteXLabel, absoluteXTextField, absoluteYLabel, absoluteYTextField, absoluteZLabel, absoluteZTextField, alphaBlend, defaultLUTa, defaultLUTb, displayMode, IMAGE_A, IMAGE_A_B, IMAGE_B, imageA, imageB, isClosing, linkedScrolling, linkFrame, linkTriFrame, LUTa, LUTb, progressBar, scannerLPS_APLabel, scannerLPS_APTextField, scannerLPS_GoToButton, scannerLPS_GoToPanel, scannerLPS_ISLabel, scannerLPS_ISTextField, scannerLPS_RLLabel, scannerLPS_RLTextField, scannerLPSLabel, scannerLPSLabelVals, scannerLPSPanel, scannerRAS_APLabel, scannerRAS_APTextField, scannerRAS_GoToButton, scannerRAS_GoToPanel, scannerRAS_ISLabel, scannerRAS_ISTextField, scannerRAS_RLLabel, scannerRAS_RLTextField, scannerRASLabel, scannerRASLabelVals, scannerRASPanel, scannerTabbedPane, tabbedPane, talGoToButton, talGoToPanel, talXLabel, talXTextField, talYLabel, talYTextField, talZLabel, talZTextField, userInterface, zoomMode
-
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description ViewJFrameRegistration(ModelImage _image, ModelImage _image2, ModelLUT _LUT, ModelLUT _LUT2)
Makes a frame of the manually registered image.ViewJFrameRegistration(ModelImage _image, ModelLUT _LUT)
Makes a frame of the manually registered image.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent event)
Calls various methods depending on the action.private void
addControlPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Adds a component to the control panel.void
addSphereVOIs(VOI annotations)
private void
addTopPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Adds a component to the top panel.private void
buildControlPanel(boolean isOne)
panel that sets the at rest frame number and the desired frames per second.private void
buildMenu()
this method builds a menu which contains the options Save image as and Close Registration.private javax.swing.JToolBar
buildRegistrationToolBar(java.awt.event.ActionListener al)
builds the first registration toolbar.private void
buildScrollPane()
Make a scroll frame and puts an image component into it.private javax.swing.JToolBar
buildToolBar2(java.awt.event.ActionListener al)
builds the second registration toolbar.TransMatrix
buildXfrm(double[] p1, double[] p2, Jama.Matrix R)
Builds 4x4 transformation matrix from R and T T=p2-R*p1.private void
calculateCostFunctionValues()
void
calculateResiduals()
Calculates the residuals of the least squares fit.void
close()
Disposes of components and frame.void
componentResized(java.awt.event.ComponentEvent event)
Resizes frame and all components.void
create3DVOI(boolean bIntersection)
private javax.swing.JLabel
createLabel(java.lang.String title)
Helper method to create a label with the proper font and font color.double
euclideanDistance(double[] ptA, double[] ptB)
Calculates the Euclidean distance.void
finalize()
DOCUMENT ME!void
focusGained(java.awt.event.FocusEvent event)
Currently unused.void
focusLost(java.awt.event.FocusEvent event)
Currently unused.ModelImage
getActiveImage()
ModelLUT
getActiveLUT()
ModelRGB
getActiveRGB()
WildMagic.LibFoundation.Mathematics.Vector3f
getCenterPt()
ViewControlsImage
getControls()
Gets control widgets for frame.javax.swing.JFrame
getFrame()
ModelImage
getImageA()
Returns the reference to imageA.ModelImage
getImageB()
Returns the reference to imageB.VOIManagerInterface
getVOIManager()
private void
init(boolean isOne)
DOCUMENT ME!private void
initVOI()
void
itemStateChanged(java.awt.event.ItemEvent event)
sets the flags for the checkboxes.private boolean
leastSquares()
This code comes from matchBtoA() and buildXfrm(double p1[],double p2[], Matrix R) in AlgorithmRegLeastSquares.private javax.swing.JButton
makeSeparator()
makes a separator for the use in the toolbars.void
maskToPaint()
void
mouseClicked(java.awt.event.MouseEvent mouseEvent)
unchanged.void
mouseDragged(java.awt.event.MouseEvent mouseEvent)
continually updates the image depending on where the mouse is - unchanged.void
mouseEntered(java.awt.event.MouseEvent mouseEvent)
unchanged.void
mouseExited(java.awt.event.MouseEvent mouseEvent)
unchanged.void
mouseMoved(java.awt.event.MouseEvent mouseEvent)
Changes the LUT text field display based on the Y value of the mouse when inside ViewJComponentLUT - unchanged.void
mousePressed(java.awt.event.MouseEvent mouseEvent)
unchanged.void
mouseReleased(java.awt.event.MouseEvent mouseEvent)
unchanged.void
paintToShortMask()
void
paintToUbyteMask()
void
PointerActive(boolean bActive)
WildMagic.LibFoundation.Mathematics.Vector3f
PropDown(int iActive)
WildMagic.LibFoundation.Mathematics.Vector3f
PropUp(int iActive)
void
removeControls()
Removes the menu and controls of the main frame so that a new frame can load the main frame with the proper controls.void
setActiveImage(int active)
Sets the active image for drawing VOIs.void
setActiveImage(ModelImage kImage)
void
setAlphaBlend(int value)
Sets the alpha blending of parameter for two image displaying.void
setCenter(WildMagic.LibFoundation.Mathematics.Vector3f kCenter)
void
setControls()
Sets the menu and controls (i.e. toolbars) of the main frame!void
setDefaultMode()
setDefaultMode.void
setEnabled(boolean flag)
Controls whether or not the images/VOIs of the frame can be modified.void
setImageB(ModelImage _imageB)
Sets the reference to imageB.void
setLUTa(ModelLUT LUT)
Sets the model LUT for the imageA.void
setLUTb(ModelLUT LUT)
setLUTb - accessor that sets the model LUTb for the imageB.void
setMode(int mode)
sets mode.void
setModified()
void
setMove(float xStart, float yStart, float xFinish, float yFinish)
If doDrag == false, this routine processes movements generated by mouse presses and releases.void
setPaintBitmapSwitch(boolean paintBitmapSwitch)
When switching the active image, take the paintBitmap of the previous active image as the paintBitmap of the new active image.void
setPaintMask(java.util.BitSet mask)
void
setRGBTA(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image A.void
setRGBTB(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image B.void
setRotationCenter(float xRot, float yRot)
Sets the coordinates of the point the will be the new image rotation center.void
setSlice(int slice)
Sets the slice to be displayed and updates title frame.void
setTimeSlice(int slice)
Sets the slice to be displayed and updates title frame.void
setTitle()
sets the title of the frame with the image name and magnification.static double
SQR(double x)
SQR = x^2.void
stateChanged(javax.swing.event.ChangeEvent e)
sets values based on knob along slider.private void
tpSpline()
Thin-plate registration method.private void
transform()
Transforms the image.private void
transformC()
Transforms color image.void
updateData()
void
updateFrame(float sX, float sY)
DOCUMENT ME!boolean
updateImageExtents()
This methods calls the componentImage's REPAINT method to redraw the screen.boolean
updateImages()
This methods calls the componentImage's update method to redraw the screen.boolean
updateImages(boolean forceShow)
Calls the componentImage's update method to redraw the screen.boolean
updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow)
This methods calls the componentImage's update method to redraw the screen.boolean
updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
This methods calls the componentImage's update method to redraw the screen.void
windowActivated(java.awt.event.WindowEvent event)
unchanged.void
windowClosed(java.awt.event.WindowEvent event)
unchanged.void
windowClosing(java.awt.event.WindowEvent event)
Calls dispose.void
windowDeactivated(java.awt.event.WindowEvent event)
unchanged.void
windowDeiconified(java.awt.event.WindowEvent event)
unchanged.void
windowIconified(java.awt.event.WindowEvent event)
unchanged.void
windowOpened(java.awt.event.WindowEvent event)
Unchanged.-
Methods inherited from class gov.nih.mipav.view.ViewJFrameBase
about, buildLabelPanel, canCloseImageBAfterLoad, close, closeImageB, componentHidden, componentMoved, componentShown, getAlphaBlend, getDefaultLUTa, getDefaultLUTb, getDisplayMode, getImageNameA, getImageNameB, getLastState, getLUTa, getLUTb, getRGBTA, getRGBTB, getTriImg, getUserInterface, handleMaskPopupMenu, handlePaintToMaskPopupMenu, handleZoomPopupMenu, initExtents, initImageBuffer, initLUT, initNumSlices, initPixelBuffer, initResFactor, initResolutions, initRGB, initSlicePositions, initUnits, initZoom, loadAllVOIs, loadAllVOIsFrom, loadImage, loadLUT, loadLUTandTransferFunctionFrom, loadLUTandTransferFunctionFrom, makeString, newFrameBeenCreated, openVOI, openVOI, pickImageFile, save, save, save, saveAllVOIs, saveAllVOIsTo, saveLabels, saveLUT, saveLUTandTransferFunction, saveLUTandTransferFunction, saveLUTAs, saveLUTAs, saveVOI, saveVOIAs, saveVOIAs, saveVOIIntensities, saveVOIIntensitiesTo, setAbsPositionLabels, setEnableCloseImageBAfterLoad, setImageA, setLastState, setLinkedFrame, setLinkedTriFrame, setLUTs, setMessageText, setOpacityInfo, setpaintBitmap, setScannerPosition
-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
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, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, 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, 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, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gov.nih.mipav.view.renderer.WildMagic.VOI.VOIManagerInterfaceListener
setCursor
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
ROTATIONCENTER
public static final int ROTATIONCENTER
The 3 types of markers - rotation center, reference slice, and adjusted slice.- See Also:
- Constant Field Values
-
REFMARK
public static final int REFMARK
DOCUMENT ME!- See Also:
- Constant Field Values
-
ADJMARK
public static final int ADJMARK
DOCUMENT ME!- See Also:
- Constant Field Values
-
toggleArray
public javax.swing.JToggleButton[] toggleArray
DOCUMENT ME!
-
serif12
protected java.awt.Font serif12
DOCUMENT ME!
-
adjMark
private int adjMark
DOCUMENT ME!
-
adjMarkButton
private javax.swing.JToggleButton adjMarkButton
DOCUMENT ME!
-
adjMarkMinusButton
private javax.swing.JButton adjMarkMinusButton
DOCUMENT ME!
-
alphaSlider
private javax.swing.JSlider alphaSlider
DOCUMENT ME!
-
bufferFactor
private int bufferFactor
DOCUMENT ME!
-
bufferSize
private int bufferSize
DOCUMENT ME!
-
buttonArray
private javax.swing.JButton[] buttonArray
DOCUMENT ME!
-
ccwButton
private javax.swing.JButton ccwButton
DOCUMENT ME!
-
componentImage
private ViewJComponentRegistration componentImage
DOCUMENT ME!
-
componentY
private int componentY
DOCUMENT ME!
-
controlPanel
private javax.swing.JPanel controlPanel
DOCUMENT ME!
-
controls
private ViewControlsImage controls
DOCUMENT ME!
-
cpGBC
private java.awt.GridBagConstraints cpGBC
DOCUMENT ME!
-
cpGBL
private java.awt.GridBagLayout cpGBL
DOCUMENT ME!
-
curAdjMark
private int curAdjMark
DOCUMENT ME!
-
curRefMark
private int curRefMark
DOCUMENT ME!
-
cwButton
private javax.swing.JButton cwButton
DOCUMENT ME!
-
defaultModeButton
private javax.swing.JToggleButton defaultModeButton
DOCUMENT ME!
-
degreeIncrement
private float degreeIncrement
DOCUMENT ME!
-
degreeIncrementButton
private javax.swing.JButton degreeIncrementButton
DOCUMENT ME!
-
doDrag
private boolean doDrag
DOCUMENT ME!
-
doneLeastSquares
private boolean doneLeastSquares
DOCUMENT ME!
-
doRegionB
private boolean doRegionB
DOCUMENT ME!
-
downButton
private javax.swing.JButton downButton
DOCUMENT ME!
-
dragButton
private javax.swing.JToggleButton dragButton
DOCUMENT ME!
-
etchedBorder
private javax.swing.border.Border etchedBorder
DOCUMENT ME!
-
extents
private int[] extents
DOCUMENT ME!
-
fileMenu
private javax.swing.JMenu fileMenu
DOCUMENT ME!
-
font12
private java.awt.Font font12
DOCUMENT ME!
-
gbc
private java.awt.GridBagConstraints gbc
DOCUMENT ME!
-
haveVOIPoints
private boolean haveVOIPoints
DOCUMENT ME!
-
helpMenu
private javax.swing.JMenu helpMenu
DOCUMENT ME!
-
i
private int i
DOCUMENT ME!
-
j
private int j
DOCUMENT ME!
-
image
private ModelImage image
DOCUMENT ME!
-
imageBufferA
private float[] imageBufferA
DOCUMENT ME!
-
imageBufferB
private float[] imageBufferB
DOCUMENT ME!
-
imageBufferOriginalB
private float[] imageBufferOriginalB
DOCUMENT ME!
-
imageSize
private int imageSize
DOCUMENT ME!
-
itemClose
private javax.swing.JMenuItem itemClose
DOCUMENT ME!
-
itemHelp
private javax.swing.JMenuItem itemHelp
DOCUMENT ME!
-
labelReferenceSlice
private javax.swing.JLabel labelReferenceSlice
DOCUMENT ME!
-
labelAdjustedSlice
private javax.swing.JLabel labelAdjustedSlice
DOCUMENT ME!
-
labelTable
private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel> labelTable
DOCUMENT ME!
-
labelTable2
private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel> labelTable2
DOCUMENT ME!
-
leftButton
private javax.swing.JButton leftButton
DOCUMENT ME!
-
logMagDisplay
private boolean logMagDisplay
DOCUMENT ME!
-
markerType
private int[] markerType
DOCUMENT ME!
-
minimumToolBarWidth
private int minimumToolBarWidth
DOCUMENT ME!
-
mode
private int mode
DOCUMENT ME!
-
movementGroup
private javax.swing.ButtonGroup movementGroup
DOCUMENT ME!
-
n
private int n
DOCUMENT ME!
-
newAlphaBlend
private int newAlphaBlend
DOCUMENT ME!
-
newExtents
private int[] newExtents
DOCUMENT ME!
-
nImage
private int nImage
DOCUMENT ME!
-
nVOI
private int nVOI
DOCUMENT ME!
-
openingMenuBar
private javax.swing.JMenuBar openingMenuBar
DOCUMENT ME!
-
pixBuffer
private int[] pixBuffer
DOCUMENT ME!
-
pixBufferB
private int[] pixBufferB
DOCUMENT ME!
-
pixelIncrement
private float pixelIncrement
DOCUMENT ME!
-
pixelIncrementButton
private javax.swing.JButton pixelIncrementButton
DOCUMENT ME!
-
pointSetA
private double[][] pointSetA
DOCUMENT ME!
-
pointSetB
private double[][] pointSetB
DOCUMENT ME!
-
refMark
private int refMark
DOCUMENT ME!
-
refMarkButton
private javax.swing.JToggleButton refMarkButton
DOCUMENT ME!
-
refMarkMinusButton
private javax.swing.JButton refMarkMinusButton
DOCUMENT ME!
-
rightButton
private javax.swing.JButton rightButton
DOCUMENT ME!
-
rotateButton
private javax.swing.JToggleButton rotateButton
DOCUMENT ME!
-
scrollPane
private javax.swing.JScrollPane scrollPane
DOCUMENT ME!
-
scrollPaneSize
private int scrollPaneSize
DOCUMENT ME!
-
secondImage
private ModelImage secondImage
DOCUMENT ME!
-
slider
private javax.swing.JSlider slider
DOCUMENT ME!
-
slider2
private javax.swing.JSlider slider2
DOCUMENT ME!
-
textReferenceSlice
private javax.swing.JTextField textReferenceSlice
DOCUMENT ME!
-
textAdjustedSlice
private javax.swing.JTextField textAdjustedSlice
DOCUMENT ME!
-
toolBar
private javax.swing.JToolBar toolBar
DOCUMENT ME!
-
toolBar2
private javax.swing.JToolBar toolBar2
DOCUMENT ME!
-
topPanel
private javax.swing.JPanel topPanel
DOCUMENT ME!
-
translateButton
private javax.swing.JToggleButton translateButton
DOCUMENT ME!
-
calculateCostButton
private javax.swing.JButton calculateCostButton
-
upButton
private javax.swing.JButton upButton
DOCUMENT ME!
-
voi
private VOI voi
DOCUMENT ME!
-
VOIPoints
private java.util.Vector<WildMagic.LibFoundation.Mathematics.Vector3f> VOIPoints
DOCUMENT ME!
-
xDim
private int xDim
DOCUMENT ME!
-
xfrm
private TransMatrix xfrm
DOCUMENT ME!
-
xfrmBA
private TransMatrix xfrmBA
DOCUMENT ME!
-
xfrmD
private TransMatrix xfrmD
DOCUMENT ME!
-
xfrmH
private TransMatrix xfrmH
DOCUMENT ME!
-
xOrg
private int[] xOrg
DOCUMENT ME!
-
xPres
private int[] xPres
DOCUMENT ME!
-
xRes
private float xRes
DOCUMENT ME!
-
xRotation
private float xRotation
DOCUMENT ME!
-
xScreen
private int xScreen
DOCUMENT ME!
-
yScreen
private int yScreen
DOCUMENT ME!
-
yDim
private int yDim
DOCUMENT ME!
-
yOrg
private int[] yOrg
DOCUMENT ME!
-
yPres
private int[] yPres
DOCUMENT ME!
-
yRes
private float yRes
DOCUMENT ME!
-
yRotation
private float yRotation
DOCUMENT ME!
-
zoom
private float zoom
DOCUMENT ME!
-
zSlice
private int zSlice
DOCUMENT ME!
-
zSlice2
private int zSlice2
DOCUMENT ME!
-
zLastSlice
private int zLastSlice
DOCUMENT ME!
-
zLastSlice2
private int zLastSlice2
DOCUMENT ME!
-
costFunctionTextArea
private javax.swing.JTextArea costFunctionTextArea
-
costFunctionScrollPane
private javax.swing.JScrollPane costFunctionScrollPane
Scroll Pane for the Text Area
-
simpleImg1
private ModelSimpleImage simpleImg1
Holds extents, other info about firstImage and SecondImage
-
simpleImg2
private ModelSimpleImage simpleImg2
Holds extents, other info about firstImage and SecondImage
-
tMatrix
private TransMatrix tMatrix
Identity matrix for testing cost
-
algoCost
private AlgorithmCostFunctions2D algoCost
-
voiManager
private VOIManagerInterface voiManager
-
-
Constructor Detail
-
ViewJFrameRegistration
public ViewJFrameRegistration(ModelImage _image, ModelLUT _LUT)
Makes a frame of the manually registered image.- Parameters:
_image
- Model of image_LUT
- Model of LUT for image
-
ViewJFrameRegistration
public ViewJFrameRegistration(ModelImage _image, ModelImage _image2, ModelLUT _LUT, ModelLUT _LUT2)
Makes a frame of the manually registered image.- Parameters:
_image
- the first image_image2
- the second image_LUT
- lut for the first image_LUT2
- lut for the second image
-
-
Method Detail
-
SQR
public static final double SQR(double x)
SQR = x^2.- Parameters:
x
- DOCUMENT ME!- Returns:
- DOCUMENT ME!
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Calls various methods depending on the action.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Specified by:
actionPerformed
in classViewJFrameBase
- Parameters:
event
- event that triggered function
-
buildXfrm
public TransMatrix buildXfrm(double[] p1, double[] p2, Jama.Matrix R)
Builds 4x4 transformation matrix from R and T T=p2-R*p1.- Parameters:
p1
- from Matchp2
- from MatchR
- matrix from Match- Returns:
- transformation matrix
-
calculateResiduals
public void calculateResiduals()
Calculates the residuals of the least squares fit.
-
close
public void close()
Disposes of components and frame.- Overrides:
close
in classViewJFrameBase
-
componentResized
public void componentResized(java.awt.event.ComponentEvent event)
Resizes frame and all components.- Specified by:
componentResized
in interfacejava.awt.event.ComponentListener
- Overrides:
componentResized
in classViewJFrameBase
- Parameters:
event
- event that triggered function
-
euclideanDistance
public double euclideanDistance(double[] ptA, double[] ptB)
Calculates the Euclidean distance.- Parameters:
ptA
- point AptB
- point B- Returns:
- the euclidean distance between points
-
finalize
public void finalize()
DOCUMENT ME!- Overrides:
finalize
in classViewJFrameBase
-
focusGained
public void focusGained(java.awt.event.FocusEvent event)
Currently unused.- Specified by:
focusGained
in interfacejava.awt.event.FocusListener
- Parameters:
event
- DOCUMENT ME!
-
focusLost
public void focusLost(java.awt.event.FocusEvent event)
Currently unused.- Specified by:
focusLost
in interfacejava.awt.event.FocusListener
- Parameters:
event
- DOCUMENT ME!
-
getControls
public ViewControlsImage getControls()
Gets control widgets for frame.- Specified by:
getControls
in classViewJFrameBase
- Returns:
- controls
-
getImageA
public ModelImage getImageA()
Returns the reference to imageA.- Specified by:
getImageA
in classViewJFrameBase
- Returns:
- image
-
getImageB
public ModelImage getImageB()
Returns the reference to imageB.- Specified by:
getImageB
in classViewJFrameBase
- Returns:
- imageB
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent event)
sets the flags for the checkboxes.- Specified by:
itemStateChanged
in interfacejava.awt.event.ItemListener
- Parameters:
event
- event that triggered this function
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseClicked
in interfacejava.awt.event.MouseListener
- Parameters:
mouseEvent
- event that triggered function
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent mouseEvent)
continually updates the image depending on where the mouse is - unchanged.- Specified by:
mouseDragged
in interfacejava.awt.event.MouseMotionListener
- Parameters:
mouseEvent
- event that triggered this function
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseEntered
in interfacejava.awt.event.MouseListener
- Parameters:
mouseEvent
- DOCUMENT ME!
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseExited
in interfacejava.awt.event.MouseListener
- Parameters:
mouseEvent
- DOCUMENT ME!
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent mouseEvent)
Changes the LUT text field display based on the Y value of the mouse when inside ViewJComponentLUT - unchanged.- Specified by:
mouseMoved
in interfacejava.awt.event.MouseMotionListener
- Parameters:
mouseEvent
- event that triggered this function
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mousePressed
in interfacejava.awt.event.MouseListener
- Parameters:
mouseEvent
- event that triggered function
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseReleased
in interfacejava.awt.event.MouseListener
- Parameters:
mouseEvent
- event that triggered function
-
removeControls
public void removeControls()
Removes the menu and controls of the main frame so that a new frame can load the main frame with the proper controls. Currently unused.- Specified by:
removeControls
in classViewJFrameBase
-
setActiveImage
public void setActiveImage(int active)
Sets the active image for drawing VOIs. VOIs are only drawn in the active image. In addition, algorithms are executed on the active window.- Specified by:
setActiveImage
in interfaceVOIManagerInterfaceListener
- Specified by:
setActiveImage
in classViewJFrameBase
- Parameters:
active
- IMAGE_A or IMAGE_B
-
setAlphaBlend
public void setAlphaBlend(int value)
Sets the alpha blending of parameter for two image displaying. Currently unused.- Specified by:
setAlphaBlend
in classViewJFrameBase
- Parameters:
value
- amount [0,100] that is the percentage of Image A to be displayed
-
setControls
public void setControls()
Sets the menu and controls (i.e. toolbars) of the main frame! This puts the menus and controls needed to controls the operations of this frame. Different image frames have different menu and controls. Currently unused.- Specified by:
setControls
in classViewJFrameBase
-
setDefaultMode
public void setDefaultMode()
setDefaultMode.
-
setEnabled
public void setEnabled(boolean flag)
Controls whether or not the images/VOIs of the frame can be modified. Currently unused.- Specified by:
setEnabled
in classViewJFrameBase
- Parameters:
flag
- if true the image/VOIs can be modified; if false image/VOIs can NOT be modified
-
setImageB
public void setImageB(ModelImage _imageB)
Sets the reference to imageB. Currently unused.- Specified by:
setImageB
in classViewJFrameBase
- Parameters:
_imageB
- Image to set the frame to
-
setLUTa
public void setLUTa(ModelLUT LUT)
Sets the model LUT for the imageA.- Overrides:
setLUTa
in classViewJFrameBase
- Parameters:
LUT
- the model LUT
-
setLUTb
public void setLUTb(ModelLUT LUT)
setLUTb - accessor that sets the model LUTb for the imageB.- Overrides:
setLUTb
in classViewJFrameBase
- Parameters:
LUT
- the model LUT
-
setMode
public void setMode(int mode)
sets mode.- Parameters:
mode
- DOCUMENT ME!
-
setMove
public void setMove(float xStart, float yStart, float xFinish, float yFinish)
If doDrag == false, this routine processes movements generated by mouse presses and releases. The mouse press location sets (xStart,yStart) and the mouse release location sets (xFinish,yFinish). If doDrag == true, this routine processes movements generated by mouse press and drag events.- Parameters:
xStart
- DOCUMENT ME!yStart
- DOCUMENT ME!xFinish
- DOCUMENT ME!yFinish
- DOCUMENT ME!
-
setPaintBitmapSwitch
public void setPaintBitmapSwitch(boolean paintBitmapSwitch)
When switching the active image, take the paintBitmap of the previous active image as the paintBitmap of the new active image.- Specified by:
setPaintBitmapSwitch
in classViewJFrameBase
- Parameters:
paintBitmapSwitch
- if true don't copy the new acitve image mask
-
setRGBTA
public void setRGBTA(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image A.- Specified by:
setRGBTA
in classViewJFrameBase
- Parameters:
RGBT
- the new RGB LUT to be applied to the image
-
setRGBTB
public void setRGBTB(ModelRGB RGBT)
Sets the RGB LUT table for ARGB image B.- Specified by:
setRGBTB
in classViewJFrameBase
- Parameters:
RGBT
- the new RGB LUT to be applied to the image
-
setRotationCenter
public void setRotationCenter(float xRot, float yRot)
Sets the coordinates of the point the will be the new image rotation center.- Parameters:
xRot
- DOCUMENT ME!yRot
- DOCUMENT ME!
-
setSlice
public void setSlice(int slice)
Sets the slice to be displayed and updates title frame.- Specified by:
setSlice
in interfaceViewImageUpdateInterface
- Parameters:
slice
- indicates image slice to be displayed
-
setTimeSlice
public void setTimeSlice(int slice)
Sets the slice to be displayed and updates title frame. Currently unused.- Specified by:
setTimeSlice
in interfaceViewImageUpdateInterface
- Parameters:
slice
- indicates image time-slice (4th dimension) to be displayed
-
setTitle
public void setTitle()
sets the title of the frame with the image name and magnification.- Specified by:
setTitle
in classViewJFrameBase
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent e)
sets values based on knob along slider.- Specified by:
stateChanged
in interfacejavax.swing.event.ChangeListener
- Overrides:
stateChanged
in classViewJFrameBase
- Parameters:
e
- event that triggered this function
-
updateFrame
public void updateFrame(float sX, float sY)
DOCUMENT ME!- Parameters:
sX
- zoom in the x dimensionsY
- zoom in the y dimension
-
updateImageExtents
public boolean updateImageExtents()
This methods calls the componentImage's REPAINT method to redraw the screen. The extents on this image have changed, so the extents need to be read in again and menus, panes and slide bars adjusted accordingly.- Specified by:
updateImageExtents
in interfaceViewImageUpdateInterface
- Specified by:
updateImageExtents
in classViewJFrameBase
- Returns:
- DOCUMENT ME!
- See Also:
ViewImageUpdateInterface
-
updateImages
public final boolean updateImages()
This methods calls the componentImage's update method to redraw the screen.- Specified by:
updateImages
in interfaceViewImageUpdateInterface
- Returns:
- boolean confirming successful update
-
updateImages
public final boolean updateImages(boolean forceShow)
Calls the componentImage's update method to redraw the screen. Without LUT changes.- Specified by:
updateImages
in interfaceViewImageUpdateInterface
- Parameters:
forceShow
- forces show to re import image and calc. java image- Returns:
- boolean confirming successful update
-
updateImages
public final boolean updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow)
This methods calls the componentImage's update method to redraw the screen.- Parameters:
LUTa
- LUT used to update imageALUTb
- LUT used to update imageBforceShow
- forces show to re import image and calc. java image- Returns:
- boolean confirming successful update
-
updateImages
public final boolean updateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)
This methods calls the componentImage's update method to redraw the screen.- Specified by:
updateImages
in interfaceViewImageUpdateInterface
- Parameters:
LUTa
- LUT used to update imageALUTb
- LUT used to update imageBforceShow
- forces show to re import image and calc. java imageinterpMode
- image interpolation method (Nearest or Smooth)- Returns:
- boolean confirming successful update
-
windowActivated
public void windowActivated(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowActivated
in interfacejava.awt.event.WindowListener
- Overrides:
windowActivated
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
windowClosed
public void windowClosed(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowClosed
in interfacejava.awt.event.WindowListener
- Overrides:
windowClosed
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent event)
Calls dispose.- Specified by:
windowClosing
in interfacejava.awt.event.WindowListener
- Overrides:
windowClosing
in classViewJFrameBase
- Parameters:
event
- event that triggered function
-
windowDeactivated
public void windowDeactivated(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowDeactivated
in interfacejava.awt.event.WindowListener
- Overrides:
windowDeactivated
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
windowDeiconified
public void windowDeiconified(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowDeiconified
in interfacejava.awt.event.WindowListener
- Overrides:
windowDeiconified
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
windowIconified
public void windowIconified(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowIconified
in interfacejava.awt.event.WindowListener
- Overrides:
windowIconified
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
windowOpened
public void windowOpened(java.awt.event.WindowEvent event)
Unchanged.- Specified by:
windowOpened
in interfacejava.awt.event.WindowListener
- Overrides:
windowOpened
in classViewJFrameBase
- Parameters:
event
- DOCUMENT ME!
-
addControlPanel
private void addControlPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Adds a component to the control panel.- Parameters:
c
- componentgbc
- GridBagConstraintsx
- DOCUMENT ME!y
- DOCUMENT ME!w
- DOCUMENT ME!h
- DOCUMENT ME!
-
addTopPanel
private void addTopPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Adds a component to the top panel.- Parameters:
c
- componentgbc
- GridbagConstraintsx
- DOCUMENT ME!y
- DOCUMENT ME!w
- DOCUMENT ME!h
- DOCUMENT ME!
-
buildControlPanel
private void buildControlPanel(boolean isOne)
panel that sets the at rest frame number and the desired frames per second.- Parameters:
isOne
- one 3D (2.5) image, if false two 2D images are passed in and the top two sliders are not needed.
-
buildMenu
private void buildMenu()
this method builds a menu which contains the options Save image as and Close Registration.
-
buildRegistrationToolBar
private javax.swing.JToolBar buildRegistrationToolBar(java.awt.event.ActionListener al)
builds the first registration toolbar.- Parameters:
al
- ActionListener- Returns:
- DOCUMENT ME!
-
buildScrollPane
private void buildScrollPane()
Make a scroll frame and puts an image component into it.
-
buildToolBar2
private javax.swing.JToolBar buildToolBar2(java.awt.event.ActionListener al)
builds the second registration toolbar.- Parameters:
al
- ActionListener- Returns:
- DOCUMENT ME!
-
createLabel
private javax.swing.JLabel createLabel(java.lang.String title)
Helper method to create a label with the proper font and font color.- Parameters:
title
- Text of the label.- Returns:
- New label.
-
init
private void init(boolean isOne)
DOCUMENT ME!- Parameters:
isOne
- one 3D (2.5) image, if false two 2D images are passed in and the top two sliders are not needed.
-
leastSquares
private boolean leastSquares()
This code comes from matchBtoA() and buildXfrm(double p1[],double p2[], Matrix R) in AlgorithmRegLeastSquares.- Returns:
- DOCUMENT ME!
-
makeSeparator
private javax.swing.JButton makeSeparator()
makes a separator for the use in the toolbars.- Returns:
- DOCUMENT ME!
-
tpSpline
private void tpSpline()
Thin-plate registration method.
-
transform
private void transform()
Transforms the image.
-
transformC
private void transformC()
Transforms color image.
-
calculateCostFunctionValues
private void calculateCostFunctionValues()
-
PointerActive
public void PointerActive(boolean bActive)
- Specified by:
PointerActive
in interfaceVOIManagerInterfaceListener
-
PropDown
public WildMagic.LibFoundation.Mathematics.Vector3f PropDown(int iActive)
- Specified by:
PropDown
in interfaceVOIManagerInterfaceListener
-
PropUp
public WildMagic.LibFoundation.Mathematics.Vector3f PropUp(int iActive)
- Specified by:
PropUp
in interfaceVOIManagerInterfaceListener
-
create3DVOI
public void create3DVOI(boolean bIntersection)
- Specified by:
create3DVOI
in interfaceVOIManagerInterfaceListener
-
getActiveImage
public ModelImage getActiveImage()
- Specified by:
getActiveImage
in interfaceVOIManagerInterfaceListener
-
getActiveLUT
public ModelLUT getActiveLUT()
- Specified by:
getActiveLUT
in interfaceVOIManagerInterfaceListener
-
getActiveRGB
public ModelRGB getActiveRGB()
- Specified by:
getActiveRGB
in interfaceVOIManagerInterfaceListener
-
getCenterPt
public WildMagic.LibFoundation.Mathematics.Vector3f getCenterPt()
- Specified by:
getCenterPt
in interfaceVOIManagerInterfaceListener
-
getFrame
public javax.swing.JFrame getFrame()
- Specified by:
getFrame
in interfaceVOIManagerInterfaceListener
-
getVOIManager
public VOIManagerInterface getVOIManager()
- Specified by:
getVOIManager
in interfaceVOIManagerInterfaceListener
-
setActiveImage
public void setActiveImage(ModelImage kImage)
- Specified by:
setActiveImage
in interfaceVOIManagerInterfaceListener
-
setCenter
public void setCenter(WildMagic.LibFoundation.Mathematics.Vector3f kCenter)
- Specified by:
setCenter
in interfaceVOIManagerInterfaceListener
-
setModified
public void setModified()
- Specified by:
setModified
in interfaceVOIManagerInterfaceListener
-
updateData
public void updateData()
- Specified by:
updateData
in interfaceVOIManagerInterfaceListener
-
setPaintMask
public void setPaintMask(java.util.BitSet mask)
- Specified by:
setPaintMask
in interfaceVOIManagerInterfaceListener
-
paintToShortMask
public void paintToShortMask()
- Specified by:
paintToShortMask
in interfaceVOIManagerInterfaceListener
-
paintToUbyteMask
public void paintToUbyteMask()
- Specified by:
paintToUbyteMask
in interfaceVOIManagerInterfaceListener
-
maskToPaint
public void maskToPaint()
- Specified by:
maskToPaint
in interfaceVOIManagerInterfaceListener
-
initVOI
private void initVOI()
-
addSphereVOIs
public void addSphereVOIs(VOI annotations)
- Specified by:
addSphereVOIs
in interfaceVOIManagerInterfaceListener
-
-