Package gov.nih.mipav.view.renderer.J3D
Class JPanelClip
- 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.JPanelClip
-
- All Implemented Interfaces:
com.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback
,java.awt.event.ActionListener
,java.awt.event.FocusListener
,java.awt.event.ItemListener
,java.awt.event.KeyListener
,java.awt.event.MouseListener
,java.awt.event.MouseMotionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.event.ChangeListener
public class JPanelClip extends JPanelRendererJ3D implements javax.swing.event.ChangeListener, java.awt.event.MouseListener, com.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback, java.awt.event.MouseMotionListener
Title: JPanelClip
Description: Clip panel control of the surface renderer. The clipping control includes x, y, z clipping sliders; the arbitrary and static eye clipping sliders.
- Author:
- Ruida Cheng
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
JPanelClip.CancelListener
Does nothing.(package private) class
JPanelClip.DrawingPanel
Wrapper in order to hold the control panel layout in the JScrollPane.(package private) class
JPanelClip.OkColorListener
Pick up the selected color and call method to change the VOI color.-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description private javax.vecmath.Vector4f[]
AclipPlanePts
Arbitrary clipping plane four corners points.private com.sun.j3d.utils.behaviors.mouse.MouseRotate
arbiMouseRotateBehavior
Mouse Rotate behavior of the arbitrary clipping plane.private javax.media.j3d.TransformGroup
arbiTG
Tranform group for arbitrary clipping plane.private javax.media.j3d.Transform3D
arbiTrans3d
Transform3D group for clipSliceA frame box and ModelClip arbitrary clipping plane.private javax.media.j3d.Switch
arbitrary_SG
Arbitrary clipping plane switch group.private int
aSlice
Which arbitray clipping slice is currently displayed.private float
axisAngle
Value attribute for the roation axis.private float
axisX
Value attribute for the roation axis.private float
axisY
Value attribute for the roation axis.private float
axisZ
Value attribute for the roation axis.private javax.media.j3d.BranchGroup
behaviorBG
The BranchGroup to which the arbitrary behaviors are attached and rotate.private javax.swing.JCheckBox
boundingCheckA
Arbitrary and static clipping plane check box.private javax.swing.JCheckBox
boundingCheckStatic
Arbitrary and static clipping plane check box.private javax.swing.JCheckBox
boundingCheckStaticInv
Arbitrary and static clipping plane check box.private javax.swing.JCheckBox
boundingCheckX
Check box to turn the clipping plane frame on and off.private javax.swing.JCheckBox
boundingCheckXInv
X,Y,Z inverse clipping plane check box.private javax.swing.JCheckBox
boundingCheckY
Check box to turn the clipping plane frame on and off.private javax.swing.JCheckBox
boundingCheckYInv
X,Y,Z inverse clipping plane check box.private javax.swing.JCheckBox
boundingCheckZ
Check box to turn the clipping plane frame on and off.private javax.swing.JCheckBox
boundingCheckZInv
X,Y,Z inverse clipping plane check box.private javax.swing.JCheckBox
boxA
Static and static inverse, arbitrary clipping plane check box.private javax.swing.JCheckBox
boxStatic
Static and static inverse, arbitrary clipping plane check box.private javax.swing.JCheckBox
boxStaticInv
Static and static inverse, arbitrary clipping plane check box.private javax.swing.JCheckBox
boxX
Check boxes that turn the image plane and the sliders on and off.private javax.swing.JCheckBox
boxXInv
Check boxes that turn the image plane and the sliders on and off.private javax.swing.JCheckBox
boxY
Check boxes that turn the image plane and the sliders on and off.private javax.swing.JCheckBox
boxYInv
Check boxes that turn the image plane and the sliders on and off.private javax.swing.JCheckBox
boxZ
Check boxes that turn the image plane and the sliders on and off.private javax.swing.JCheckBox
boxZInv
Check boxes that turn the image plane and the sliders on and off.private int
clipCount
Counters show the event number in the mouse recorder.private MouseEventVector
clipEvents
Mouse event vector that record the clipping plane sliders changes.private ViewJComponentBoxSlice
clipSliceA
Arbitrary clipping plane yellow boundary indicator box.private javax.media.j3d.BranchGroup
clipSliceA_BG
Arbitrary clipping branch group.private ViewJComponentBoxSlice
clipSliceAIndicator
Arbitrary clipping plane yellow boundary indicator box.private javax.media.j3d.BranchGroup
clipSliceAIndicator_BG
Arbitrary clipping branch group.private ViewJComponentBoxSlice
clipSliceStatic
Static clipping plane boundary box.private ViewJComponentBoxSlice
clipSliceStaticInv
Static clipping plane boundary box.private ViewJComponentBoxSlice
clipSliceX
The bounding box frame around the clipping planes.private ViewJComponentBoxSlice
clipSliceXInv
X, Y, Z inverse clipping slice boundary box.private ViewJComponentBoxSlice
clipSliceY
The bounding box frame around the clipping planes.private ViewJComponentBoxSlice
clipSliceYInv
X, Y, Z inverse clipping slice boundary box.private ViewJComponentBoxSlice
clipSliceZ
The bounding box frame around the clipping planes.private ViewJComponentBoxSlice
clipSliceZInv
X, Y, Z inverse clipping slice boundary box.private javax.swing.JSlider
clipSliderStatic
Static, static inverse and arbitrary clipping plane boundary box.private javax.swing.JSlider
clipSliderStaticInv
Static, static inverse and arbitrary clipping plane boundary box.private javax.swing.JSlider
clipSliderX
Sliders for the image planes.private javax.swing.JSlider
clipSliderY
Sliders for the image planes.private javax.swing.JSlider
clipSliderZ
Sliders for the image planes.private javax.swing.JButton
colorButtonA
Color button for the arbitrary clipping plane frame.private javax.swing.JButton
colorButtonStatic
Color button for the static clipping plane frame.private javax.swing.JButton
colorButtonStaticInv
Color button for the static clipping plane frame.private javax.swing.JButton
colorButtonX
Color button for X clipping plane frame.private javax.swing.JButton
colorButtonXInv
Color button for X clipping plane frame.private javax.swing.JButton
colorButtonY
Color button for Y clipping plane frame.private javax.swing.JButton
colorButtonYInv
Color button for Y clipping plane frame.private javax.swing.JButton
colorButtonZ
Color button for Z clipping plane frame.private javax.swing.JButton
colorButtonZInv
Color button for Z clipping plane frame.private ViewJColorChooser
colorChooser
Color chooser dialog.(package private) boolean[]
enables
Enable flags for the 6 ( X, Y, Z and inverse ) clipping planes.(package private) boolean[]
enablesArbi
Enable flags for the arbitrary clipping planes.(package private) boolean[]
enablesStatic
Enable flags for the static clipping planes.private javax.vecmath.Vector4d
eqnA
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d[]
eqnPlanes
Vetor holding the clipping plane equations.private javax.vecmath.Vector4d[]
eqnPlanesArbi
Vetor holding the clipping plane equations.private javax.vecmath.Vector4d[]
eqnPlanesStatic
Vetor holding the clipping plane equations.private javax.vecmath.Vector4d
eqnX
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d
eqnXInv
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d
eqnY
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d
eqnYInv
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d
eqnZ
Vector4D clipping equation of each clipping plane.private javax.vecmath.Vector4d
eqnZInv
Vector4D clipping equation of each clipping plane.private javax.swing.JButton
extractButtonA
Extract arbitrary cliping plane button.private javax.swing.JButton
extractButtonS
Extract static eye cliping plane button.private javax.vecmath.Point3f[]
intersectionPts
intersectioin points coordinate.private int
iNumLights
12 possible intersection points.private boolean
is6PlaneClipping
Flag to indicate 6 plane clipping is active.private boolean
isClipArbiPicked
Arbitrary clipping plane frame being picked or not.private boolean
isFirstTimeBuildTree
First time to build the clipping plane tree.private boolean
isStateChangedEvent
Flag to indicate StateChangeEvent invoked.private boolean
isTransformChanged
Flag to indicate tranformChanged event invoked.private javax.swing.JLabel
labelA
Static cliiping slider labels.private javax.swing.JLabel
labelAEnd
Arbitrary clipping slider labels.private javax.swing.JLabel
labelAMid
Arbitrary clipping slider labels.private javax.swing.JLabel
labelAStart
Arbitrary clipping slider labels.private javax.swing.JLabel
labelStatic
Static cliiping slider labels.private javax.swing.JLabel
labelStaticEnd
Static clipping plane labels.private javax.swing.JLabel
labelStaticInv
Static cliiping slider labels.private javax.swing.JLabel
labelStaticInvEnd
Static inverse clipping plane labels.private javax.swing.JLabel
labelStaticInvMid
Static inverse clipping plane labels.private javax.swing.JLabel
labelStaticInvStart
Static inverse clipping plane labels.private javax.swing.JLabel
labelStaticMid
Static clipping plane labels.private javax.swing.JLabel
labelStaticStart
Static clipping plane labels.private javax.swing.JLabel
labelX
Sliders labels.private javax.swing.JLabel
labelXEnd
Slider tick labels.private javax.swing.JLabel
labelXEndInv
X clipping slider labels.private javax.swing.JLabel
labelXInv
Sliders labels.private javax.swing.JLabel
labelXMid
Slider tick labels.private javax.swing.JLabel
labelXMidInv
X clipping slider labels.private javax.swing.JLabel
labelXStart
Slider tick labels.private javax.swing.JLabel
labelXStartInv
X clipping slider labels.private javax.swing.JLabel
labelY
Sliders labels.private javax.swing.JLabel
labelYEnd
Y clipping slider labels.private javax.swing.JLabel
labelYEndInv
Y inverse clipping slider labels.private javax.swing.JLabel
labelYInv
Sliders labels.private javax.swing.JLabel
labelYMid
Y clipping slider labels.private javax.swing.JLabel
labelYMidInv
Y inverse clipping slider labels.private javax.swing.JLabel
labelYStart
Y clipping slider labels.private javax.swing.JLabel
labelYStartInv
Y inverse clipping slider labels.private javax.swing.JLabel
labelZ
Sliders labels.private javax.swing.JLabel
labelZEnd
Z clipping slider labels.private javax.swing.JLabel
labelZEndInv
Z clipping slider labels.private javax.swing.JLabel
labelZInv
Sliders labels.private javax.swing.JLabel
labelZMid
Z clipping slider labels.private javax.swing.JLabel
labelZMidInv
Z clipping slider labels.private javax.swing.JLabel
labelZStart
Z clipping slider labels.private javax.swing.JLabel
labelZStartInv
Z clipping slider labels.private int[]
m_aiImageA_backup
Backup of the data for undo:.private int[]
m_aiImageB_backup
ImageB backup buffer.private javax.media.j3d.BranchGroup[]
m_akLightBG
Parent of each light bulb.private javax.media.j3d.Material[]
m_akLightMaterials
Material properties for each light bulb.private com.sun.j3d.utils.geometry.Sphere[]
m_akLightSpheres
Shapes representing light bulbs.private javax.media.j3d.TransformGroup[]
m_akLightTransformGroup
Parent transform group.private javax.media.j3d.BranchGroup
m_kLightRoot
Parent of all the light bulbs.private float
maxBox
The largest of xBox,yBox,and zBox.private int
maxDim
The largest dimension of xDim, yDim and zDim.private javax.media.j3d.ModelClip
mc
Global model clip object.private javax.media.j3d.ModelClip
mcArbi
Global model clip object.private javax.media.j3d.BranchGroup
mcArbiBG
Branch group of the arbitrary clipping plane.private javax.media.j3d.BranchGroup
mcArbiExtendBG
Branch group of the arbitrary clipping plane.private javax.media.j3d.TransformGroup
mcArbiTG
ModelClip arbitrary TransformGroup.private javax.media.j3d.Transform3D
mcArbiTrans3D
Transform3D group for clipSliceA frame box and ModelClip arbitrary clipping plane.private javax.media.j3d.BranchGroup
mcBG
Branch group of the 6 clipping planes.private javax.media.j3d.BranchGroup
mcExtendBG
Branch group of the arbitrary clipping plane.private javax.media.j3d.ModelClip
mcStatic
Global model clip object.private javax.media.j3d.BranchGroup
mcStaticBG
Branch group of the static clipping plane.private javax.media.j3d.BranchGroup
objClipSliceA_BG
Arbitrary clipping branch group.private javax.media.j3d.BranchGroup
objClipSlices_BG
root of all the clipping slices branch group.private javax.media.j3d.BranchGroup
objClipSliceStatic_BG
Static clipping branch group.private javax.media.j3d.BranchGroup
objClipSliceStaticInv_BG
Static clipping branch group.private javax.media.j3d.BranchGroup
objClipSliceX_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.private javax.media.j3d.BranchGroup
objClipSliceXInv_BG
Parent of the -x, -y, -z clip slices branchgroup.private javax.media.j3d.BranchGroup
objClipSliceY_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.private javax.media.j3d.BranchGroup
objClipSliceYInv_BG
Parent of the -x, -y, -z clip slices branchgroup.private javax.media.j3d.BranchGroup
objClipSliceZ_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.private javax.media.j3d.BranchGroup
objClipSliceZInv_BG
Parent of the -x, -y, -z clip slices branchgroup.private javax.swing.JPanel
panelA
Arbitrary and static control panels.private javax.swing.JPanel
panelS
Arbitrary and static control panels.private javax.swing.JPanel
panelSInv
Arbitrary and static control panels.private javax.swing.JPanel
panelX
Declare each clipping plane control panel.private javax.swing.JPanel
panelXInv
Declare each clipping plane control panel.private javax.swing.JPanel
panelY
Declare each clipping plane control panel.private javax.swing.JPanel
panelYInv
Declare each clipping plane control panel.private javax.swing.JPanel
panelZ
Declare each clipping plane control panel.private javax.swing.JPanel
panelZInv
Declare each clipping plane control panel.private float
radicalRatio
Arbitrary clipping plane expanding ratio.private boolean
recordEventName
Flag indicates whether to record the clip event name.private javax.vecmath.AxisAngle4f
rotationAxis
Rotation axis to sync up the action for both ModelClip arbitrary clipping plane and the clipSliceA frame box transformGroup.private int
rotationCount
Counters show the event number in the mouse recorder.private MouseEventVector
rotationEvent
mouse rotation event vector for the arbitrary clipping plane.private javax.swing.JScrollPane
scroller
The scroll pane holding the panel content.private JPanelClip.DrawingPanel
scrollPanel
Scroll panel that holding all the control components.private static long
serialVersionUID
Use serialVersionUID for interoperability.private javax.swing.JSlider
sliderA
Static, static inverse and arbitrary clipping plane boundary box.private javax.swing.JSlider
sliderXInv
Sliders for the image planes.private javax.swing.JSlider
sliderYInv
Sliders for the image planes.private javax.swing.JSlider
sliderZInv
Sliders for the image planes.private int
sSlice
Record the current static clipping slice number.private int
sSliceInv
Record the current static clipping slice number.private javax.swing.JTabbedPane
tabbedPane
Tabbed Panel that hold the each clipping planes control box.private javax.swing.JTextField
textA
Static and arbitrary text field.private javax.swing.JTextField
textStatic
Static and arbitrary text field.private javax.swing.JTextField
textStaticInv
Static and arbitrary text field.private javax.swing.JTextField
textX
Text fields that display the slice number when slider moves.private javax.swing.JTextField
textXInv
X, Y, Z inverse text field.private javax.swing.JTextField
textY
Text fields that display the slice number when slider moves.private javax.swing.JTextField
textYInv
X, Y, Z inverse text field.private javax.swing.JTextField
textZ
Text fields that display the slice number when slider moves.private javax.swing.JTextField
textZInv
X, Y, Z inverse text field.private float
xBox
xBox, yBox, zBox from the parent scene.private int
xDim
Image X, Y, Z dimension.private int
xSlice
Which slice is currently displayed in the ZY plane.private int
xSliceInv
Which slice is currently displayed in the ZY plane.private float
yBox
xBox, yBox, zBox from the parent scene.private int
yDim
Image X, Y, Z dimension.private int
ySlice
Which slice is currently displayed in the XZ plane.private int
ySliceInv
Which slice is currently displayed in the XZ plane.private float
zBox
xBox, yBox, zBox from the parent scene.private int
zDim
Image X, Y, Z dimension.private int
zSlice
Which slice is currently displayed in the XY plane.private int
zSliceInv
Which slice is currently displayed in the XY plane.-
Fields inherited from class gov.nih.mipav.view.renderer.J3D.JPanelRendererJ3D
rayBasedRender, renderBase
-
Fields inherited from class gov.nih.mipav.view.renderer.JPanelRendererBase
applyButton, cancelButton, cancelFlag, closeButton, helpButton, isActiveImage, mainPanel, NEW, OKButton, REPLACE, runInSeparateThread, serif12, serif12B
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JPanelClip(SurfaceRender parent, float xBox, float yBox, float zBox)
3D texture surface renderer clipping dialog control.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent event)
Changes color of slices box frame and button if color button was pressed; turns bounding box on and off if checkbox was pressed.void
addClipSlice()
Attach clipping plane branch group.void
addClipSliceA()
Attach arbitrary clip slice bounding frame.void
addClipSliceStatic()
Attach static clip slice bounding frame.void
addClipSliceStaticInv()
Attach static inverse clip slice bounding frame.void
addClipSliceX()
Attach X clip slice bounding frame.void
addClipSliceXInv()
Attach X Invative clip slice bounding frame.void
addClipSliceY()
Attach Y clip slice bounding frame.void
addClipSliceYInv()
Attach Y Invative clip slice bounding frame.void
addClipSliceZ()
Attach Z clip slice bounding frame.void
addClipSliceZInv()
Attach Z Invative clip slice bounding frame.private void
addControlPanel(javax.swing.JPanel panel, java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Helper method that adds components to the control panel for the grid bag layout.void
addToModelClip(javax.media.j3d.BranchGroup root)
Add a new branch group to model clip for clipping.protected void
backupImage(ModelImage kImageA, ModelImage kImageB)
Called by the TextureSculptor or VolumeSculptor objects.void
buildClipPlanesTree()
Build cliping planes tree structure.void
buildPanelA()
Build the arbitrary clipping slider control panel.void
buildPanelS()
Build static clipping slider control panel.void
buildPanelSInv()
Build static inverse clipping slider control panel.void
buildPanelX()
Build x slider control panel.void
buildPanelXInv()
Build x negative clipping slider control panel.void
buildPanelY()
Build the y clipping slider control panel.void
buildPanelYInv()
Build the y negative clipping slider control panel.void
buildPanelZ()
Build the z clipping slider control panel.void
buildPanelZInv()
Build the z negative clipping slider control panel.void
cropVolume()
Mask the clipped volume region with image min intensity value.void
disable6Planes()
Disable the 6 clipping planes.void
disableClipA()
Disable the arbitrary clipping.void
disableClipPlanes()
Disable clipping planes when dialog window closed.void
disableClipPlanesArbi()
Disable arbitrary clipping planes.void
disableStaticClipping()
Disable the eye clipping plane.void
disableStaticInvClipping()
Disable the eye inverse clipping plane.void
displayAClipPlanePts()
Display the abitrary clipping plane corner points.void
displaySClipPlanePts()
Display the static(eye) clipping plane corner points.void
dispose()
Dispose memory.private void
drawSphere(int index, float x, float y, float z)
Draw the red sphere with the given coordinate.void
enableClipArbiBehavior(boolean flag)
Enable arbitrary clipping plane behavior.void
enableStaticClipping()
Enable the eye clipping plane.void
enableStaticInvClipping()
Enable the eye inverse clipping plane.void
EulerToQuat(javax.vecmath.Vector3d v, javax.vecmath.Quat4d q)
Transform Euler angle to quaterion.WildMagic.LibFoundation.Mathematics.Vector3f[]
getAClipPlanePts()
Get the arbitrary clipping plane four corners points.boolean
getAVisible()
Return check box arbitrary selection value.float
getAxisAngle()
Get rotation axis alpha value.float
getAxisX()
Get rotation axis X value.float
getAxisY()
Get rotation axis Y value.float
getAxisZ()
Get rotation axis Z value.float
getBoundXInv()
Get the location of the negative X slice bound.float
getBoundXPos()
Get the location of the positive X slice bound.float
getBoundYInv()
Get the location of the negative Y slice bound.float
getBoundYPos()
Get the location of the positive Y slice bound.float
getBoundZInv()
Get the location of the negative Z slice bound.float
getBoundZPos()
Get the location of the positive Z slice bound.javax.swing.JPanel
getMainPanel()
Get the main control panel.int
getSliceA()
Get arbitray slider value.int
getSliceX()
Get x slider value.int
getSliceXInv()
Get x negative slider value.int
getSliceY()
Get y slider value.int
getSliceYInv()
Get y negative slider value.int
getSliceZ()
Get z slider value.int
getSliceZInv()
Get z negative slider value.javax.swing.JSlider
getSliderA()
Get arbitrary slider.javax.swing.JSlider
getSliderX()
Get x slider.javax.swing.JSlider
getSliderXInv()
Get x negative slider.javax.swing.JSlider
getSliderY()
Get y slider.javax.swing.JSlider
getSliderYInv()
Get y negative slider.javax.swing.JSlider
getSliderZ()
Get z slider.javax.swing.JSlider
getSliderZInv()
Get z negative slider.boolean
getStaticInvVisible()
Return check box static inverse selection value.boolean
getStaticVisible()
Return check box static selection value.boolean
getXVisible()
Return check box X selection value.boolean
getXVisibleInv()
Return check box X negative selection value.boolean
getYVisible()
Return check box Y selection value.boolean
getYVisibleInv()
Return check box Y negative selection value.boolean
getZVisible()
Return check box Z selection value.boolean
getZVisibleInv()
Return check box Z negative selection value.void
hideClipSliceA()
Hides the slice frame on arbitrary clipping plane slice.void
hideClipSliceStatic()
Hides the static clipping plane box frame.void
hideClipSliceStaticInv()
Hides the static inverset clipping plane box frame.void
hideClipSliceX()
Hides the slice frame on clipping plane slice x.void
hideClipSliceXInv()
Hides the slice frame on clipping plane slice -x.void
hideClipSliceY()
Hides the slice frame on clipping plane slice y.void
hideClipSliceYInv()
Hides the slice frame on clipping plane slice -y.void
hideClipSliceZ()
Hides the slice frame on clipping plane slice z.void
hideClipSliceZInv()
Hides the slice frame on clipping plane slice -z.void
init()
Initializes GUI components.void
initClipSliceA()
Move the arbitrary clipping bounding frame to initial position.void
initClipSliceStatic()
Move the static clipping bounding frame to initial position.void
initClipSliceStaticInv()
Move the static inverse clipping bounding frame to initial position.void
initClipSliceX()
Move the X clipping bounding frame to initial position.void
initClipSliceXInv()
Move the X Invative clipping bounding frame to initial position.void
initClipSliceY()
Move the Y clipping bounding frame to initial position.void
initClipSliceYInv()
Move the Y Nagative clipping bounding frame to initial position.void
initClipSliceZ()
Move the Z clipping bounding frame to initial position.void
initClipSliceZInv()
Move the Z Invative clipping bounding frame to initial position.private void
initSphereBranch()
Initialize the red sphere image scene graph structure.void
invokeClippingPlanes()
Invokes all the 6 clipping when 6 clipping checkbox is checked.boolean
is6PlaneClipping()
Indicate whether the 6 clipping plane is active or not.boolean
isArbitraryClipping(javax.media.j3d.Shape3D pickeObject)
Called by the JDialogSurface to find the current mouse event is from the arbitrary frame box moving or not.boolean
isClipArbiPicked()
Return the flag for the arbitrary clipping plane frame being picked or not.boolean
isFirstTimeBuildTree()
Return whether the clipping planes tree branch being built the first time.void
mouseClicked(java.awt.event.MouseEvent event)
Unchanged.void
mouseDragged(java.awt.event.MouseEvent event)
If recording, adds this mouse event to the mouseEvents vector found at locationcurrent
.void
mouseEntered(java.awt.event.MouseEvent event)
Unchanged.void
mouseExited(java.awt.event.MouseEvent event)
Unchanged.void
mouseMoved(java.awt.event.MouseEvent event)
Unchanged.void
mousePressed(java.awt.event.MouseEvent event)
Unchanged.void
mouseReleased(java.awt.event.MouseEvent event)
Used in MouseRecorder to stop one series of slide moves.void
QuatToEuler(javax.vecmath.Quat4d q1, javax.vecmath.Vector3d v)
Transform a quaternion to euler.void
removeClipSlice()
Removes the clip slices.void
removeClipSliceA()
Detaches the slice frame on arbitrary clipping plane slice.void
removeClipSliceStatic()
remove the static clipping plane box frame.void
removeClipSliceStaticInv()
remove the static inverse clipping plane box frame.void
removeClipSliceX()
Detaches the slice frame on clipping plane slice x.void
removeClipSliceXInv()
Detaches the slice frame on clipping plane slice -x.void
removeClipSliceY()
Detaches the slice frame on clipping plane slice y.void
removeClipSliceYInv()
Detaches the slice frame on clipping plane slice -y.void
removeClipSliceZ()
Detaches the slice frame on clipping plane slice z.void
removeClipSliceZInv()
Detaches the slice frame on clipping plane slice -z.void
removeFromModelClip(javax.media.j3d.BranchGroup root)
Remove the branch group passed in.void
resizePanel(int panelWidth, int frameHeight)
Resizig the control panel with ViewJFrameVolumeView's frame width and height.void
saveCropImage()
Save the cropped image.void
setArbiPlanePickable(boolean _picked)
setGUI setup the flag of the arbitary clipping frame box.void
setASliderEnabled(boolean flag)
Sets the arbitray clip slider and the labels. state given byflag
.protected void
setBoxColor(javax.swing.JButton button, java.awt.Color color)
Calls the appropriate method in the parent frame.void
setCheckBoxA(boolean isSelected)
Set the slider arbitrary checkBox with the passed in value.void
setCheckBoxStatic(boolean isSelected)
Set the slider Static checkBox with the passed in value.void
setCheckBoxStaticInv(boolean isSelected)
Set the slider Static inverse checkBox with the passed in value.void
setCheckBoxX(boolean isSelected)
Set the slider X checkBox with the passed in value.void
setCheckBoxXInv(boolean isSelected)
Set the slider X inverse checkBox with the passed in value.void
setCheckBoxY(boolean isSelected)
Set the slider Y checkBox with the passed in value.void
setCheckBoxYInv(boolean isSelected)
Set the slider Y inverse checkBox with the passed in value.void
setCheckBoxZ(boolean isSelected)
Set the slider Z checkBox with the passed in value.void
setCheckBoxZInv(boolean isSelected)
Set the slider Z inverse checkBox with the passed in value.void
setClipSliceAColor(java.awt.Color color)
Sets the color of the arbitrary clipping plane slice frame.void
setClipSliceAwithRotate(float _axisX, float _axisY, float _axisZ, float _axisAngle)
During mouse recorder diaplay, setup the rotatino axis for both arbiTG and mcArbiTG.void
setClipSliceSColor(java.awt.Color color)
Sets the color of the static clipping plane slice frame.void
setClipSliceSInvColor(java.awt.Color color)
Sets the color of the static inverse clipping plane slice frame.void
setClipSliceXColor(java.awt.Color color)
Sets the color of the x clipping plane slice frame.void
setClipSliceXInvColor(java.awt.Color color)
Sets the color of the -x clipping plane slice frame.void
setClipSliceYColor(java.awt.Color color)
Sets the color of the y cliping plane slice frame.void
setClipSliceYInvColor(java.awt.Color color)
Sets the color of the -y cliping plane slice frame.void
setClipSliceZColor(java.awt.Color color)
Sets the color of the z clipping plane slice frame.void
setClipSliceZInvColor(java.awt.Color color)
Sets the color of the -z clipping plane slice frame.void
setStaticInvSliderEnabled(boolean flag)
Sets the static inverse slider and the labels beside and beneath it to the state given byflag
.void
setStaticSliderEnabled(boolean flag)
Sets the static slider and the labels beside and beneath it to the state given byflag
.void
setXSliderEnabled(boolean flag)
Sets the x slider and the labels beside and beneath it to the state given byflag
.void
setXSliderInvEnabled(boolean flag)
Sets the x slider and the labels beside and beneath it to the state given byflag
.void
setYSliderEnabled(boolean flag)
Sets the y slider and the labels beside and beneath it to the state given byflag
.void
setYSliderInvEnabled(boolean flag)
Sets the y slider and the labels beside and beneath it to the state given byflag
.void
setZSliderEnabled(boolean flag)
Sets the z slider and the labels beside and beneath it to the state given byflag
.void
setZSliderInvEnabled(boolean flag)
Sets the z slider and the labels beside and beneath it to the state given byflag
.void
stateChanged(javax.swing.event.ChangeEvent e)
Sets how the image plane should be displayed depending on value of slider.void
swapModelClipBG(boolean flag)
Swap ModelClip Branch group between the 6 clipping plane and the arbitray clipping plane.private void
transform(javax.vecmath.Vector4f vIn)
Transform a point rotation inverse to the volume rotation.void
transformChanged(int type, javax.media.j3d.Transform3D transform)
Needed for this to implement MouseBehaviorCallback.void
undoCrop()
Undo the crop of the volume.void
updateClipPlanesEqn()
Upadate six clipping planes' plane equation.void
updateClipSlice()
Update clipping planes.void
updateClipSliceA()
Sets new frame around arbitrary clip plane slice based on the new position.void
updateClipSliceAwithRotate(javax.media.j3d.Transform3D transform)
Update arbitrary clip plane's transform.void
updateClipSliceStatic()
Sets new frame around clip plane slice -z based on the new position.void
updateClipSliceStaticInv()
Sets new frame around clip plane slice -z based on the new position.void
updateClipSliceX()
Sets new frame around clip plane slice x based on the new position.void
updateClipSliceXInv()
Sets new frame around clip plane slice -x based on the new position.void
updateClipSliceY()
Sets new frame around clip plane slice y based on the new position.void
updateClipSliceYInv()
Sets new frame around clip plane slice -y based on the new position.void
updateClipSliceZ()
Sets new frame around clip plane slice z based on the new position.void
updateClipSliceZInv()
Sets new frame around clip plane slice -z based on the new position.private void
updateVolumeRenderClipPlane()
Update the volume render's clip plane with all new positions.void
windowClosing(java.awt.event.WindowEvent e)
Accessor that closing the mouse recorder window frame.-
Methods inherited from class gov.nih.mipav.view.renderer.J3D.JPanelRendererJ3D
disposeLocal, getSurfaceRender, setRayBasedRender, setSurfaceRender
-
Methods 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, testParameter
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods 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, update
-
Methods 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, validateTree
-
Methods 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, transferFocusUpCycle
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
enables
boolean[] enables
Enable flags for the 6 ( X, Y, Z and inverse ) clipping planes.
-
enablesArbi
boolean[] enablesArbi
Enable flags for the arbitrary clipping planes.
-
enablesStatic
boolean[] enablesStatic
Enable flags for the static clipping planes.
-
AclipPlanePts
private javax.vecmath.Vector4f[] AclipPlanePts
Arbitrary clipping plane four corners points.
-
arbiMouseRotateBehavior
private com.sun.j3d.utils.behaviors.mouse.MouseRotate arbiMouseRotateBehavior
Mouse Rotate behavior of the arbitrary clipping plane.
-
arbiTG
private javax.media.j3d.TransformGroup arbiTG
Tranform group for arbitrary clipping plane.
-
arbiTrans3d
private javax.media.j3d.Transform3D arbiTrans3d
Transform3D group for clipSliceA frame box and ModelClip arbitrary clipping plane.
-
mcArbiTrans3D
private javax.media.j3d.Transform3D mcArbiTrans3D
Transform3D group for clipSliceA frame box and ModelClip arbitrary clipping plane.
-
arbitrary_SG
private javax.media.j3d.Switch arbitrary_SG
Arbitrary clipping plane switch group.
-
aSlice
private int aSlice
Which arbitray clipping slice is currently displayed.
-
axisX
private float axisX
Value attribute for the roation axis.
-
axisY
private float axisY
Value attribute for the roation axis.
-
axisZ
private float axisZ
Value attribute for the roation axis.
-
axisAngle
private float axisAngle
Value attribute for the roation axis.
-
behaviorBG
private javax.media.j3d.BranchGroup behaviorBG
The BranchGroup to which the arbitrary behaviors are attached and rotate.
-
boundingCheckA
private javax.swing.JCheckBox boundingCheckA
Arbitrary and static clipping plane check box.
-
boundingCheckStatic
private javax.swing.JCheckBox boundingCheckStatic
Arbitrary and static clipping plane check box.
-
boundingCheckStaticInv
private javax.swing.JCheckBox boundingCheckStaticInv
Arbitrary and static clipping plane check box.
-
boundingCheckX
private javax.swing.JCheckBox boundingCheckX
Check box to turn the clipping plane frame on and off.
-
boundingCheckY
private javax.swing.JCheckBox boundingCheckY
Check box to turn the clipping plane frame on and off.
-
boundingCheckZ
private javax.swing.JCheckBox boundingCheckZ
Check box to turn the clipping plane frame on and off.
-
boundingCheckXInv
private javax.swing.JCheckBox boundingCheckXInv
X,Y,Z inverse clipping plane check box.
-
boundingCheckYInv
private javax.swing.JCheckBox boundingCheckYInv
X,Y,Z inverse clipping plane check box.
-
boundingCheckZInv
private javax.swing.JCheckBox boundingCheckZInv
X,Y,Z inverse clipping plane check box.
-
boxStatic
private javax.swing.JCheckBox boxStatic
Static and static inverse, arbitrary clipping plane check box.
-
boxStaticInv
private javax.swing.JCheckBox boxStaticInv
Static and static inverse, arbitrary clipping plane check box.
-
boxA
private javax.swing.JCheckBox boxA
Static and static inverse, arbitrary clipping plane check box.
-
boxX
private javax.swing.JCheckBox boxX
Check boxes that turn the image plane and the sliders on and off.
-
boxY
private javax.swing.JCheckBox boxY
Check boxes that turn the image plane and the sliders on and off.
-
boxZ
private javax.swing.JCheckBox boxZ
Check boxes that turn the image plane and the sliders on and off.
-
boxXInv
private javax.swing.JCheckBox boxXInv
Check boxes that turn the image plane and the sliders on and off.
-
boxYInv
private javax.swing.JCheckBox boxYInv
Check boxes that turn the image plane and the sliders on and off.
-
boxZInv
private javax.swing.JCheckBox boxZInv
Check boxes that turn the image plane and the sliders on and off.
-
clipCount
private int clipCount
Counters show the event number in the mouse recorder.
-
rotationCount
private int rotationCount
Counters show the event number in the mouse recorder.
-
clipEvents
private MouseEventVector clipEvents
Mouse event vector that record the clipping plane sliders changes.
-
clipSliceAIndicator
private ViewJComponentBoxSlice clipSliceAIndicator
Arbitrary clipping plane yellow boundary indicator box.
-
clipSliceA
private ViewJComponentBoxSlice clipSliceA
Arbitrary clipping plane yellow boundary indicator box.
-
clipSliceStatic
private ViewJComponentBoxSlice clipSliceStatic
Static clipping plane boundary box.
-
clipSliceStaticInv
private ViewJComponentBoxSlice clipSliceStaticInv
Static clipping plane boundary box.
-
clipSliceX
private ViewJComponentBoxSlice clipSliceX
The bounding box frame around the clipping planes.
-
clipSliceY
private ViewJComponentBoxSlice clipSliceY
The bounding box frame around the clipping planes.
-
clipSliceZ
private ViewJComponentBoxSlice clipSliceZ
The bounding box frame around the clipping planes.
-
clipSliceXInv
private ViewJComponentBoxSlice clipSliceXInv
X, Y, Z inverse clipping slice boundary box.
-
clipSliceYInv
private ViewJComponentBoxSlice clipSliceYInv
X, Y, Z inverse clipping slice boundary box.
-
clipSliceZInv
private ViewJComponentBoxSlice clipSliceZInv
X, Y, Z inverse clipping slice boundary box.
-
clipSliderStatic
private javax.swing.JSlider clipSliderStatic
Static, static inverse and arbitrary clipping plane boundary box.
-
clipSliderStaticInv
private javax.swing.JSlider clipSliderStaticInv
Static, static inverse and arbitrary clipping plane boundary box.
-
sliderA
private javax.swing.JSlider sliderA
Static, static inverse and arbitrary clipping plane boundary box.
-
clipSliderX
private javax.swing.JSlider clipSliderX
Sliders for the image planes.
-
clipSliderY
private javax.swing.JSlider clipSliderY
Sliders for the image planes.
-
clipSliderZ
private javax.swing.JSlider clipSliderZ
Sliders for the image planes.
-
sliderXInv
private javax.swing.JSlider sliderXInv
Sliders for the image planes.
-
sliderYInv
private javax.swing.JSlider sliderYInv
Sliders for the image planes.
-
sliderZInv
private javax.swing.JSlider sliderZInv
Sliders for the image planes.
-
colorButtonA
private javax.swing.JButton colorButtonA
Color button for the arbitrary clipping plane frame.
-
colorButtonStatic
private javax.swing.JButton colorButtonStatic
Color button for the static clipping plane frame.
-
colorButtonStaticInv
private javax.swing.JButton colorButtonStaticInv
Color button for the static clipping plane frame.
-
colorButtonX
private javax.swing.JButton colorButtonX
Color button for X clipping plane frame.
-
colorButtonXInv
private javax.swing.JButton colorButtonXInv
Color button for X clipping plane frame.
-
colorButtonY
private javax.swing.JButton colorButtonY
Color button for Y clipping plane frame.
-
colorButtonYInv
private javax.swing.JButton colorButtonYInv
Color button for Y clipping plane frame.
-
colorButtonZ
private javax.swing.JButton colorButtonZ
Color button for Z clipping plane frame.
-
colorButtonZInv
private javax.swing.JButton colorButtonZInv
Color button for Z clipping plane frame.
-
colorChooser
private ViewJColorChooser colorChooser
Color chooser dialog.
-
eqnPlanes
private javax.vecmath.Vector4d[] eqnPlanes
Vetor holding the clipping plane equations.
-
eqnPlanesArbi
private javax.vecmath.Vector4d[] eqnPlanesArbi
Vetor holding the clipping plane equations.
-
eqnPlanesStatic
private javax.vecmath.Vector4d[] eqnPlanesStatic
Vetor holding the clipping plane equations.
-
eqnX
private javax.vecmath.Vector4d eqnX
Vector4D clipping equation of each clipping plane.
-
eqnXInv
private javax.vecmath.Vector4d eqnXInv
Vector4D clipping equation of each clipping plane.
-
eqnY
private javax.vecmath.Vector4d eqnY
Vector4D clipping equation of each clipping plane.
-
eqnYInv
private javax.vecmath.Vector4d eqnYInv
Vector4D clipping equation of each clipping plane.
-
eqnZ
private javax.vecmath.Vector4d eqnZ
Vector4D clipping equation of each clipping plane.
-
eqnZInv
private javax.vecmath.Vector4d eqnZInv
Vector4D clipping equation of each clipping plane.
-
eqnA
private javax.vecmath.Vector4d eqnA
Vector4D clipping equation of each clipping plane.
-
extractButtonA
private javax.swing.JButton extractButtonA
Extract arbitrary cliping plane button.
-
extractButtonS
private javax.swing.JButton extractButtonS
Extract static eye cliping plane button.
-
intersectionPts
private javax.vecmath.Point3f[] intersectionPts
intersectioin points coordinate.
-
iNumLights
private int iNumLights
12 possible intersection points.
-
is6PlaneClipping
private boolean is6PlaneClipping
Flag to indicate 6 plane clipping is active.
-
isClipArbiPicked
private boolean isClipArbiPicked
Arbitrary clipping plane frame being picked or not.
-
isFirstTimeBuildTree
private boolean isFirstTimeBuildTree
First time to build the clipping plane tree.
-
isStateChangedEvent
private boolean isStateChangedEvent
Flag to indicate StateChangeEvent invoked.
-
isTransformChanged
private boolean isTransformChanged
Flag to indicate tranformChanged event invoked.
-
labelAStart
private javax.swing.JLabel labelAStart
Arbitrary clipping slider labels.
-
labelAMid
private javax.swing.JLabel labelAMid
Arbitrary clipping slider labels.
-
labelAEnd
private javax.swing.JLabel labelAEnd
Arbitrary clipping slider labels.
-
labelStatic
private javax.swing.JLabel labelStatic
Static cliiping slider labels.
-
labelStaticInv
private javax.swing.JLabel labelStaticInv
Static cliiping slider labels.
-
labelA
private javax.swing.JLabel labelA
Static cliiping slider labels.
-
labelStaticInvStart
private javax.swing.JLabel labelStaticInvStart
Static inverse clipping plane labels.
-
labelStaticInvMid
private javax.swing.JLabel labelStaticInvMid
Static inverse clipping plane labels.
-
labelStaticInvEnd
private javax.swing.JLabel labelStaticInvEnd
Static inverse clipping plane labels.
-
labelStaticStart
private javax.swing.JLabel labelStaticStart
Static clipping plane labels.
-
labelStaticMid
private javax.swing.JLabel labelStaticMid
Static clipping plane labels.
-
labelStaticEnd
private javax.swing.JLabel labelStaticEnd
Static clipping plane labels.
-
labelX
private javax.swing.JLabel labelX
Sliders labels.
-
labelY
private javax.swing.JLabel labelY
Sliders labels.
-
labelZ
private javax.swing.JLabel labelZ
Sliders labels.
-
labelXInv
private javax.swing.JLabel labelXInv
Sliders labels.
-
labelYInv
private javax.swing.JLabel labelYInv
Sliders labels.
-
labelZInv
private javax.swing.JLabel labelZInv
Sliders labels.
-
labelXStart
private javax.swing.JLabel labelXStart
Slider tick labels.
-
labelXMid
private javax.swing.JLabel labelXMid
Slider tick labels.
-
labelXEnd
private javax.swing.JLabel labelXEnd
Slider tick labels.
-
labelXStartInv
private javax.swing.JLabel labelXStartInv
X clipping slider labels.
-
labelXMidInv
private javax.swing.JLabel labelXMidInv
X clipping slider labels.
-
labelXEndInv
private javax.swing.JLabel labelXEndInv
X clipping slider labels.
-
labelYStart
private javax.swing.JLabel labelYStart
Y clipping slider labels.
-
labelYMid
private javax.swing.JLabel labelYMid
Y clipping slider labels.
-
labelYEnd
private javax.swing.JLabel labelYEnd
Y clipping slider labels.
-
labelYStartInv
private javax.swing.JLabel labelYStartInv
Y inverse clipping slider labels.
-
labelYMidInv
private javax.swing.JLabel labelYMidInv
Y inverse clipping slider labels.
-
labelYEndInv
private javax.swing.JLabel labelYEndInv
Y inverse clipping slider labels.
-
labelZStart
private javax.swing.JLabel labelZStart
Z clipping slider labels.
-
labelZMid
private javax.swing.JLabel labelZMid
Z clipping slider labels.
-
labelZEnd
private javax.swing.JLabel labelZEnd
Z clipping slider labels.
-
labelZStartInv
private javax.swing.JLabel labelZStartInv
Z clipping slider labels.
-
labelZMidInv
private javax.swing.JLabel labelZMidInv
Z clipping slider labels.
-
labelZEndInv
private javax.swing.JLabel labelZEndInv
Z clipping slider labels.
-
m_aiImageA_backup
private int[] m_aiImageA_backup
Backup of the data for undo:.
-
m_aiImageB_backup
private int[] m_aiImageB_backup
ImageB backup buffer.
-
m_akLightBG
private javax.media.j3d.BranchGroup[] m_akLightBG
Parent of each light bulb.
-
m_akLightMaterials
private javax.media.j3d.Material[] m_akLightMaterials
Material properties for each light bulb.
-
m_akLightSpheres
private com.sun.j3d.utils.geometry.Sphere[] m_akLightSpheres
Shapes representing light bulbs.
-
m_akLightTransformGroup
private javax.media.j3d.TransformGroup[] m_akLightTransformGroup
Parent transform group.
-
m_kLightRoot
private javax.media.j3d.BranchGroup m_kLightRoot
Parent of all the light bulbs.
-
maxBox
private float maxBox
The largest of xBox,yBox,and zBox.
-
maxDim
private int maxDim
The largest dimension of xDim, yDim and zDim.
-
mc
private javax.media.j3d.ModelClip mc
Global model clip object.
-
mcArbi
private javax.media.j3d.ModelClip mcArbi
Global model clip object.
-
mcStatic
private javax.media.j3d.ModelClip mcStatic
Global model clip object.
-
mcArbiBG
private javax.media.j3d.BranchGroup mcArbiBG
Branch group of the arbitrary clipping plane.
-
mcExtendBG
private javax.media.j3d.BranchGroup mcExtendBG
Branch group of the arbitrary clipping plane.
-
mcArbiExtendBG
private javax.media.j3d.BranchGroup mcArbiExtendBG
Branch group of the arbitrary clipping plane.
-
mcArbiTG
private javax.media.j3d.TransformGroup mcArbiTG
ModelClip arbitrary TransformGroup.
-
mcBG
private javax.media.j3d.BranchGroup mcBG
Branch group of the 6 clipping planes.
-
mcStaticBG
private javax.media.j3d.BranchGroup mcStaticBG
Branch group of the static clipping plane.
-
objClipSliceA_BG
private javax.media.j3d.BranchGroup objClipSliceA_BG
Arbitrary clipping branch group.
-
clipSliceA_BG
private javax.media.j3d.BranchGroup clipSliceA_BG
Arbitrary clipping branch group.
-
clipSliceAIndicator_BG
private javax.media.j3d.BranchGroup clipSliceAIndicator_BG
Arbitrary clipping branch group.
-
objClipSlices_BG
private javax.media.j3d.BranchGroup objClipSlices_BG
root of all the clipping slices branch group.
-
objClipSliceStatic_BG
private javax.media.j3d.BranchGroup objClipSliceStatic_BG
Static clipping branch group.
-
objClipSliceStaticInv_BG
private javax.media.j3d.BranchGroup objClipSliceStaticInv_BG
Static clipping branch group.
-
objClipSliceX_BG
private javax.media.j3d.BranchGroup objClipSliceX_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.
-
objClipSliceY_BG
private javax.media.j3d.BranchGroup objClipSliceY_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.
-
objClipSliceZ_BG
private javax.media.j3d.BranchGroup objClipSliceZ_BG
Parent for each individual clip slices branch group, childen of objClipSlices_BG.
-
objClipSliceXInv_BG
private javax.media.j3d.BranchGroup objClipSliceXInv_BG
Parent of the -x, -y, -z clip slices branchgroup.
-
objClipSliceYInv_BG
private javax.media.j3d.BranchGroup objClipSliceYInv_BG
Parent of the -x, -y, -z clip slices branchgroup.
-
objClipSliceZInv_BG
private javax.media.j3d.BranchGroup objClipSliceZInv_BG
Parent of the -x, -y, -z clip slices branchgroup.
-
panelA
private javax.swing.JPanel panelA
Arbitrary and static control panels.
-
panelS
private javax.swing.JPanel panelS
Arbitrary and static control panels.
-
panelSInv
private javax.swing.JPanel panelSInv
Arbitrary and static control panels.
-
panelX
private javax.swing.JPanel panelX
Declare each clipping plane control panel.
-
panelXInv
private javax.swing.JPanel panelXInv
Declare each clipping plane control panel.
-
panelY
private javax.swing.JPanel panelY
Declare each clipping plane control panel.
-
panelYInv
private javax.swing.JPanel panelYInv
Declare each clipping plane control panel.
-
panelZ
private javax.swing.JPanel panelZ
Declare each clipping plane control panel.
-
panelZInv
private javax.swing.JPanel panelZInv
Declare each clipping plane control panel.
-
radicalRatio
private float radicalRatio
Arbitrary clipping plane expanding ratio.
-
recordEventName
private boolean recordEventName
Flag indicates whether to record the clip event name.
-
rotationAxis
private javax.vecmath.AxisAngle4f rotationAxis
Rotation axis to sync up the action for both ModelClip arbitrary clipping plane and the clipSliceA frame box transformGroup.
-
rotationEvent
private MouseEventVector rotationEvent
mouse rotation event vector for the arbitrary clipping plane.
-
scroller
private javax.swing.JScrollPane scroller
The scroll pane holding the panel content. Used when the screen is small.
-
scrollPanel
private JPanelClip.DrawingPanel scrollPanel
Scroll panel that holding all the control components.
-
sSlice
private int sSlice
Record the current static clipping slice number.
-
sSliceInv
private int sSliceInv
Record the current static clipping slice number.
-
tabbedPane
private javax.swing.JTabbedPane tabbedPane
Tabbed Panel that hold the each clipping planes control box.
-
textStatic
private javax.swing.JTextField textStatic
Static and arbitrary text field.
-
textStaticInv
private javax.swing.JTextField textStaticInv
Static and arbitrary text field.
-
textA
private javax.swing.JTextField textA
Static and arbitrary text field.
-
textX
private javax.swing.JTextField textX
Text fields that display the slice number when slider moves.
-
textY
private javax.swing.JTextField textY
Text fields that display the slice number when slider moves.
-
textZ
private javax.swing.JTextField textZ
Text fields that display the slice number when slider moves.
-
textXInv
private javax.swing.JTextField textXInv
X, Y, Z inverse text field.
-
textYInv
private javax.swing.JTextField textYInv
X, Y, Z inverse text field.
-
textZInv
private javax.swing.JTextField textZInv
X, Y, Z inverse text field.
-
xBox
private float xBox
xBox, yBox, zBox from the parent scene.
-
yBox
private float yBox
xBox, yBox, zBox from the parent scene.
-
zBox
private float zBox
xBox, yBox, zBox from the parent scene.
-
xDim
private int xDim
Image X, Y, Z dimension.
-
yDim
private int yDim
Image X, Y, Z dimension.
-
zDim
private int zDim
Image X, Y, Z dimension.
-
xSlice
private int xSlice
Which slice is currently displayed in the ZY plane.
-
xSliceInv
private int xSliceInv
Which slice is currently displayed in the ZY plane.
-
ySlice
private int ySlice
Which slice is currently displayed in the XZ plane.
-
ySliceInv
private int ySliceInv
Which slice is currently displayed in the XZ plane.
-
zSlice
private int zSlice
Which slice is currently displayed in the XY plane.
-
zSliceInv
private int zSliceInv
Which slice is currently displayed in the XY plane.
-
-
Constructor Detail
-
JPanelClip
public JPanelClip(SurfaceRender parent, float xBox, float yBox, float zBox)
3D texture surface renderer clipping dialog control.- Parameters:
parent
- SurfaceRender Surface renderer referencexBox
- float unit box x lengthyBox
- float unit box y lengthzBox
- float unit box z length
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Changes color of slices box frame and button if color button was pressed; turns bounding box on and off if checkbox was pressed.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Specified by:
actionPerformed
in classJPanelRendererBase
- Parameters:
event
- Event that triggered function.
-
addClipSlice
public void addClipSlice()
Attach clipping plane branch group.
-
addClipSliceA
public void addClipSliceA()
Attach arbitrary clip slice bounding frame.
-
addClipSliceStatic
public void addClipSliceStatic()
Attach static clip slice bounding frame.
-
addClipSliceStaticInv
public void addClipSliceStaticInv()
Attach static inverse clip slice bounding frame.
-
addClipSliceX
public void addClipSliceX()
Attach X clip slice bounding frame.
-
addClipSliceXInv
public void addClipSliceXInv()
Attach X Invative clip slice bounding frame.
-
addClipSliceY
public void addClipSliceY()
Attach Y clip slice bounding frame.
-
addClipSliceYInv
public void addClipSliceYInv()
Attach Y Invative clip slice bounding frame.
-
addClipSliceZ
public void addClipSliceZ()
Attach Z clip slice bounding frame.
-
addClipSliceZInv
public void addClipSliceZInv()
Attach Z Invative clip slice bounding frame.
-
addToModelClip
public void addToModelClip(javax.media.j3d.BranchGroup root)
Add a new branch group to model clip for clipping.- Parameters:
root
- BranchGroup Node.
-
buildClipPlanesTree
public void buildClipPlanesTree()
Build cliping planes tree structure. This method being called when clipping plane menu selected in the surface render.
-
buildPanelA
public void buildPanelA()
Build the arbitrary clipping slider control panel.
-
buildPanelS
public void buildPanelS()
Build static clipping slider control panel.
-
buildPanelSInv
public void buildPanelSInv()
Build static inverse clipping slider control panel.
-
buildPanelX
public void buildPanelX()
Build x slider control panel.
-
buildPanelXInv
public void buildPanelXInv()
Build x negative clipping slider control panel.
-
buildPanelY
public void buildPanelY()
Build the y clipping slider control panel.
-
buildPanelYInv
public void buildPanelYInv()
Build the y negative clipping slider control panel.
-
buildPanelZ
public void buildPanelZ()
Build the z clipping slider control panel.
-
buildPanelZInv
public void buildPanelZInv()
Build the z negative clipping slider control panel.
-
cropVolume
public void cropVolume()
Mask the clipped volume region with image min intensity value.
-
disable6Planes
public void disable6Planes()
Disable the 6 clipping planes.
-
disableClipA
public void disableClipA()
Disable the arbitrary clipping.
-
disableClipPlanes
public void disableClipPlanes()
Disable clipping planes when dialog window closed.
-
disableClipPlanesArbi
public void disableClipPlanesArbi()
Disable arbitrary clipping planes.
-
disableStaticClipping
public void disableStaticClipping()
Disable the eye clipping plane.
-
disableStaticInvClipping
public void disableStaticInvClipping()
Disable the eye inverse clipping plane.
-
displayAClipPlanePts
public void displayAClipPlanePts()
Display the abitrary clipping plane corner points.
-
displaySClipPlanePts
public void displaySClipPlanePts()
Display the static(eye) clipping plane corner points.
-
dispose
public void dispose()
Dispose memory.
-
enableClipArbiBehavior
public void enableClipArbiBehavior(boolean flag)
Enable arbitrary clipping plane behavior.- Parameters:
flag
-true
enable arbitrary clipping mouse behavior, disable the scene graph mouse behavior;false
disable arbitrary clipping mouse behavior, enable the scene graph mouse behavior.
-
enableStaticClipping
public void enableStaticClipping()
Enable the eye clipping plane.
-
enableStaticInvClipping
public void enableStaticInvClipping()
Enable the eye inverse clipping plane.
-
EulerToQuat
public final void EulerToQuat(javax.vecmath.Vector3d v, javax.vecmath.Quat4d q)
Transform Euler angle to quaterion. Not used for now.- Parameters:
v
- Vector3d Euler anglesq
- Quat4d quaternion
-
getAClipPlanePts
public WildMagic.LibFoundation.Mathematics.Vector3f[] getAClipPlanePts()
Get the arbitrary clipping plane four corners points.- Returns:
- Vector3f[]
-
getAVisible
public boolean getAVisible()
Return check box arbitrary selection value.- Returns:
- boxA.isSelected() box arbitrary slection value.
-
getAxisAngle
public float getAxisAngle()
Get rotation axis alpha value.- Returns:
- aixsAngle alpha value.
-
getAxisX
public float getAxisX()
Get rotation axis X value.- Returns:
- aixsX x value.
-
getAxisY
public float getAxisY()
Get rotation axis Y value.- Returns:
- aixsY y value.
-
getAxisZ
public float getAxisZ()
Get rotation axis Z value.- Returns:
- aixsZ z value.
-
getBoundXInv
public float getBoundXInv()
Get the location of the negative X slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getBoundXPos
public float getBoundXPos()
Get the location of the positive X slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getBoundYInv
public float getBoundYInv()
Get the location of the negative Y slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getBoundYPos
public float getBoundYPos()
Get the location of the positive Y slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getBoundZInv
public float getBoundZInv()
Get the location of the negative Z slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getBoundZPos
public float getBoundZPos()
Get the location of the positive Z slice bound.- Returns:
- float Value in normalized range of [0,1].
-
getMainPanel
public javax.swing.JPanel getMainPanel()
Get the main control panel.- Specified by:
getMainPanel
in classJPanelRendererBase
- Returns:
- mainPanel the whole control panel.
-
getSliceA
public int getSliceA()
Get arbitray slider value.- Returns:
- Arbitrary slider value.
-
getSliceX
public int getSliceX()
Get x slider value.- Returns:
- X clipping slider value.
-
getSliceXInv
public int getSliceXInv()
Get x negative slider value.- Returns:
- Get y clipping slider value
-
getSliceY
public int getSliceY()
Get y slider value.- Returns:
- Get y clipping slider value.
-
getSliceYInv
public int getSliceYInv()
Get y negative slider value.- Returns:
- Get y inverse clipping slider value.
-
getSliceZ
public int getSliceZ()
Get z slider value.- Returns:
- Get Z clippig slider value.
-
getSliceZInv
public int getSliceZInv()
Get z negative slider value.- Returns:
- get z inverse clipping slider value.
-
getSliderA
public javax.swing.JSlider getSliderA()
Get arbitrary slider.- Returns:
- get arbitrary clipping slider value.
-
getSliderX
public javax.swing.JSlider getSliderX()
Get x slider.- Returns:
- get x clipping slider value.
-
getSliderXInv
public javax.swing.JSlider getSliderXInv()
Get x negative slider.- Returns:
- get X inverse clipping slider value.
-
getSliderY
public javax.swing.JSlider getSliderY()
Get y slider.- Returns:
- get Y clipping slider value.
-
getSliderYInv
public javax.swing.JSlider getSliderYInv()
Get y negative slider.- Returns:
- get y inverse clipping slider value.
-
getSliderZ
public javax.swing.JSlider getSliderZ()
Get z slider.- Returns:
- get z clipping slider value.
-
getSliderZInv
public javax.swing.JSlider getSliderZInv()
Get z negative slider.- Returns:
- get z inverse clipping slider value.
-
getStaticInvVisible
public boolean getStaticInvVisible()
Return check box static inverse selection value.- Returns:
- boxZInv.isSelected() box z negative slection value.
-
getStaticVisible
public boolean getStaticVisible()
Return check box static selection value.- Returns:
- boxZInv.isSelected() box z negative slection value.
-
getXVisible
public boolean getXVisible()
Return check box X selection value.- Returns:
- boxX.isSelected() box X selection value.
-
getXVisibleInv
public boolean getXVisibleInv()
Return check box X negative selection value.- Returns:
- boxXInv.isSelected() box x negative slection value.
-
getYVisible
public boolean getYVisible()
Return check box Y selection value.- Returns:
- boxY.isSelected() box Y selection value.
-
getYVisibleInv
public boolean getYVisibleInv()
Return check box Y negative selection value.- Returns:
- boxYInv.isSelected() box y negative slection value.
-
getZVisible
public boolean getZVisible()
Return check box Z selection value.- Returns:
- boxZ.isSelected() box z selection value.
-
getZVisibleInv
public boolean getZVisibleInv()
Return check box Z negative selection value.- Returns:
- boxZInv.isSelected() box z negative slection value.
-
hideClipSliceA
public void hideClipSliceA()
Hides the slice frame on arbitrary clipping plane slice.
-
hideClipSliceStatic
public void hideClipSliceStatic()
Hides the static clipping plane box frame.
-
hideClipSliceStaticInv
public void hideClipSliceStaticInv()
Hides the static inverset clipping plane box frame.
-
hideClipSliceX
public void hideClipSliceX()
Hides the slice frame on clipping plane slice x.
-
hideClipSliceXInv
public void hideClipSliceXInv()
Hides the slice frame on clipping plane slice -x.
-
hideClipSliceY
public void hideClipSliceY()
Hides the slice frame on clipping plane slice y.
-
hideClipSliceYInv
public void hideClipSliceYInv()
Hides the slice frame on clipping plane slice -y.
-
hideClipSliceZ
public void hideClipSliceZ()
Hides the slice frame on clipping plane slice z.
-
hideClipSliceZInv
public void hideClipSliceZInv()
Hides the slice frame on clipping plane slice -z.
-
init
public void init()
Initializes GUI components.
-
initClipSliceA
public void initClipSliceA()
Move the arbitrary clipping bounding frame to initial position.
-
initClipSliceStatic
public void initClipSliceStatic()
Move the static clipping bounding frame to initial position.
-
initClipSliceStaticInv
public void initClipSliceStaticInv()
Move the static inverse clipping bounding frame to initial position.
-
initClipSliceX
public void initClipSliceX()
Move the X clipping bounding frame to initial position.
-
initClipSliceXInv
public void initClipSliceXInv()
Move the X Invative clipping bounding frame to initial position.
-
initClipSliceY
public void initClipSliceY()
Move the Y clipping bounding frame to initial position.
-
initClipSliceYInv
public void initClipSliceYInv()
Move the Y Nagative clipping bounding frame to initial position.
-
initClipSliceZ
public void initClipSliceZ()
Move the Z clipping bounding frame to initial position.
-
initClipSliceZInv
public void initClipSliceZInv()
Move the Z Invative clipping bounding frame to initial position.
-
invokeClippingPlanes
public void invokeClippingPlanes()
Invokes all the 6 clipping when 6 clipping checkbox is checked.
-
is6PlaneClipping
public boolean is6PlaneClipping()
Indicate whether the 6 clipping plane is active or not.- Returns:
- is6PlaneClipping
true
6 clipping plane active,false
arbitrary clippiing plane active.
-
isArbitraryClipping
public boolean isArbitraryClipping(javax.media.j3d.Shape3D pickeObject)
Called by the JDialogSurface to find the current mouse event is from the arbitrary frame box moving or not.- Parameters:
pickeObject
- Shape3D picked object from the JDialogSurface.- Returns:
true
arbitrary frame box moves,false
not moves
-
isClipArbiPicked
public boolean isClipArbiPicked()
Return the flag for the arbitrary clipping plane frame being picked or not.- Returns:
- isClipArbiPicked
true
picked,false
not picked.
-
isFirstTimeBuildTree
public boolean isFirstTimeBuildTree()
Return whether the clipping planes tree branch being built the first time.- Returns:
- isFirstTimeBuildTree if
true
first time build the tree,false
already built.
-
mouseClicked
public void mouseClicked(java.awt.event.MouseEvent event)
Unchanged.- Specified by:
mouseClicked
in interfacejava.awt.event.MouseListener
- Parameters:
event
- Original mouse event.
-
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent event)
If recording, adds this mouse event to the mouseEvents vector found at locationcurrent
.- Specified by:
mouseDragged
in interfacejava.awt.event.MouseMotionListener
- Parameters:
event
- Original mouse event.
-
mouseEntered
public void mouseEntered(java.awt.event.MouseEvent event)
Unchanged.- Specified by:
mouseEntered
in interfacejava.awt.event.MouseListener
- Parameters:
event
- Original mouse event.
-
mouseExited
public void mouseExited(java.awt.event.MouseEvent event)
Unchanged.- Specified by:
mouseExited
in interfacejava.awt.event.MouseListener
- Parameters:
event
- Original mouse event.
-
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent event)
Unchanged.- Specified by:
mouseMoved
in interfacejava.awt.event.MouseMotionListener
- Parameters:
event
- Original mouse event.
-
mousePressed
public void mousePressed(java.awt.event.MouseEvent event)
Unchanged.- Specified by:
mousePressed
in interfacejava.awt.event.MouseListener
- Parameters:
event
- Original mouse event.
-
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent event)
Used in MouseRecorder to stop one series of slide moves.- Specified by:
mouseReleased
in interfacejava.awt.event.MouseListener
- Parameters:
event
- Original mouse event.
-
QuatToEuler
public void QuatToEuler(javax.vecmath.Quat4d q1, javax.vecmath.Vector3d v)
Transform a quaternion to euler. This method get the Euler angles from the volume rotation.- Parameters:
q1
- Quat4d quaternion.v
- Vector3d euler
-
removeClipSlice
public void removeClipSlice()
Removes the clip slices.
-
removeClipSliceA
public void removeClipSliceA()
Detaches the slice frame on arbitrary clipping plane slice.
-
removeClipSliceStatic
public void removeClipSliceStatic()
remove the static clipping plane box frame.
-
removeClipSliceStaticInv
public void removeClipSliceStaticInv()
remove the static inverse clipping plane box frame.
-
removeClipSliceX
public void removeClipSliceX()
Detaches the slice frame on clipping plane slice x.
-
removeClipSliceXInv
public void removeClipSliceXInv()
Detaches the slice frame on clipping plane slice -x.
-
removeClipSliceY
public void removeClipSliceY()
Detaches the slice frame on clipping plane slice y.
-
removeClipSliceYInv
public void removeClipSliceYInv()
Detaches the slice frame on clipping plane slice -y.
-
removeClipSliceZ
public void removeClipSliceZ()
Detaches the slice frame on clipping plane slice z.
-
removeClipSliceZInv
public void removeClipSliceZInv()
Detaches the slice frame on clipping plane slice -z.
-
removeFromModelClip
public void removeFromModelClip(javax.media.j3d.BranchGroup root)
Remove the branch group passed in.- Parameters:
root
- BranchGroup node to be removed.
-
resizePanel
public void resizePanel(int panelWidth, int frameHeight)
Resizig the control panel with ViewJFrameVolumeView's frame width and height.- Overrides:
resizePanel
in classJPanelRendererBase
- Parameters:
panelWidth
- panel widthframeHeight
- parent frame height.
-
saveCropImage
public void saveCropImage()
Save the cropped image.
-
setArbiPlanePickable
public void setArbiPlanePickable(boolean _picked)
setGUI setup the flag of the arbitary clipping frame box.- Parameters:
_picked
-true
picked,false
not picked.
-
setASliderEnabled
public void setASliderEnabled(boolean flag)
Sets the arbitray clip slider and the labels. state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setCheckBoxA
public void setCheckBoxA(boolean isSelected)
Set the slider arbitrary checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxStatic
public void setCheckBoxStatic(boolean isSelected)
Set the slider Static checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxStaticInv
public void setCheckBoxStaticInv(boolean isSelected)
Set the slider Static inverse checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxX
public void setCheckBoxX(boolean isSelected)
Set the slider X checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxXInv
public void setCheckBoxXInv(boolean isSelected)
Set the slider X inverse checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxY
public void setCheckBoxY(boolean isSelected)
Set the slider Y checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxYInv
public void setCheckBoxYInv(boolean isSelected)
Set the slider Y inverse checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxZ
public void setCheckBoxZ(boolean isSelected)
Set the slider Z checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setCheckBoxZInv
public void setCheckBoxZInv(boolean isSelected)
Set the slider Z inverse checkBox with the passed in value.- Parameters:
isSelected
- iftrue
selected, otherwise not selected.
-
setClipSliceAColor
public void setClipSliceAColor(java.awt.Color color)
Sets the color of the arbitrary clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceAwithRotate
public void setClipSliceAwithRotate(float _axisX, float _axisY, float _axisZ, float _axisAngle)
During mouse recorder diaplay, setup the rotatino axis for both arbiTG and mcArbiTG.- Parameters:
_axisX
- rotation axis x value._axisY
- rotation axis y value._axisZ
- rotation axis z value._axisAngle
- rotation axis alpha value.
-
setClipSliceSColor
public void setClipSliceSColor(java.awt.Color color)
Sets the color of the static clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceSInvColor
public void setClipSliceSInvColor(java.awt.Color color)
Sets the color of the static inverse clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceXColor
public void setClipSliceXColor(java.awt.Color color)
Sets the color of the x clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceXInvColor
public void setClipSliceXInvColor(java.awt.Color color)
Sets the color of the -x clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceYColor
public void setClipSliceYColor(java.awt.Color color)
Sets the color of the y cliping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceYInvColor
public void setClipSliceYInvColor(java.awt.Color color)
Sets the color of the -y cliping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceZColor
public void setClipSliceZColor(java.awt.Color color)
Sets the color of the z clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setClipSliceZInvColor
public void setClipSliceZInvColor(java.awt.Color color)
Sets the color of the -z clipping plane slice frame.- Parameters:
color
- Color to set to.
-
setStaticInvSliderEnabled
public void setStaticInvSliderEnabled(boolean flag)
Sets the static inverse slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setStaticSliderEnabled
public void setStaticSliderEnabled(boolean flag)
Sets the static slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setXSliderEnabled
public void setXSliderEnabled(boolean flag)
Sets the x slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setXSliderInvEnabled
public void setXSliderInvEnabled(boolean flag)
Sets the x slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setYSliderEnabled
public void setYSliderEnabled(boolean flag)
Sets the y slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setYSliderInvEnabled
public void setYSliderInvEnabled(boolean flag)
Sets the y slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setZSliderEnabled
public void setZSliderEnabled(boolean flag)
Sets the z slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
setZSliderInvEnabled
public void setZSliderInvEnabled(boolean flag)
Sets the z slider and the labels beside and beneath it to the state given byflag
.- Parameters:
flag
- iftrue
enable, otherwise disable.
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent e)
Sets how the image plane should be displayed depending on value of slider.- Specified by:
stateChanged
in interfacejavax.swing.event.ChangeListener
- Parameters:
e
- Event that triggered this function.
-
swapModelClipBG
public void swapModelClipBG(boolean flag)
Swap ModelClip Branch group between the 6 clipping plane and the arbitray clipping plane.- Parameters:
flag
-true
enable the 6 clipping planes,false
enable the arbitrary clipping plane.
-
transformChanged
public void transformChanged(int type, javax.media.j3d.Transform3D transform)
Needed for this to implement MouseBehaviorCallback.- Specified by:
transformChanged
in interfacecom.sun.j3d.utils.behaviors.mouse.MouseBehaviorCallback
- Parameters:
type
- transformation type.transform
- transformation matrix.
-
undoCrop
public void undoCrop()
Undo the crop of the volume.
-
updateClipPlanesEqn
public void updateClipPlanesEqn()
Upadate six clipping planes' plane equation.
-
updateClipSlice
public void updateClipSlice()
Update clipping planes.
-
updateClipSliceA
public void updateClipSliceA()
Sets new frame around arbitrary clip plane slice based on the new position.
-
updateClipSliceAwithRotate
public void updateClipSliceAwithRotate(javax.media.j3d.Transform3D transform)
Update arbitrary clip plane's transform.- Parameters:
transform
- The current transform with the mouse moves.
-
updateClipSliceStatic
public void updateClipSliceStatic()
Sets new frame around clip plane slice -z based on the new position.
-
updateClipSliceStaticInv
public void updateClipSliceStaticInv()
Sets new frame around clip plane slice -z based on the new position.
-
updateClipSliceX
public void updateClipSliceX()
Sets new frame around clip plane slice x based on the new position.
-
updateClipSliceXInv
public void updateClipSliceXInv()
Sets new frame around clip plane slice -x based on the new position.
-
updateClipSliceY
public void updateClipSliceY()
Sets new frame around clip plane slice y based on the new position.
-
updateClipSliceYInv
public void updateClipSliceYInv()
Sets new frame around clip plane slice -y based on the new position.
-
updateClipSliceZ
public void updateClipSliceZ()
Sets new frame around clip plane slice z based on the new position.
-
updateClipSliceZInv
public void updateClipSliceZInv()
Sets new frame around clip plane slice -z based on the new position.
-
windowClosing
public void windowClosing(java.awt.event.WindowEvent e)
Accessor that closing the mouse recorder window frame.- Parameters:
e
- Window event.
-
backupImage
protected void backupImage(ModelImage kImageA, ModelImage kImageB)
Called by the TextureSculptor or VolumeSculptor objects. The function stores the original volume data back to the original values in the m_aiImage_backup data members.- Parameters:
kImageA
- image A reference.kImageB
- image B reference.
-
setBoxColor
protected void setBoxColor(javax.swing.JButton button, java.awt.Color color)
Calls the appropriate method in the parent frame.- Parameters:
button
- color button.color
- color reference.
-
addControlPanel
private void addControlPanel(javax.swing.JPanel panel, java.awt.Component c, java.awt.GridBagConstraints gbc, int x, int y, int w, int h)
Helper method that adds components to the control panel for the grid bag layout.- Parameters:
panel
- control panel.c
- Component added to the control panel.gbc
- GridBagConstraints of added component.x
- Gridx locationy
- Gridy locationw
- Gridwidthh
- Gridheight
-
drawSphere
private void drawSphere(int index, float x, float y, float z)
Draw the red sphere with the given coordinate.- Parameters:
index
- sphere indexx
- float x positiony
- float y positionz
- float z position
-
initSphereBranch
private void initSphereBranch()
Initialize the red sphere image scene graph structure.
-
transform
private void transform(javax.vecmath.Vector4f vIn)
Transform a point rotation inverse to the volume rotation.- Parameters:
vIn
- point position in vector
-
updateVolumeRenderClipPlane
private void updateVolumeRenderClipPlane()
Update the volume render's clip plane with all new positions.
-
-