Class JPanelProbe
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
gov.nih.mipav.view.renderer.JPanelRendererBase
gov.nih.mipav.view.renderer.J3D.JPanelRendererJ3D
gov.nih.mipav.view.renderer.J3D.surfaceview.rfaview.JPanelProbe
- All Implemented Interfaces:
ActionListener,FocusListener,ItemListener,KeyListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,ChangeListener,ListSelectionListener
Dialog to turn slices bounding box of surface renderer on and off, and to change the color of the frame. This dialog
also control the X, Y, Z slices movements.
- Author:
- Ruida Cheng
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) classCancel the color dialog, change nothing.classHelper class for resizing.(package private) classPick up the selected color and call method to change the surface color.Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate JButtonDOCUMENT ME!private JCheckBoxburning point back face culling check box.private BurnBaseBurn base reference.private JCheckBoxburning point clipping check box.private intCurrent burning point index being hightlighted.private javax.vecmath.Vector3fBurning point coordinate vector in world coordinate system.private JListBurn list that hold the burning point names.private JButtonCalculat button.private javax.vecmath.Point3fBurning point coordinate.private JLabelburning point center label.private booleanBurning surface being clipped or not.private JButtonBurning point color button.private ViewJColorChooserColor chooser when the user changes the color of the surface.private JLabelBurning point color label.private booleanBurning surface being culled ( back face bulling ) or not.private intcurreent cursor nevigation mode.private JLabelVolume difference label for the current treatment.private JTextFieldVolume difference text.private JPanelProbe.DrawingPaneAssociate structure of the scroll pane to resize the panel properly.private javax.vecmath.Vector3fEnd point coordinate vector in the world coordinate system.private JLabelentry point label.private JPanelPanel that hold the entry point roation check box.private JCheckBoxentry point rotation check box.private JButtonLiver segmentation preset opacity transform function control button.private JButtonLoad button for the opacity transform function.private JLabelDOCUMENT ME!private JSliderRotation/Twist around the direction of the probe:.private floatThe maximum of the fram box values.private static intcursor default nevigation mode.private TreatmentInformationTreatment information to be used if the user wants to burn without any target surface.private floatBurning point opacity.private JLabelThe opacity slider label.private JSliderburning point surface opacity slider.private JLabel[]burning point surface opacity slider label.private ViewJFrameVolumeViewVolume view frame work reference.private ProbeProbe reference.private JListProbes list.private static intcursor probe nevigation mode.private JToggleButtonReset probe nevigation mode.private JToggleButtonControl the tri-planar probe nevigation mode.private JLabelburning point diameter label.private JLabelresult label to show the bone, vasculature detection information message.private JButtonSave button for the opacity tranform function.private JScrollPaneScroll pane that control the resizing of the panel.private JLabelburning point semi axis X label.private JTextFieldburning point semi axis X text field.private JLabelburning point semi axis Y label.private JTextFieldburning point semi axis Y text field.private JLabelburning point semi axis Z label.private JTextFieldburning point semi axis Z text field.private static final longUse serialVersionUID for interoperability.private booleanFlag indicates the show burning text label or not.private JCheckBoxShow the burning text label checkbox.private JButtonSkin segmentation preset opacity transform function control button.private JSliderThe probe X slider that control the probe push and pull movements.private booleanWhether to snap to center of a target surface when it is selected; defaults to true.private JCheckBoxCheckbox indicating whether to snap to center of a target surface when it is selected.private javax.vecmath.Vector3fStart point ( invisible ) coordinate vector in world coordinate system.private JTabbedPaneThe main tabbed pane in the volume view frame.private JPanelThe main tab contrl panel.private JListSurface target list (tumors).private JTextFieldLabel containing the volume of the current target surface.private JTextFieldX label for the center coordinate of the current target surface.private JTextFieldY label for the center coordinate of the current target surface.private JTextFieldZ label for the center coordinate of the current target surface.private JComboBoxCombo box for indicating the length of the probe tip.private JToolBarTool bar.private JLabelBurning points total volume label.private JTextFieldBurning point total volume text.private JToggleButtonControl the tri-planar default view nevigation mode.private Vector<TreatmentInformation> List of treatment sets.private JLabelburing point volume label.private JTextFieldburning pont volume text box.private floatParent frame box value.private JLabelburning point X, Y, Z coordinate label.private JLabelentry point X, Y, Z coordinate label.private floatThe resolutions of the (possibly respampled) image (the one shown in the renderer).private JSliderslider that controls the probe moves along the x direction.private JTextFieldburning point X, Y, Z coordinate text box.private JTextFieldentry point X, Y, Z coordinate text box.private floatParent frame box value.private JLabelburning point X, Y, Z coordinate label.private JLabelentry point X, Y, Z coordinate label.private floatThe resolutions of the (possibly respampled) image (the one shown in the renderer).private JSliderslider that controls the probe moves along the y direction.private JTextFieldburning point X, Y, Z coordinate text box.private JTextFieldentry point X, Y, Z coordinate text box.private floatParent frame box value.private JLabelburning point X, Y, Z coordinate label.private JLabelentry point X, Y, Z coordinate label.private floatThe resolutions of the (possibly respampled) image (the one shown in the renderer).private JSliderslider that controls the probe moves along the z direction.private JTextFieldburning point X, Y, Z coordinate text box.private JTextFieldentry point X, Y, Z coordinate text box.Fields inherited from class gov.nih.mipav.view.renderer.J3D.JPanelRendererJ3D
rayBasedRender, renderBaseFields inherited from class gov.nih.mipav.view.renderer.JPanelRendererBase
applyButton, cancelButton, cancelFlag, closeButton, helpButton, isActiveImage, mainPanel, NEW, OKButton, REPLACE, runInSeparateThread, serif12, serif12BFields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionJPanelProbe(SurfaceRender parent, ViewJFrameBase _parentFrame, float xBox, float yBox, float zBox) Constructor to initialize the probe control panel. -
Method Summary
Modifier and TypeMethodDescriptionvoidactionPerformed(ActionEvent event) Action perform event function that handle all the commands in the probe panel.private voidBuild the tab panel containing ablation (sphere/ellipsoid) packing parameters, etc.private voidBuild the tab containing the color, opac, picking, labels, etc for burns.private voidBuild the tab which allows the user to change the currently used probe model.private voidBuild the tab with controls / info used in probe placement before a burn.private JPanelSetup the probe moving control panel that include x, y, z moving sliders.private voidBuild the four tabbed panes, probe control pane, burn control pane, burn parameter control pane, and demo pane.private JPanelBuild the target surface (tumor) control panel.private voidBuild the tab which allows the user to pick the current tumor to target, to load/remove tumor surfaces and show tumor position and volume info.private voidBuild the probe toolbar control.private voidBuild the tab containing ablation treatment information, including a list of burns; burn removal, position and volume; comparison of current tumor vs current set of burns.private static JLabelcreateBoldLabel(String title) Creates a label in the proper (bold) font and color.private static JLabelcreateLabel(String title) Creates a label in the proper font and color.voidDetect the body tissue component.voiddispose()Dispose memory.private voidenableBurnTreatmentComponents(boolean flag) Enable or disable the components on the target treatment panel.private voidenableBurnVisComponents(boolean flag) Enable or disable the components on the burn visualization panel.voidenableProbeBehavior(boolean flag) Enable probe mouse behavior branch group.Get the burn base reference inside the probe control panel.booleanGet the show burning point label's flag.javax.vecmath.Vector3fGet the burning point world coordinate.javax.media.j3d.BranchGroupGet the burn root branch group.private voidgetColorChange(Color color) This is called when the user chooses a new color for the surface.Get the current highlight surface.Get the treatment info that matches the currently selected target surface.javax.vecmath.Vector3fGet the end point world coordinate vector.javax.vecmath.Point3fGet the entry ponit world coordinate.Get the main control panel.Get the probe base reference inside the burning control panel.javax.media.j3d.BranchGroupReturn the root to the probes branches.javax.vecmath.Vector3fGet the start point world coordinate vector.Return the currently targeted surface.private TreatmentInformationgetTreatmentInfo(int index) Get information about a treatment.private voidinit()Initialize the whole probe panel control layout.booleanReturn whether the user wants to snap to the treatment target surface.private ModelImageAsk the user for an image to load and return it.voidloadVisualizationDataFrom(boolean loadAll, String filename, String dirName, boolean quietMode) This method loads the LUT and opacity transfer function for the active image.private voidLoads visualization settings for this image.private voidRemove all the burning point geometry shapes in the volume.private voidThe action taken when the Remove button is clicked in the list box.voidDuring mouse release, remove the probing path and clear the probe color mask.voidresizePanel(int panelWidth, int frameHeight) Resizig the control panel with ViewJFrameVolumeView's frame width and height.private voidsaveImage(ModelImage img) Ask the user for a name to save an image as and then write it out to disk.voidsaveVisualizationDataAs(boolean saveAll, String filename, String dirName) This method saves the LUT and opacity function for the active image.voidsetProbeGreenColor(boolean flag) When the probe is picked, switch the probe geometry appearance to green.voidWhen the burn button is clicked, invoked the start burn method to show the burnning process.private voidStart to try to choose an optimal ablation plan for the current target surface.voidState change event, invokded by the sliders moves.javax.vecmath.Point3ftransformPtVolumeToImage(javax.vecmath.Point3f pt) Transform a java3d point [-1,1] to the image volume space.voidupdateBurnList(int index) Updates the burn name list's selected element.voidUpdate probe list.voidupdateProbePos(float x, float y, float z) Updates the probe world coordinate from the tri-planar view's mouse drag event.private voidUpdate the labels which show info about the current target surface.voidUpdate target surface list from the JPanelSurface control dialog.voidupdateTreatmentPanel(boolean swapBurnList) Update the treatment panel components to correpsond to the currently selected target surface.voidvalueChanged(ListSelectionEvent kEvent) Value changed event, which invoked by probe name list, burn name list, surface name list, burn param name list.booleanwithinDistance(float centerX, float centerY, float centerZ, float ptrX, float ptrY, float ptrZ, double r) Check to see if the given voxel is within the sphere radius from the center point.Methods inherited from class gov.nih.mipav.view.renderer.J3D.JPanelRendererJ3D
disposeLocal, getSurfaceRender, setRayBasedRender, setSurfaceRenderMethods inherited from class gov.nih.mipav.view.renderer.JPanelRendererBase
buildApplyButton, buildCancelButton, buildCloseButton, buildHelpButton, buildOKButton, buildTitledBorder, finalize, focusGained, focusLost, isCancelled, itemStateChanged, keyPressed, keyReleased, keyTyped, makeString, setLeftHandSystem, setVisible, setVisibleStandard, setWCSystem, testParameterMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, updateMethods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTreeMethods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.awt.event.FocusListener
focusGained, focusLostMethods inherited from interface java.awt.event.ItemListener
itemStateChangedMethods inherited from interface java.awt.event.KeyListener
keyPressed, keyReleased, keyTyped
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDUse serialVersionUID for interoperability.- See Also:
-
NONE
private static int NONEcursor default nevigation mode. -
PROBEMOVE
private static int PROBEMOVEcursor probe nevigation mode. -
bonePresetButton
DOCUMENT ME! -
burnBackFaceCB
burning point back face culling check box. -
burnBase
Burn base reference. -
burnClipCB
burning point clipping check box. -
burnIndex
private int burnIndexCurrent burning point index being hightlighted. -
burningPtTransVector
private javax.vecmath.Vector3f burningPtTransVectorBurning point coordinate vector in world coordinate system. -
burnList
Burn list that hold the burning point names. -
calcButton
Calculat button. -
center
private javax.vecmath.Point3f centerBurning point coordinate. -
centerLabel
burning point center label. -
clipping
private boolean clippingBurning surface being clipped or not. -
colorButton
Burning point color button. -
colorChooser
Color chooser when the user changes the color of the surface. -
colorLabel
Burning point color label. -
culling
private boolean cullingBurning surface being culled ( back face bulling ) or not. -
cursorMode
private int cursorModecurreent cursor nevigation mode. -
diffVolumeLabel
Volume difference label for the current treatment. -
diffVolumeText
Volume difference text. -
drawingPane
Associate structure of the scroll pane to resize the panel properly. -
endPtTransVector
private javax.vecmath.Vector3f endPtTransVectorEnd point coordinate vector in the world coordinate system. -
entryPointLabel
entry point label. -
entryPointPanel
Panel that hold the entry point roation check box. -
entryPointRotationCB
entry point rotation check box. -
liverPresetButton
Liver segmentation preset opacity transform function control button. -
loadVisualizationButton
Load button for the opacity transform function. -
m_kProbeTwistLabel
DOCUMENT ME! -
m_kProbeTwistSlider
Rotation/Twist around the direction of the probe:. -
maxBox
private float maxBoxThe maximum of the fram box values. -
noTargetTreatment
Treatment information to be used if the user wants to burn without any target surface. -
opacity
private float opacityBurning point opacity. -
opacityLabel
The opacity slider label. -
opacitySlider
burning point surface opacity slider. -
opacitySliderLabels
burning point surface opacity slider label. -
parentFrame
Volume view frame work reference. -
probe
Probe reference. -
probeList
Probes list. -
probeResetButton
Reset probe nevigation mode. -
probeTargetButton
Control the tri-planar probe nevigation mode. -
radiusLabel
burning point diameter label. -
resultLabel
result label to show the bone, vasculature detection information message. -
saveVisualizationButton
Save button for the opacity tranform function. -
scroller
Scroll pane that control the resizing of the panel. -
semiXLabel
burning point semi axis X label. -
semiXText
burning point semi axis X text field. -
semiYLabel
burning point semi axis Y label. -
semiYText
burning point semi axis Y text field. -
semiZLabel
burning point semi axis Z label. -
semiZText
burning point semi axis Z text field. -
showBurnLabels
private boolean showBurnLabelsFlag indicates the show burning text label or not. -
showBurnLabelsCB
Show the burning text label checkbox. -
skinPresetButton
Skin segmentation preset opacity transform function control button. -
sliderX
The probe X slider that control the probe push and pull movements. -
snapToTarget
private boolean snapToTargetWhether to snap to center of a target surface when it is selected; defaults to true. -
snapToTargetCB
Checkbox indicating whether to snap to center of a target surface when it is selected. -
startPtTransVector
private javax.vecmath.Vector3f startPtTransVectorStart point ( invisible ) coordinate vector in world coordinate system. -
tabbedPane
The main tabbed pane in the volume view frame. -
tabPanel
The main tab contrl panel. -
targetList
Surface target list (tumors). -
targetVolumeText
Label containing the volume of the current target surface. -
targetXText
X label for the center coordinate of the current target surface. -
targetYText
Y label for the center coordinate of the current target surface. -
targetZText
Z label for the center coordinate of the current target surface. -
tipLengthCB
Combo box for indicating the length of the probe tip. Currently used just by CoolTip probe. -
toolBar
Tool bar. -
totalVolumeLabel
Burning points total volume label. -
totalVolumeText
Burning point total volume text. -
traverseButton
Control the tri-planar default view nevigation mode. -
treatmentVector
List of treatment sets. -
volumeLabel
buring point volume label. -
volumeText
burning pont volume text box. -
xBox
private float xBoxParent frame box value. -
yBox
private float yBoxParent frame box value. -
zBox
private float zBoxParent frame box value. -
xLabel
burning point X, Y, Z coordinate label. -
yLabel
burning point X, Y, Z coordinate label. -
zLabel
burning point X, Y, Z coordinate label. -
xLabelEntry
entry point X, Y, Z coordinate label. -
yLabelEntry
entry point X, Y, Z coordinate label. -
zLabelEntry
entry point X, Y, Z coordinate label. -
xRes
private float xResThe resolutions of the (possibly respampled) image (the one shown in the renderer). -
yRes
private float yResThe resolutions of the (possibly respampled) image (the one shown in the renderer). -
zRes
private float zResThe resolutions of the (possibly respampled) image (the one shown in the renderer). -
xSliderS
slider that controls the probe moves along the x direction. -
xText
burning point X, Y, Z coordinate text box. -
yText
burning point X, Y, Z coordinate text box. -
zText
burning point X, Y, Z coordinate text box. -
xTextEntry
entry point X, Y, Z coordinate text box. -
yTextEntry
entry point X, Y, Z coordinate text box. -
zTextEntry
entry point X, Y, Z coordinate text box. -
ySliderS
slider that controls the probe moves along the y direction. -
zSliderS
slider that controls the probe moves along the z direction.
-
-
Constructor Details
-
JPanelProbe
public JPanelProbe(SurfaceRender parent, ViewJFrameBase _parentFrame, float xBox, float yBox, float zBox) Constructor to initialize the probe control panel.- Parameters:
parent- SurfaceRender reference._parentFrame- ViewJFrameVolumeView reference.xBox- DOCUMENT ME!yBox- DOCUMENT ME!zBox- DOCUMENT ME!
-
-
Method Details
-
actionPerformed
Action perform event function that handle all the commands in the probe panel.- Specified by:
actionPerformedin interfaceActionListener- Specified by:
actionPerformedin classJPanelRendererBase- Parameters:
event- Action Event
-
detectTissue
public void detectTissue()Detect the body tissue component. If the bone or the vasculature is detected, draw the corresponding color along the probing path, also, show the detection message in the search panel. -
dispose
public void dispose()Dispose memory. -
enableProbeBehavior
public void enableProbeBehavior(boolean flag) Enable probe mouse behavior branch group.- Parameters:
flag-truemeans turn on,falsemeans turn off.
-
getBurnBase
Get the burn base reference inside the probe control panel.- Returns:
- BurnBase
-
getBurnLabelFlag
public boolean getBurnLabelFlag()Get the show burning point label's flag.- Returns:
- boolean show label or not.
-
getBurnPoint
public javax.vecmath.Vector3f getBurnPoint()Get the burning point world coordinate.- Returns:
- Vector3f burning point tranform vector.
-
getBurnRootParentBG
public javax.media.j3d.BranchGroup getBurnRootParentBG()Get the burn root branch group. JPanelSurface calls this method during the geometry picking procedure.- Returns:
- BranchGroup
-
getCurSurface
Get the current highlight surface.- Returns:
- SurfaceAttributes
-
getCurTreatment
Get the treatment info that matches the currently selected target surface.- Returns:
- info about a treatment
-
getEndPoint
public javax.vecmath.Vector3f getEndPoint()Get the end point world coordinate vector.- Returns:
- Vector3f end point transform vector.
-
getEntryPoint
public javax.vecmath.Point3f getEntryPoint()Get the entry ponit world coordinate.- Returns:
- Point3f entry ponit transform vector.
-
getMainPanel
Get the main control panel.- Specified by:
getMainPanelin classJPanelRendererBase- Returns:
- JPanel main control panel.
-
getProbeBase
Get the probe base reference inside the burning control panel.- Returns:
- Probe
-
getProbesRootBG
public javax.media.j3d.BranchGroup getProbesRootBG()Return the root to the probes branches.- Returns:
- BranchGroup probes branch group
-
getStartPoint
public javax.vecmath.Vector3f getStartPoint()Get the start point world coordinate vector.- Returns:
- Vector3f start point tranform vector.
-
getTargetSurface
Return the currently targeted surface.- Returns:
- the attributes of the current target surface
-
isSnapToTarget
public boolean isSnapToTarget()Return whether the user wants to snap to the treatment target surface.- Returns:
- whether to snap to the target
-
loadVisualizationDataFrom
public void loadVisualizationDataFrom(boolean loadAll, String filename, String dirName, boolean quietMode) This method loads the LUT and opacity transfer function for the active image.- Parameters:
loadAll- boolean indicating that both lut and transfer functions should be loaded. If false, then only transfer functions are loaded.filename- filename to load LUT fromdirName- directory to load LUT fromquietMode- if true indicates that warnings should not be displayed.
-
removeProbingPath
public void removeProbingPath()During mouse release, remove the probing path and clear the probe color mask. -
resizePanel
public void resizePanel(int panelWidth, int frameHeight) Resizig the control panel with ViewJFrameVolumeView's frame width and height.- Overrides:
resizePanelin classJPanelRendererBase- Parameters:
panelWidth- the panel should beframeHeight- the height of the renderer frame
-
saveVisualizationDataAs
This method saves the LUT and opacity function for the active image. If either filename or directory is null, then the user will be prompted for a filename.- Parameters:
saveAll- boolean indicating that both lut and transfer functions should be saved. If false, then only transfer functions are saved.filename- filename to save LUT asdirName- directory to save LUT to
-
setProbeGreenColor
public void setProbeGreenColor(boolean flag) When the probe is picked, switch the probe geometry appearance to green.- Parameters:
flag- boolean probe picked or not.
-
startBurn
public void startBurn()When the burn button is clicked, invoked the start burn method to show the burnning process. -
stateChanged
State change event, invokded by the sliders moves.- Specified by:
stateChangedin interfaceChangeListener- Parameters:
e- ChangeEvent
-
transformPtVolumeToImage
public javax.vecmath.Point3f transformPtVolumeToImage(javax.vecmath.Point3f pt) Transform a java3d point [-1,1] to the image volume space.- Parameters:
pt- the point in java3d space- Returns:
- the equivalent point in volume space
-
updateBurnList
public void updateBurnList(int index) Updates the burn name list's selected element. Called from the JPanelSurface.- Parameters:
index- selected index number.
-
updateProbeList
public void updateProbeList()Update probe list. -
updateProbePos
public void updateProbePos(float x, float y, float z) Updates the probe world coordinate from the tri-planar view's mouse drag event.- Parameters:
x- float x coordinatey- float y coordinatez- float z coordinate
-
updateTargetList
public void updateTargetList()Update target surface list from the JPanelSurface control dialog. -
updateTreatmentPanel
public void updateTreatmentPanel(boolean swapBurnList) Update the treatment panel components to correpsond to the currently selected target surface.- Parameters:
swapBurnList- whether to swap in the burn list of the currently selected target surface treatment (used when a new selection is made in the target list)
-
valueChanged
Value changed event, which invoked by probe name list, burn name list, surface name list, burn param name list.- Specified by:
valueChangedin interfaceListSelectionListener- Parameters:
kEvent- ListSelection Event
-
withinDistance
public boolean withinDistance(float centerX, float centerY, float centerZ, float ptrX, float ptrY, float ptrZ, double r) Check to see if the given voxel is within the sphere radius from the center point.- Parameters:
centerX- float center x coordinatecenterY- float center y coordinatecenterZ- float center z coordinateptrX- float given point x coordinateptrY- float given point x coordinateptrZ- float given point x coordinater- double given radius- Returns:
- boolean true within the distance, false not.
-
createBoldLabel
Creates a label in the proper (bold) font and color.- Parameters:
title- The title of the label.- Returns:
- The new label.
-
createLabel
Creates a label in the proper font and color.- Parameters:
title- The title of the label.- Returns:
- The new label.
-
buildBurnPackingPanel
private void buildBurnPackingPanel()Build the tab panel containing ablation (sphere/ellipsoid) packing parameters, etc. -
buildBurnVisPanel
private void buildBurnVisPanel()Build the tab containing the color, opac, picking, labels, etc for burns. -
buildProbeModelPanel
private void buildProbeModelPanel()Build the tab which allows the user to change the currently used probe model. -
buildProbePlacementPanel
private void buildProbePlacementPanel()Build the tab with controls / info used in probe placement before a burn. This includes rot, trans, in/out, entry pt rotation, warning of intersection of problem regions, and the saving / loading of a problem region mapping. -
buildProbeSlider
Setup the probe moving control panel that include x, y, z moving sliders.- Returns:
- the trans x, y, z and in/out probe movement panel.
-
buildTabbedPanel
private void buildTabbedPanel()Build the four tabbed panes, probe control pane, burn control pane, burn parameter control pane, and demo pane. -
buildTargetListPanel
Build the target surface (tumor) control panel. This panel can add or remove surfaces, also changes the surface opacity.- Returns:
- the target surface list panel.
-
buildTargetPanel
private void buildTargetPanel()Build the tab which allows the user to pick the current tumor to target, to load/remove tumor surfaces and show tumor position and volume info. -
buildToolBar
private void buildToolBar()Build the probe toolbar control. -
buildTreatmentPanel
private void buildTreatmentPanel()Build the tab containing ablation treatment information, including a list of burns; burn removal, position and volume; comparison of current tumor vs current set of burns. -
enableBurnTreatmentComponents
private void enableBurnTreatmentComponents(boolean flag) Enable or disable the components on the target treatment panel.- Parameters:
flag- whether to enable the components
-
enableBurnVisComponents
private void enableBurnVisComponents(boolean flag) Enable or disable the components on the burn visualization panel.- Parameters:
flag- whether to enable the components
-
getColorChange
This is called when the user chooses a new color for the surface. It changes the color of the surface.- Parameters:
color- Color to change surface to.
-
getTreatmentInfo
Get information about a treatment.- Parameters:
index- the index of the treatment to retreive- Returns:
- info about a treatment
-
init
private void init()Initialize the whole probe panel control layout. -
loadImage
Ask the user for an image to load and return it.- Returns:
- the image the user wants to load
-
loadVisualizationSettings
Loads visualization settings for this image.- Parameters:
lut- the lut transfer functionopac- the opacity transfer function
-
removeAllBurn
private void removeAllBurn()Remove all the burning point geometry shapes in the volume. -
removeBurn
private void removeBurn()The action taken when the Remove button is clicked in the list box. All selected surfaces in the list box are removed from the scene graph. -
saveImage
Ask the user for a name to save an image as and then write it out to disk.- Parameters:
img- the image to save
-
startBurnPacking
private void startBurnPacking()Start to try to choose an optimal ablation plan for the current target surface. -
updateTargetLabels
private void updateTargetLabels()Update the labels which show info about the current target surface.
-