Class ShearWarpColorLighting
- java.lang.Object
-
- gov.nih.mipav.view.renderer.J3D.volumeview.Renderer
-
- gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpRenderer
-
- gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpColor
-
- gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpColorLighting
-
- All Implemented Interfaces:
RendererInterfaceColor
public class ShearWarpColorLighting extends ShearWarpColor
A renderer for RGBA+lighting volume data. See the document ShearWarpRendering.pdf for a detailed description of the renderer architecture.
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
m_bCompositeForward
The actual order of compositing - true if front-to-back.protected int
m_iPermute
the current permutation of the voxel indices (0, 1, or 2).protected SoftwareVertexProperty
m_kVertexProperty
DOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpColor
m_acImageA, m_acImageB, m_acImageG, m_acImageR, m_afInterB, m_afInterG, m_afInterR, m_kMap, m_kNormalizeB, m_kNormalizeG, m_kNormalizeR
-
Fields inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpRenderer
m_aaaasEncode, m_aaasVolumeEncode, m_aafBox, m_aafM, m_aaiIndex, m_aasSliceEncode, m_afA, m_afB, m_afOffset, m_afShear, m_aiBound, m_aiClipMax, m_aiClipMin, m_aiCurrentI, m_aiInterC, m_aiSliceBound, m_aiSliceMax, m_aiSliceMin, m_asSkip, m_bDoEncodeSkip, m_fInv255, m_iI0, m_iInterBound, m_iInterBoundM1, m_iInterIndex, m_iInterOffset, m_iInterQuantity, m_iPixel, m_iQuantity, m_iSIndex, m_iSlice, m_iSliceQuantity, m_kP00, m_kP01, m_kP10, m_kP11, m_kPosition
-
Fields inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.Renderer
m_aiRImage, m_akAxis, m_akNormal, m_bParallel, m_bReloadInput, m_fAngle, m_fExtreme, m_fFMult, m_fGamma, m_fNear, m_fRScaleX, m_fRScaleY, m_fXTrn, m_fYTrn, m_fZoom, m_iMaxBound, m_iMinBound, m_iRBound, m_iXBound, m_iXBoundM1, m_iXBoundM2, m_iXYProduct, m_iXYZProduct, m_iYBound, m_iYBoundM1, m_iYBoundM2, m_iZBound, m_iZBoundM1, m_iZBoundM2, m_kBackgroundColor, m_kEyeModel, m_kEyeWorld, m_kImage, m_kLightSet, m_kMaterial, m_kRotate
-
-
Constructor Summary
Constructors Constructor Description ShearWarpColorLighting(ModelImage kImage, int iFinalBound, int[] aiFinal)
Create an RGBA+lighting color renderer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
beforeResampleAll(int k0, int k1, int k2)
This is a callback to be executed before resampleAll is executed.void
disposeLocal()
Deallocate memory.protected void
finalize()
Calls dispose.protected void
resampleAll(int iDS)
Resample all the slices for the current permuted volume data.protected void
resampleSingle()
Resample a single slice of the permuted volume data.protected void
traceInit()
Called at the beginning of the trace methods.boolean
usesNormals()
Return indication as to whether or not the particular renderer uses normal vectors as part of its implementation.-
Methods inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpColor
hasInputData, hasInputMap, mapIntermediateToFinal, setInput, setInputMap
-
Methods inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.ShearWarpRenderer
beforeResampleSingle, composite, computeEncode, computePositions, fromFloat, fromInt, getAxis, getAxis, initializeEncodeSkip, rotateBy, rotateFrameBy, setAxis, setParallel, setXBoundNeg, setXBoundPos, setYBoundNeg, setYBoundPos, setZBoundNeg, setZBoundPos, skipToNonopaque, toFloat, toInt, updateSkip
-
Methods inherited from class gov.nih.mipav.view.renderer.J3D.volumeview.Renderer
computeIntegralNormalizationFactor, convertWorldToModel, getAngle, getBackgroundColor, getExtreme, getEyeDist, getEyePoint, getGamma, getMaxBound, getMinBound, getNear, getParallel, getXBound, getXTranslate, getYBound, getYTranslate, getZBound, getZoom, hasNormals, orthonormalize, reloadInputData, reloadInputData, setAngle, setBackgroundColor, setExtreme, setEyeDist, setGamma, setLighting, setMaterialShininess, setNear, setNearAndAngle, setNormals, setXTranslate, setYTranslate, setZoom
-
-
-
-
Field Detail
-
m_bCompositeForward
protected boolean m_bCompositeForward
The actual order of compositing - true if front-to-back.
-
m_iPermute
protected int m_iPermute
the current permutation of the voxel indices (0, 1, or 2).
-
m_kVertexProperty
protected SoftwareVertexProperty m_kVertexProperty
DOCUMENT ME!
-
-
Constructor Detail
-
ShearWarpColorLighting
public ShearWarpColorLighting(ModelImage kImage, int iFinalBound, int[] aiFinal)
Create an RGBA+lighting color renderer. The input color channel type is 'byte', a signed 8-bit quantity, but the data represents unsigned 8-bit values.- Parameters:
kImage
- the 3D imageiFinalBound
- the dimension of the square 2D renderer imageaiFinal
- The 2D rendered image. The image is 24-bit RGB color, each pixel stored as a 32-bit integer. The 8 most significant bits are ignored. The blue channel is stored in the 8 least significant bits. The green channel is in the next 8 bits adjacent to the blue bits. The red channel is in the next 8 bits adjacent to the green channel.
-
-
Method Detail
-
disposeLocal
public void disposeLocal()
Deallocate memory.- Overrides:
disposeLocal
in classShearWarpColor
-
usesNormals
public boolean usesNormals()
Return indication as to whether or not the particular renderer uses normal vectors as part of its implementation.- Specified by:
usesNormals
in classRenderer
- Returns:
- boolean True if the implementation uses normals.
-
beforeResampleAll
protected void beforeResampleAll(int k0, int k1, int k2)
This is a callback to be executed before resampleAll is executed. The base class initializes various primitive quantities. This class sets the current eye position to always be in front of the box along the current renderer view direction. This function also saves the current permutation for use in computing voxel positions for dynamic lighting.- Overrides:
beforeResampleAll
in classShearWarpRenderer
- Parameters:
k0
- a permutation, one of (0,1,2), (1,2,0), (2,0,1)k1
- DOCUMENT ME!k2
- DOCUMENT ME!
-
finalize
protected void finalize() throws java.lang.Throwable
Calls dispose.- Overrides:
finalize
in classShearWarpColor
- Throws:
java.lang.Throwable
- DOCUMENT ME!
-
resampleAll
protected void resampleAll(int iDS)
Resample all the slices for the current permuted volume data.- Overrides:
resampleAll
in classShearWarpColor
- Parameters:
iDS
- The number of slices to increment during the resampling phase. The value should be one or larger. If one, all slices of the volume data are resampled. If two, only every other slice is resampled. An input larger than one is used to allow fast rendering during rotation of the volume data. Once the rotation terminates, a composite with input of one should be called.
-
resampleSingle
protected void resampleSingle()
Resample a single slice of the permuted volume data.- Overrides:
resampleSingle
in classShearWarpRenderer
-
-