Class VolumeClipEffect

java.lang.Object
WildMagic.LibGraphics.ObjectSystem.GraphicsObject
WildMagic.LibGraphics.Effects.Effect
WildMagic.LibGraphics.Effects.ShaderEffect
gov.nih.mipav.view.renderer.WildMagic.Render.VolumeClipEffect
All Implemented Interfaces:
Serializable, WildMagic.LibGraphics.ObjectSystem.NameIdInterface, WildMagic.LibGraphics.ObjectSystem.StreamInterface
Direct Known Subclasses:
SurfaceClipEffect, SurfaceLightingEffect, VolumeCalcEffect, VolumeShaderEffectMultiPass

public abstract class VolumeClipEffect extends WildMagic.LibGraphics.Effects.ShaderEffect
Clipping effect for Volume Objects.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    protected float[][]
    stores t=clip plane information:
    protected boolean[]
    Turn clipping on/off per-axis aligned clip plane, eye-clip planes and arbitrary plane.
    protected float[]
     
    protected float[]
     
    protected float[]
     
    protected float[]
     
    protected float[]
     
    protected float[]
     
    protected float[]
    Turn clipping on/off.
    protected float[]
     
    private static final String[]
    Axis-aligned clip plane shader parameter names:
    protected boolean
     
    protected boolean
     
    static final int
     
    private static final long
     

    Fields inherited from class WildMagic.LibGraphics.Effects.ShaderEffect

    m_iPassQuantity, m_kAlphaState, m_kCompiledPrograms, m_kPShader, m_kVShader
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    private void
    Enable clipping.
    WildMagic.LibFoundation.Mathematics.Vector3f
     
    WildMagic.LibFoundation.Mathematics.Vector4f
     
    WildMagic.LibFoundation.Mathematics.Vector4f
     
    boolean[]
     
    WildMagic.LibFoundation.Mathematics.Vector4f
     
    WildMagic.LibFoundation.Mathematics.Vector4f
     
    WildMagic.LibFoundation.Mathematics.Vector3f
     
    boolean[]
     
    boolean
     
    boolean
     
    boolean
     
    boolean
     
    void
    OnLoadPrograms(int iPass, WildMagic.LibGraphics.Shaders.Program pkVProgram, WildMagic.LibGraphics.Shaders.Program pkPProgram, WildMagic.LibGraphics.Shaders.Program pkCProgram)
     
    void
    Reset the axis-aligned clip planes, eye, inverse-eye and arbitrary clip planes to neutral.
    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
    SetClipArbInv(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
    setVolumeMatrix(float[] volumeMatrix)
     

    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, RestoreGlobalState, Save, SaveStrings, SetCProgram, SetDefaultAlphaState, SetGlobalState, SetPassQuantity, SetPShader, SetVShader

    Methods inherited from class WildMagic.LibGraphics.Effects.Effect

    Draw

    Methods inherited from class WildMagic.LibGraphics.ObjectSystem.GraphicsObject

    GetID, GetName, GetNextID, GetObjectByIDBase, GetObjectByNameBase, SetName

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • CLIP_X

      public static final int CLIP_X
      See Also:
    • CLIP_X_INV

      public static final int CLIP_X_INV
      See Also:
    • CLIP_Y

      public static final int CLIP_Y
      See Also:
    • CLIP_Y_INV

      public static final int CLIP_Y_INV
      See Also:
    • CLIP_Z

      public static final int CLIP_Z
      See Also:
    • CLIP_Z_INV

      public static final int CLIP_Z_INV
      See Also:
    • CLIP_EYE

      public static final int CLIP_EYE
      See Also:
    • CLIP_EYE_INV

      public static final int CLIP_EYE_INV
      See Also:
    • CLIP_A

      public static final int CLIP_A
      See Also:
    • CLIP_A_INV

      public static final int CLIP_A_INV
      See Also:
    • MAX_CLIP_PLANES

      public static final int MAX_CLIP_PLANES
      See Also:
    • m_akClip

      private static final String[] m_akClip
      Axis-aligned clip plane shader parameter names:
    • m_afDoClip

      protected float[] m_afDoClip
      Turn clipping on/off.
    • m_afClipAll

      protected boolean[] m_afClipAll
      Turn clipping on/off per-axis aligned clip plane, eye-clip planes and arbitrary plane.
    • m_aafClipData

      protected float[][] m_aafClipData
      stores t=clip plane information:
    • m_afVolumeMatrix

      protected float[] m_afVolumeMatrix
    • m_bClipSphere

      protected boolean m_bClipSphere
    • m_afClipSphereCenter

      protected float[] m_afClipSphereCenter
    • m_afClipSphereScale

      protected float[] m_afClipSphereScale
    • m_afClipOBBAxis0

      protected float[] m_afClipOBBAxis0
    • m_afClipOBBAxis1

      protected float[] m_afClipOBBAxis1
    • m_afClipOBBAxis2

      protected float[] m_afClipOBBAxis2
    • m_afClipOBBExtent

      protected float[] m_afClipOBBExtent
    • m_bClipOBB

      protected boolean m_bClipOBB
  • Constructor Details

    • VolumeClipEffect

      public VolumeClipEffect()
  • Method Details

    • dispose

      public void dispose()
      Overrides:
      dispose in class WildMagic.LibGraphics.Effects.ShaderEffect
    • OnLoadPrograms

      public void OnLoadPrograms(int iPass, WildMagic.LibGraphics.Shaders.Program pkVProgram, WildMagic.LibGraphics.Shaders.Program pkPProgram, WildMagic.LibGraphics.Shaders.Program pkCProgram)
      Overrides:
      OnLoadPrograms in class WildMagic.LibGraphics.Effects.ShaderEffect
    • ResetClip

      public void ResetClip()
      Reset the axis-aligned clip planes, eye, inverse-eye and arbitrary clip planes to neutral.
    • SetClip

      public void SetClip(int iWhich, float data, boolean bEnable)
      Enable and set the axis-aligned clip plane.
      Parameters:
      iWhich - one of 6 clip-planes to set.
      data - the distance to the clip-plane.
    • SetClipArb

      public void SetClipArb(float[] afEquation, boolean bEnable)
      Enable and set the arbitrary clip plane.
      Parameters:
      afEquation - the clip-plane equation.
    • SetClipArbInv

      public void SetClipArbInv(float[] afEquation, boolean bEnable)
      Enable and set the arbitrary clip plane.
      Parameters:
      afEquation - the clip-plane equation.
    • SetClipEye

      public void SetClipEye(float[] afEquation, boolean bEnable)
      Enable and set the eye clip plane.
      Parameters:
      afEquation - the clip-plane equation.
    • SetClipEyeInv

      public void SetClipEyeInv(float[] afEquation, boolean bEnable)
      Enable and set the inverse-eye clip plane.
      Parameters:
      afEquation - the clip-plane equation.
    • SetClipSphere

      public void SetClipSphere(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, float radius, boolean bEnable)
    • SetClipOBB

      public void SetClipOBB(WildMagic.LibFoundation.Mathematics.Vector3f center, WildMagic.LibFoundation.Mathematics.Vector3f scale, WildMagic.LibFoundation.Mathematics.Vector3f[] axes, float[] extents, boolean bEnable)
    • setVolumeMatrix

      public void setVolumeMatrix(float[] volumeMatrix)
    • EnableClip

      private void EnableClip()
      Enable clipping.
    • isClipAE

      public boolean isClipAE()
    • isClipSphere

      public boolean isClipSphere()
    • isClipOBB

      public boolean isClipOBB()
    • getClip

      public WildMagic.LibFoundation.Mathematics.Vector3f getClip()
    • getClipEnable

      public boolean[] getClipEnable()
    • getClipEye

      public WildMagic.LibFoundation.Mathematics.Vector4f getClipEye()
    • getClipEyeInv

      public WildMagic.LibFoundation.Mathematics.Vector4f getClipEyeInv()
    • getClipArb

      public WildMagic.LibFoundation.Mathematics.Vector4f getClipArb()
    • getClipArbInv

      public WildMagic.LibFoundation.Mathematics.Vector4f getClipArbInv()
    • getClipInv

      public WildMagic.LibFoundation.Mathematics.Vector3f getClipInv()
    • getClipInvEnable

      public boolean[] getClipInvEnable()
    • isClip

      public boolean isClip()