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 classViewJFrameRegistration.JDialogIncrementClass 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 intadjMarkDOCUMENT ME!static intADJMARKDOCUMENT ME!private javax.swing.JToggleButtonadjMarkButtonDOCUMENT ME!private javax.swing.JButtonadjMarkMinusButtonDOCUMENT ME!private AlgorithmCostFunctions2DalgoCostprivate javax.swing.JSlideralphaSliderDOCUMENT ME!private intbufferFactorDOCUMENT ME!private intbufferSizeDOCUMENT ME!private javax.swing.JButton[]buttonArrayDOCUMENT ME!private javax.swing.JButtoncalculateCostButtonprivate javax.swing.JButtonccwButtonDOCUMENT ME!private ViewJComponentRegistrationcomponentImageDOCUMENT ME!private intcomponentYDOCUMENT ME!private javax.swing.JPanelcontrolPanelDOCUMENT ME!private ViewControlsImagecontrolsDOCUMENT ME!private javax.swing.JScrollPanecostFunctionScrollPaneScroll Pane for the Text Areaprivate javax.swing.JTextAreacostFunctionTextAreaprivate java.awt.GridBagConstraintscpGBCDOCUMENT ME!private java.awt.GridBagLayoutcpGBLDOCUMENT ME!private intcurAdjMarkDOCUMENT ME!private intcurRefMarkDOCUMENT ME!private javax.swing.JButtoncwButtonDOCUMENT ME!private javax.swing.JToggleButtondefaultModeButtonDOCUMENT ME!private floatdegreeIncrementDOCUMENT ME!private javax.swing.JButtondegreeIncrementButtonDOCUMENT ME!private booleandoDragDOCUMENT ME!private booleandoneLeastSquaresDOCUMENT ME!private booleandoRegionBDOCUMENT ME!private javax.swing.JButtondownButtonDOCUMENT ME!private javax.swing.JToggleButtondragButtonDOCUMENT ME!private javax.swing.border.BorderetchedBorderDOCUMENT ME!private int[]extentsDOCUMENT ME!private javax.swing.JMenufileMenuDOCUMENT ME!private java.awt.Fontfont12DOCUMENT ME!private java.awt.GridBagConstraintsgbcDOCUMENT ME!private booleanhaveVOIPointsDOCUMENT ME!private javax.swing.JMenuhelpMenuDOCUMENT ME!private intiDOCUMENT ME!private ModelImageimageDOCUMENT ME!private float[]imageBufferADOCUMENT ME!private float[]imageBufferBDOCUMENT ME!private float[]imageBufferOriginalBDOCUMENT ME!private intimageSizeDOCUMENT ME!private javax.swing.JMenuItemitemCloseDOCUMENT ME!private javax.swing.JMenuItemitemHelpDOCUMENT ME!private intjDOCUMENT ME!private javax.swing.JLabellabelAdjustedSliceDOCUMENT ME!private javax.swing.JLabellabelReferenceSliceDOCUMENT ME!private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel>labelTableDOCUMENT ME!private java.util.Hashtable<java.lang.Integer,javax.swing.JLabel>labelTable2DOCUMENT ME!private javax.swing.JButtonleftButtonDOCUMENT ME!private booleanlogMagDisplayDOCUMENT ME!private int[]markerTypeDOCUMENT ME!private intminimumToolBarWidthDOCUMENT ME!private intmodeDOCUMENT ME!private javax.swing.ButtonGroupmovementGroupDOCUMENT ME!private intnDOCUMENT ME!private intnewAlphaBlendDOCUMENT ME!private int[]newExtentsDOCUMENT ME!private intnImageDOCUMENT ME!private intnVOIDOCUMENT ME!private javax.swing.JMenuBaropeningMenuBarDOCUMENT ME!private int[]pixBufferDOCUMENT ME!private int[]pixBufferBDOCUMENT ME!private floatpixelIncrementDOCUMENT ME!private javax.swing.JButtonpixelIncrementButtonDOCUMENT ME!private double[][]pointSetADOCUMENT ME!private double[][]pointSetBDOCUMENT ME!private intrefMarkDOCUMENT ME!static intREFMARKDOCUMENT ME!private javax.swing.JToggleButtonrefMarkButtonDOCUMENT ME!private javax.swing.JButtonrefMarkMinusButtonDOCUMENT ME!private javax.swing.JButtonrightButtonDOCUMENT ME!private javax.swing.JToggleButtonrotateButtonDOCUMENT ME!static intROTATIONCENTERThe 3 types of markers - rotation center, reference slice, and adjusted slice.private javax.swing.JScrollPanescrollPaneDOCUMENT ME!private intscrollPaneSizeDOCUMENT ME!private ModelImagesecondImageDOCUMENT ME!private static longserialVersionUIDUse serialVersionUID for interoperability.protected java.awt.Fontserif12DOCUMENT ME!private ModelSimpleImagesimpleImg1Holds extents, other info about firstImage and SecondImageprivate ModelSimpleImagesimpleImg2Holds extents, other info about firstImage and SecondImageprivate javax.swing.JSlidersliderDOCUMENT ME!private javax.swing.JSliderslider2DOCUMENT ME!private javax.swing.JTextFieldtextAdjustedSliceDOCUMENT ME!private javax.swing.JTextFieldtextReferenceSliceDOCUMENT ME!private TransMatrixtMatrixIdentity matrix for testing costjavax.swing.JToggleButton[]toggleArrayDOCUMENT ME!private javax.swing.JToolBartoolBarDOCUMENT ME!private javax.swing.JToolBartoolBar2DOCUMENT ME!private javax.swing.JPaneltopPanelDOCUMENT ME!private javax.swing.JToggleButtontranslateButtonDOCUMENT ME!private javax.swing.JButtonupButtonDOCUMENT ME!private VOIvoiDOCUMENT ME!private VOIManagerInterfacevoiManagerprivate java.util.Vector<WildMagic.LibFoundation.Mathematics.Vector3f>VOIPointsDOCUMENT ME!private intxDimDOCUMENT ME!private TransMatrixxfrmDOCUMENT ME!private TransMatrixxfrmBADOCUMENT ME!private TransMatrixxfrmDDOCUMENT ME!private TransMatrixxfrmHDOCUMENT ME!private int[]xOrgDOCUMENT ME!private int[]xPresDOCUMENT ME!private floatxResDOCUMENT ME!private floatxRotationDOCUMENT ME!private intxScreenDOCUMENT ME!private intyDimDOCUMENT ME!private int[]yOrgDOCUMENT ME!private int[]yPresDOCUMENT ME!private floatyResDOCUMENT ME!private floatyRotationDOCUMENT ME!private intyScreenDOCUMENT ME!private intzLastSliceDOCUMENT ME!private intzLastSlice2DOCUMENT ME!private floatzoomDOCUMENT ME!private intzSliceDOCUMENT ME!private intzSlice2DOCUMENT 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 voidactionPerformed(java.awt.event.ActionEvent event)Calls various methods depending on the action.private voidaddControlPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)Adds a component to the control panel.voidaddSphereVOIs(VOI annotations)private voidaddTopPanel(java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)Adds a component to the top panel.private voidbuildControlPanel(boolean isOne)panel that sets the at rest frame number and the desired frames per second.private voidbuildMenu()this method builds a menu which contains the options Save image as and Close Registration.private javax.swing.JToolBarbuildRegistrationToolBar(java.awt.event.ActionListener al)builds the first registration toolbar.private voidbuildScrollPane()Make a scroll frame and puts an image component into it.private javax.swing.JToolBarbuildToolBar2(java.awt.event.ActionListener al)builds the second registration toolbar.TransMatrixbuildXfrm(double[] p1, double[] p2, Jama.Matrix R)Builds 4x4 transformation matrix from R and T T=p2-R*p1.private voidcalculateCostFunctionValues()voidcalculateResiduals()Calculates the residuals of the least squares fit.voidclose()Disposes of components and frame.voidcomponentResized(java.awt.event.ComponentEvent event)Resizes frame and all components.voidcreate3DVOI(boolean bIntersection)private javax.swing.JLabelcreateLabel(java.lang.String title)Helper method to create a label with the proper font and font color.doubleeuclideanDistance(double[] ptA, double[] ptB)Calculates the Euclidean distance.voidfinalize()DOCUMENT ME!voidfocusGained(java.awt.event.FocusEvent event)Currently unused.voidfocusLost(java.awt.event.FocusEvent event)Currently unused.ModelImagegetActiveImage()ModelLUTgetActiveLUT()ModelRGBgetActiveRGB()WildMagic.LibFoundation.Mathematics.Vector3fgetCenterPt()ViewControlsImagegetControls()Gets control widgets for frame.javax.swing.JFramegetFrame()ModelImagegetImageA()Returns the reference to imageA.ModelImagegetImageB()Returns the reference to imageB.VOIManagerInterfacegetVOIManager()private voidinit(boolean isOne)DOCUMENT ME!private voidinitVOI()voiditemStateChanged(java.awt.event.ItemEvent event)sets the flags for the checkboxes.private booleanleastSquares()This code comes from matchBtoA() and buildXfrm(double p1[],double p2[], Matrix R) in AlgorithmRegLeastSquares.private javax.swing.JButtonmakeSeparator()makes a separator for the use in the toolbars.voidmaskToPaint()voidmouseClicked(java.awt.event.MouseEvent mouseEvent)unchanged.voidmouseDragged(java.awt.event.MouseEvent mouseEvent)continually updates the image depending on where the mouse is - unchanged.voidmouseEntered(java.awt.event.MouseEvent mouseEvent)unchanged.voidmouseExited(java.awt.event.MouseEvent mouseEvent)unchanged.voidmouseMoved(java.awt.event.MouseEvent mouseEvent)Changes the LUT text field display based on the Y value of the mouse when inside ViewJComponentLUT - unchanged.voidmousePressed(java.awt.event.MouseEvent mouseEvent)unchanged.voidmouseReleased(java.awt.event.MouseEvent mouseEvent)unchanged.voidpaintToShortMask()voidpaintToUbyteMask()voidPointerActive(boolean bActive)WildMagic.LibFoundation.Mathematics.Vector3fPropDown(int iActive)WildMagic.LibFoundation.Mathematics.Vector3fPropUp(int iActive)voidremoveControls()Removes the menu and controls of the main frame so that a new frame can load the main frame with the proper controls.voidsetActiveImage(int active)Sets the active image for drawing VOIs.voidsetActiveImage(ModelImage kImage)voidsetAlphaBlend(int value)Sets the alpha blending of parameter for two image displaying.voidsetCenter(WildMagic.LibFoundation.Mathematics.Vector3f kCenter)voidsetControls()Sets the menu and controls (i.e. toolbars) of the main frame!voidsetDefaultMode()setDefaultMode.voidsetEnabled(boolean flag)Controls whether or not the images/VOIs of the frame can be modified.voidsetImageB(ModelImage _imageB)Sets the reference to imageB.voidsetLUTa(ModelLUT LUT)Sets the model LUT for the imageA.voidsetLUTb(ModelLUT LUT)setLUTb - accessor that sets the model LUTb for the imageB.voidsetMode(int mode)sets mode.voidsetModified()voidsetMove(float xStart, float yStart, float xFinish, float yFinish)If doDrag == false, this routine processes movements generated by mouse presses and releases.voidsetPaintBitmapSwitch(boolean paintBitmapSwitch)When switching the active image, take the paintBitmap of the previous active image as the paintBitmap of the new active image.voidsetPaintMask(java.util.BitSet mask)voidsetRGBTA(ModelRGB RGBT)Sets the RGB LUT table for ARGB image A.voidsetRGBTB(ModelRGB RGBT)Sets the RGB LUT table for ARGB image B.voidsetRotationCenter(float xRot, float yRot)Sets the coordinates of the point the will be the new image rotation center.voidsetSlice(int slice)Sets the slice to be displayed and updates title frame.voidsetTimeSlice(int slice)Sets the slice to be displayed and updates title frame.voidsetTitle()sets the title of the frame with the image name and magnification.static doubleSQR(double x)SQR = x^2.voidstateChanged(javax.swing.event.ChangeEvent e)sets values based on knob along slider.private voidtpSpline()Thin-plate registration method.private voidtransform()Transforms the image.private voidtransformC()Transforms color image.voidupdateData()voidupdateFrame(float sX, float sY)DOCUMENT ME!booleanupdateImageExtents()This methods calls the componentImage's REPAINT method to redraw the screen.booleanupdateImages()This methods calls the componentImage's update method to redraw the screen.booleanupdateImages(boolean forceShow)Calls the componentImage's update method to redraw the screen.booleanupdateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow)This methods calls the componentImage's update method to redraw the screen.booleanupdateImages(ModelLUT LUTa, ModelLUT LUTb, boolean forceShow, int interpMode)This methods calls the componentImage's update method to redraw the screen.voidwindowActivated(java.awt.event.WindowEvent event)unchanged.voidwindowClosed(java.awt.event.WindowEvent event)unchanged.voidwindowClosing(java.awt.event.WindowEvent event)Calls dispose.voidwindowDeactivated(java.awt.event.WindowEvent event)unchanged.voidwindowDeiconified(java.awt.event.WindowEvent event)unchanged.voidwindowIconified(java.awt.event.WindowEvent event)unchanged.voidwindowOpened(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:
actionPerformedin interfacejava.awt.event.ActionListener- Specified by:
actionPerformedin 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:
closein classViewJFrameBase
-
componentResized
public void componentResized(java.awt.event.ComponentEvent event)
Resizes frame and all components.- Specified by:
componentResizedin interfacejava.awt.event.ComponentListener- Overrides:
componentResizedin 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:
finalizein classViewJFrameBase
-
focusGained
public void focusGained(java.awt.event.FocusEvent event)
Currently unused.- Specified by:
focusGainedin interfacejava.awt.event.FocusListener- Parameters:
event- DOCUMENT ME!
-
focusLost
public void focusLost(java.awt.event.FocusEvent event)
Currently unused.- Specified by:
focusLostin interfacejava.awt.event.FocusListener- Parameters:
event- DOCUMENT ME!
-
getControls
public ViewControlsImage getControls()
Gets control widgets for frame.- Specified by:
getControlsin classViewJFrameBase- Returns:
- controls
-
getImageA
public ModelImage getImageA()
Returns the reference to imageA.- Specified by:
getImageAin classViewJFrameBase- Returns:
- image
-
getImageB
public ModelImage getImageB()
Returns the reference to imageB.- Specified by:
getImageBin classViewJFrameBase- Returns:
- imageB
-
itemStateChanged
public void itemStateChanged(java.awt.event.ItemEvent event)
sets the flags for the checkboxes.- Specified by:
itemStateChangedin interfacejava.awt.event.ItemListener- Parameters:
event- event that triggered this function
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseClickedin 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:
mouseDraggedin interfacejava.awt.event.MouseMotionListener- Parameters:
mouseEvent- event that triggered this function
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseEnteredin interfacejava.awt.event.MouseListener- Parameters:
mouseEvent- DOCUMENT ME!
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseExitedin 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:
mouseMovedin interfacejava.awt.event.MouseMotionListener- Parameters:
mouseEvent- event that triggered this function
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mousePressedin interfacejava.awt.event.MouseListener- Parameters:
mouseEvent- event that triggered function
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent mouseEvent)
unchanged.- Specified by:
mouseReleasedin 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:
removeControlsin 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:
setActiveImagein interfaceVOIManagerInterfaceListener- Specified by:
setActiveImagein 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:
setAlphaBlendin 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:
setControlsin 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:
setEnabledin 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:
setImageBin classViewJFrameBase- Parameters:
_imageB- Image to set the frame to
-
setLUTa
public void setLUTa(ModelLUT LUT)
Sets the model LUT for the imageA.- Overrides:
setLUTain classViewJFrameBase- Parameters:
LUT- the model LUT
-
setLUTb
public void setLUTb(ModelLUT LUT)
setLUTb - accessor that sets the model LUTb for the imageB.- Overrides:
setLUTbin 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:
setPaintBitmapSwitchin 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:
setRGBTAin 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:
setRGBTBin 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:
setSlicein 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:
setTimeSlicein 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:
setTitlein classViewJFrameBase
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent e)
sets values based on knob along slider.- Specified by:
stateChangedin interfacejavax.swing.event.ChangeListener- Overrides:
stateChangedin 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:
updateImageExtentsin interfaceViewImageUpdateInterface- Specified by:
updateImageExtentsin 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:
updateImagesin 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:
updateImagesin 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:
updateImagesin 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:
windowActivatedin interfacejava.awt.event.WindowListener- Overrides:
windowActivatedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowClosed
public void windowClosed(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowClosedin interfacejava.awt.event.WindowListener- Overrides:
windowClosedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent event)
Calls dispose.- Specified by:
windowClosingin interfacejava.awt.event.WindowListener- Overrides:
windowClosingin classViewJFrameBase- Parameters:
event- event that triggered function
-
windowDeactivated
public void windowDeactivated(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowDeactivatedin interfacejava.awt.event.WindowListener- Overrides:
windowDeactivatedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowDeiconified
public void windowDeiconified(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowDeiconifiedin interfacejava.awt.event.WindowListener- Overrides:
windowDeiconifiedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowIconified
public void windowIconified(java.awt.event.WindowEvent event)
unchanged.- Specified by:
windowIconifiedin interfacejava.awt.event.WindowListener- Overrides:
windowIconifiedin classViewJFrameBase- Parameters:
event- DOCUMENT ME!
-
windowOpened
public void windowOpened(java.awt.event.WindowEvent event)
Unchanged.- Specified by:
windowOpenedin interfacejava.awt.event.WindowListener- Overrides:
windowOpenedin 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:
PointerActivein interfaceVOIManagerInterfaceListener
-
PropDown
public WildMagic.LibFoundation.Mathematics.Vector3f PropDown(int iActive)
- Specified by:
PropDownin interfaceVOIManagerInterfaceListener
-
PropUp
public WildMagic.LibFoundation.Mathematics.Vector3f PropUp(int iActive)
- Specified by:
PropUpin interfaceVOIManagerInterfaceListener
-
create3DVOI
public void create3DVOI(boolean bIntersection)
- Specified by:
create3DVOIin interfaceVOIManagerInterfaceListener
-
getActiveImage
public ModelImage getActiveImage()
- Specified by:
getActiveImagein interfaceVOIManagerInterfaceListener
-
getActiveLUT
public ModelLUT getActiveLUT()
- Specified by:
getActiveLUTin interfaceVOIManagerInterfaceListener
-
getActiveRGB
public ModelRGB getActiveRGB()
- Specified by:
getActiveRGBin interfaceVOIManagerInterfaceListener
-
getCenterPt
public WildMagic.LibFoundation.Mathematics.Vector3f getCenterPt()
- Specified by:
getCenterPtin interfaceVOIManagerInterfaceListener
-
getFrame
public javax.swing.JFrame getFrame()
- Specified by:
getFramein interfaceVOIManagerInterfaceListener
-
getVOIManager
public VOIManagerInterface getVOIManager()
- Specified by:
getVOIManagerin interfaceVOIManagerInterfaceListener
-
setActiveImage
public void setActiveImage(ModelImage kImage)
- Specified by:
setActiveImagein interfaceVOIManagerInterfaceListener
-
setCenter
public void setCenter(WildMagic.LibFoundation.Mathematics.Vector3f kCenter)
- Specified by:
setCenterin interfaceVOIManagerInterfaceListener
-
setModified
public void setModified()
- Specified by:
setModifiedin interfaceVOIManagerInterfaceListener
-
updateData
public void updateData()
- Specified by:
updateDatain interfaceVOIManagerInterfaceListener
-
setPaintMask
public void setPaintMask(java.util.BitSet mask)
- Specified by:
setPaintMaskin interfaceVOIManagerInterfaceListener
-
paintToShortMask
public void paintToShortMask()
- Specified by:
paintToShortMaskin interfaceVOIManagerInterfaceListener
-
paintToUbyteMask
public void paintToUbyteMask()
- Specified by:
paintToUbyteMaskin interfaceVOIManagerInterfaceListener
-
maskToPaint
public void maskToPaint()
- Specified by:
maskToPaintin interfaceVOIManagerInterfaceListener
-
initVOI
private void initVOI()
-
addSphereVOIs
public void addSphereVOIs(VOI annotations)
- Specified by:
addSphereVOIsin interfaceVOIManagerInterfaceListener
-
-