Class VSEMD_MultipleImages
- java.lang.Object
-
- WildMagic.LibGraphics.ObjectSystem.GraphicsObject
-
- WildMagic.LibGraphics.Effects.Effect
-
- WildMagic.LibGraphics.Effects.ShaderEffect
-
- gov.nih.mipav.view.renderer.WildMagic.Render.VolumeClipEffect
-
- gov.nih.mipav.view.renderer.WildMagic.Render.VolumeShaderEffectMultiPass
-
- gov.nih.mipav.view.renderer.WildMagic.Render.VSEMD_MultipleImages
-
- All Implemented Interfaces:
java.io.Serializable
,WildMagic.LibGraphics.ObjectSystem.NameIdInterface
,WildMagic.LibGraphics.ObjectSystem.StreamInterface
public class VSEMD_MultipleImages extends VolumeShaderEffectMultiPass implements WildMagic.LibGraphics.ObjectSystem.StreamInterface
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
basicParameters
private static java.lang.String
blendParameters
private static java.lang.String
clipAEParameters
private static java.lang.String
clipAESetup
private static java.lang.String
clipEllipsoidSetup
private static java.lang.String
clipEnd
private static java.lang.String
clipOBBParameters
private static java.lang.String
clipOBBSetup
private static java.lang.String
clipParameters
private static java.lang.String
clipSetup
private static java.lang.String
clipSphereParameters
private static java.lang.String
clipSphereSetup
private VolumeImage[]
hyperstack
private WildMagic.LibGraphics.Rendering.Texture
hyperstackColormap
private boolean[]
imageOn
private java.lang.String[]
lut
private static java.lang.String
mainEnd
private static java.lang.String
mainSetup
private static long
serialVersionUID
-
Fields inherited from class gov.nih.mipav.view.renderer.WildMagic.Render.VolumeShaderEffectMultiPass
CMP, CMP_SUR, CUSTOM, DRR, m_aafLight, m_afABBlendParam, m_afBlendParam, m_akLevWidget, m_bGradientMag, m_bMultiHisto, m_fMaxLength, m_fSamples, m_iBlend, m_iDstBlend, m_iPasses, m_iSrcBlend, m_iUsedWidgets, m_iWhichShader, m_kBlendColor, m_kPShaderCMP, m_kRGBT, m_kSceneTarget, m_kVolumeImageA, m_kVolumeImageB, m_pkVShader, MIP, ms_iMaxSamples, ms_iNumLev, ms_MaxLights, SUR
-
Fields inherited from class gov.nih.mipav.view.renderer.WildMagic.Render.VolumeClipEffect
CLIP_A, CLIP_A_INV, CLIP_EYE, CLIP_EYE_INV, CLIP_X, CLIP_X_INV, CLIP_Y, CLIP_Y_INV, CLIP_Z, CLIP_Z_INV, m_aafClipData, m_afClipAll, m_afClipOBBAxis0, m_afClipOBBAxis1, m_afClipOBBAxis2, m_afClipOBBExtent, m_afClipSphereCenter, m_afClipSphereScale, m_afDoClip, m_afVolumeMatrix, m_bClipOBB, m_bClipSphere, MAX_CLIP_PLANES
-
-
Constructor Summary
Constructors Constructor Description VSEMD_MultipleImages(VolumeImage[] volumeImages, WildMagic.LibGraphics.Rendering.Texture colormap, WildMagic.LibGraphics.Rendering.Texture kSceneTarget)
Creates a new VolumeShaderEffect object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
Blend(float fBlend)
Sets the blend factor shader parameter between imageA and imageB.private void
checkPixelProgram()
private java.lang.String
createProgramText()
protected void
CreateVolumeTexture()
The VolumeShaderEffect.CreateVolumeTexture() function constructs and initializes the vertex and pixel shader programs for volume rendering.void
dispose()
memory cleanup.boolean
GetImageOn(int which)
void
printProgram()
void
setABBlend(float fBlend)
Sets the blend factor shader parameter between imageA and imageB.void
SetClip(int iWhich, float data, boolean bEnable)
Enable and set the axis-aligned clip plane.void
SetClipArb(float[] afEquation, boolean bEnable)
Enable and set the arbitrary clip plane.void
SetClipEye(float[] afEquation, boolean bEnable)
Enable and set the eye clip plane.void
SetClipEyeInv(float[] afEquation, boolean bEnable)
Enable and set the inverse-eye clip plane.void
SetClipOBB(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, WildMagic.LibFoundation.Mathematics.Vector3f[] axes, float[] extents, boolean bEnable)
void
SetClipSphere(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, float radius, boolean bEnable)
void
SetImageOn(int which, boolean on)
-
Methods inherited from class gov.nih.mipav.view.renderer.WildMagic.Render.VolumeShaderEffectMultiPass
CMPMode, DRRMode, getABBlend, GetGradientMagnitude, MIPMode, MULTIHISTOMode, OnLoadPrograms, Reload, RestoreGlobalState, SaveStrings, SelfShadow, SetBackgroundColor, SetColorImage, setCurrentShader, SetCustomBlend, SetDefaultAlphaState, SetGlobalState, SetGradientMagnitude, SetLight, setMaxLength, setRGBTA, setRGBTB, setVolumeSamples, SURFASTMode, SURMode, updateLevWidgetState, updateLevWidgetState
-
Methods inherited from class gov.nih.mipav.view.renderer.WildMagic.Render.VolumeClipEffect
getClip, getClipArb, getClipArbInv, getClipEnable, getClipEye, getClipEyeInv, getClipInv, getClipInvEnable, isClip, isClipAE, isClipOBB, isClipSphere, ResetClip, SetClipArbInv, setVolumeMatrix
-
Methods inherited from class WildMagic.LibGraphics.Effects.ShaderEffect
GetAllObjectsByName, GetBlending, GetCProgram, GetDiskUsed, GetObjectByID, GetObjectByName, GetPassQuantity, GetPProgram, GetSamplerInformation, GetTexture, GetTexture, GetTextureQuantity, GetVProgram, Link, Load, LoadPrograms, LoadResources, OnReleasePrograms, Register, ReleasePrograms, ReleaseResources, Save, SetCProgram, SetPassQuantity, SetPShader, SetVShader
-
Methods inherited from class WildMagic.LibGraphics.ObjectSystem.GraphicsObject
GetID, GetName, GetNextID, GetObjectByIDBase, GetObjectByNameBase, SetName
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
basicParameters
private static java.lang.String basicParameters
-
blendParameters
private static java.lang.String blendParameters
-
clipParameters
private static java.lang.String clipParameters
-
clipAEParameters
private static java.lang.String clipAEParameters
-
clipSphereParameters
private static java.lang.String clipSphereParameters
-
clipOBBParameters
private static java.lang.String clipOBBParameters
-
mainSetup
private static java.lang.String mainSetup
-
mainEnd
private static java.lang.String mainEnd
-
clipSetup
private static java.lang.String clipSetup
-
clipEnd
private static java.lang.String clipEnd
-
clipAESetup
private static java.lang.String clipAESetup
-
clipEllipsoidSetup
private static java.lang.String clipEllipsoidSetup
-
clipSphereSetup
private static java.lang.String clipSphereSetup
-
clipOBBSetup
private static java.lang.String clipOBBSetup
-
imageOn
private boolean[] imageOn
-
hyperstack
private VolumeImage[] hyperstack
-
hyperstackColormap
private WildMagic.LibGraphics.Rendering.Texture hyperstackColormap
-
lut
private java.lang.String[] lut
-
-
Constructor Detail
-
VSEMD_MultipleImages
public VSEMD_MultipleImages(VolumeImage[] volumeImages, WildMagic.LibGraphics.Rendering.Texture colormap, WildMagic.LibGraphics.Rendering.Texture kSceneTarget)
Creates a new VolumeShaderEffect object.- Parameters:
kImageA
- the VolumeImage containing the data and textures for rendering.kVolumeImageB
- second VolumeImage.kSceneTarget
- the SceneImage texture with the back-facing polygon texture coordinates.
-
-
Method Detail
-
CreateVolumeTexture
protected void CreateVolumeTexture()
The VolumeShaderEffect.CreateVolumeTexture() function constructs and initializes the vertex and pixel shader programs for volume rendering. The vertex shader is the same for each rendering type: MIP, DDR, Composite, Surface, and Composite Surface. The pixel shaders are different for each.- Overrides:
CreateVolumeTexture
in classVolumeShaderEffectMultiPass
-
Blend
public void Blend(float fBlend)
Sets the blend factor shader parameter between imageA and imageB.- Overrides:
Blend
in classVolumeShaderEffectMultiPass
- Parameters:
fBlend
- blend factor (range = 0-1).
-
setABBlend
public void setABBlend(float fBlend)
Description copied from class:VolumeShaderEffectMultiPass
Sets the blend factor shader parameter between imageA and imageB.- Overrides:
setABBlend
in classVolumeShaderEffectMultiPass
- Parameters:
fBlend
- blend factor (range = 0-1).
-
dispose
public void dispose()
memory cleanup.- Overrides:
dispose
in classVolumeShaderEffectMultiPass
-
printProgram
public void printProgram()
- Overrides:
printProgram
in classVolumeShaderEffectMultiPass
-
SetClip
public void SetClip(int iWhich, float data, boolean bEnable)
Description copied from class:VolumeClipEffect
Enable and set the axis-aligned clip plane.- Overrides:
SetClip
in classVolumeClipEffect
- Parameters:
iWhich
- one of 6 clip-planes to set.data
- the distance to the clip-plane.
-
SetClipArb
public void SetClipArb(float[] afEquation, boolean bEnable)
Description copied from class:VolumeClipEffect
Enable and set the arbitrary clip plane.- Overrides:
SetClipArb
in classVolumeClipEffect
- Parameters:
afEquation
- the clip-plane equation.
-
SetClipEye
public void SetClipEye(float[] afEquation, boolean bEnable)
Description copied from class:VolumeClipEffect
Enable and set the eye clip plane.- Overrides:
SetClipEye
in classVolumeClipEffect
- Parameters:
afEquation
- the clip-plane equation.
-
SetClipEyeInv
public void SetClipEyeInv(float[] afEquation, boolean bEnable)
Description copied from class:VolumeClipEffect
Enable and set the inverse-eye clip plane.- Overrides:
SetClipEyeInv
in classVolumeClipEffect
- Parameters:
afEquation
- the clip-plane equation.
-
SetClipSphere
public void SetClipSphere(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, float radius, boolean bEnable)
- Overrides:
SetClipSphere
in classVolumeClipEffect
-
SetClipOBB
public void SetClipOBB(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, WildMagic.LibFoundation.Mathematics.Vector3f[] axes, float[] extents, boolean bEnable)
- Overrides:
SetClipOBB
in classVolumeClipEffect
-
SetImageOn
public void SetImageOn(int which, boolean on)
-
GetImageOn
public boolean GetImageOn(int which)
-
checkPixelProgram
private void checkPixelProgram()
-
createProgramText
private java.lang.String createProgramText()
-
-