Class VSEMD_MultipleImages

java.lang.Object
WildMagic.LibGraphics.ObjectSystem.GraphicsObject
WildMagic.LibGraphics.Effects.Effect
WildMagic.LibGraphics.Effects.ShaderEffect
All Implemented Interfaces:
Serializable, WildMagic.LibGraphics.ObjectSystem.NameIdInterface, WildMagic.LibGraphics.ObjectSystem.StreamInterface

public class VSEMD_MultipleImages extends VolumeShaderEffectMultiPass implements WildMagic.LibGraphics.ObjectSystem.StreamInterface
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • basicParameters

      private static String basicParameters
    • blendParameters

      private static String blendParameters
    • clipParameters

      private static String clipParameters
    • clipAEParameters

      private static String clipAEParameters
    • clipSphereParameters

      private static String clipSphereParameters
    • clipOBBParameters

      private static String clipOBBParameters
    • mainSetup

      private static String mainSetup
    • mainEnd

      private static String mainEnd
    • clipSetup

      private static String clipSetup
    • clipEnd

      private static String clipEnd
    • clipAESetup

      private static String clipAESetup
    • clipEllipsoidSetup

      private static String clipEllipsoidSetup
    • clipSphereSetup

      private static String clipSphereSetup
    • clipOBBSetup

      private static String clipOBBSetup
    • imageOn

      private boolean[] imageOn
    • hyperstack

      private VolumeImage[] hyperstack
    • hyperstackColormap

      private WildMagic.LibGraphics.Rendering.Texture hyperstackColormap
    • lut

      private String[] lut
  • Constructor Details

    • VSEMD_MultipleImages

      public VSEMD_MultipleImages(VolumeImage[] volumeImages, WildMagic.LibGraphics.Rendering.Texture colormap, WildMagic.LibGraphics.Rendering.Texture kSceneTarget)
      Creates a new VolumeShaderEffect object.
      Parameters:
      kSceneTarget - the SceneImage texture with the back-facing polygon texture coordinates.
      kImageA - the VolumeImage containing the data and textures for rendering.
      kVolumeImageB - second VolumeImage.
  • Method Details

    • 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 class VolumeShaderEffectMultiPass
    • Blend

      public void Blend(float fBlend)
      Sets the blend factor shader parameter between imageA and imageB.
      Overrides:
      Blend in class VolumeShaderEffectMultiPass
      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 class VolumeShaderEffectMultiPass
      Parameters:
      fBlend - blend factor (range = 0-1).
    • dispose

      public void dispose()
      memory cleanup.
      Overrides:
      dispose in class VolumeShaderEffectMultiPass
    • printProgram

      public void printProgram()
      Overrides:
      printProgram in class VolumeShaderEffectMultiPass
    • 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 class VolumeClipEffect
      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 class VolumeClipEffect
      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 class VolumeClipEffect
      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 class VolumeClipEffect
      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 class VolumeClipEffect
    • 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 class VolumeClipEffect
    • SetImageOn

      public void SetImageOn(int which, boolean on)
    • GetImageOn

      public boolean GetImageOn(int which)
    • checkPixelProgram

      private void checkPixelProgram()
    • createProgramText

      private String createProgramText()