Go to the documentation of this file.
37 #ifndef vtkUnstructuredGridVolumeZSweepMapper_h
38 #define vtkUnstructuredGridVolumeZSweepMapper_h
63 class vtkPixelListFrame;
66 class vtkSimpleScreenEdge;
67 class vtkDoubleScreenEdge;
69 class vtkPixelListEntryMemory;
195 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve0,
196 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve1,
197 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve2,
205 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *
left,
206 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *
right,
215 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *
v0,
216 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *
v1,
258 int ImageViewportSize[2];
264 int ImageMemorySize[2];
270 int ImageInUseSize[2];
292 int ZBufferOrigin[2];
300 double FaceScalars[2];
304 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSpan *
Span;
305 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListFrame *
PixelListFrame;
310 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkUseSet *
UseSet;
313 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertices *
Vertices;
323 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSimpleScreenEdge *
SimpleEdge;
324 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkDoubleScreenEdge *
DoubleEdge;
340 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListEntryMemory *
MemoryManager;
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListFrame * PixelListFrame
static vtkUnstructuredGridVolumeZSweepMapper * New()
void ProjectAndSortVertices(vtkRenderer *ren, vtkVolume *vol)
a superclass for volume ray integration functions
vtkUnstructuredGridVolumeRayIntegrator * RealRayIntegrator
#define vtkGetObjectMacro(name, type)
~vtkUnstructuredGridVolumeZSweepMapper()
vtkIdType MaxRecordedPixelListSize
represents a volume (data & properties) in a rendered scene
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkDoubleScreenEdge * DoubleEdge
helper class that draws the image to the screen
float ImageSampleDistance
vtkVolume ** RenderVolumeTable
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertices * Vertices
float MaximumImageSampleDistance
int AutoAdjustSampleDistances
vtkTimeStamp SavedTriangleListMTime
record modification and/or execution time
vtkDoubleArray * FarIntersections
void MainLoop(vtkRenderWindow *renWin)
#define vtkTypeMacro(thisClass, superclass)
a list of ids arranged in priority order
vtkPriorityQueue * EventList
void RasterizeTriangle(vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve0, vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve1, vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve2, bool exitFace)
GLint GLint GLint GLint GLint x
void CreateAndCleanPixelList()
int ReorderTriangle(vtkIdType v[3], vtkIdType w[3])
abstract superclass for arrays of numeric data
void AllocateVertices(vtkIdType size)
vtkUnstructuredGridVolumeZSweepMapper()
#define vtkGetVectorMacro(name, type, count)
vtkDoubleArray * IntersectionLengths
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSpan * Span
double GetMinimumBoundsDepth(vtkRenderer *ren, vtkVolume *vol)
#define vtkSetClampMacro(name, type, min, max)
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListEntryMemory * MemoryManager
Unstructured grid volume mapper based the ZSweep Algorithm.
double GetZBufferValue(int x, int y)
vtkMatrix4x4 * PerspectiveMatrix
vtkUnstructuredGridVolumeRayIntegrator * RayIntegrator
abstract class to specify cell behavior
vtkRayCastImageDisplayHelper * ImageDisplayHelper
void RasterizeFace(vtkIdType faceIds[3], int externalSide)
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
void AllocateUseSet(vtkIdType size)
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkUseSet * UseSet
list of point or cell ids
void SavePixelListFrame()
#define vtkGetMacro(name, type)
void CompositeFunction(double zTarget)
vtkBooleanMacro(IgnoreDriverBugs, bool)
int MaxPixelListSizeReached
void Render(vtkRenderer *ren, vtkVolume *vol)
GLint GLint GLint GLint GLint GLint y
Abstract class for a unstructured grid volume mapper.
virtual void SetRayIntegrator(vtkUnstructuredGridVolumeRayIntegrator *ri)
void RasterizeLine(vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *v0, vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *v1, bool exitFace)
abstract specification for renderers
vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSimpleScreenEdge * SimpleEdge
void SetMaxPixelListSize(int size)
vtkDoubleArray * NearIntersections
provides thread-safe access to cells
void StoreRenderTime(vtkRenderer *ren, vtkVolume *vol, float t)
#define VTKRENDERINGVOLUME_EXPORT
dynamic, self-adjusting array of double
int IntermixIntersectingGeometry
float RetrieveRenderTime(vtkRenderer *ren, vtkVolume *vol)
create a window for renderers to draw into
GLubyte GLubyte GLubyte GLubyte w
vtkTransform * PerspectiveTransform
void PrintSelf(ostream &os, vtkIndent indent)
void RasterizeSpan(int y, vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *left, vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *right, bool exitFace)
unsigned char ColorComponentRealToByte(float color)
float MinimumImageSampleDistance
represents the common properties for rendering a volume.
vtkRenderer ** RenderRendererTable
int GetMaxPixelListSize()