38 #ifndef vtkUnstructuredGridVolumeZSweepMapper_h
39 #define vtkUnstructuredGridVolumeZSweepMapper_h
41 #include "vtkRenderingVolumeModule.h"
63 class vtkPixelListFrame;
66 class vtkSimpleScreenEdge;
67 class vtkDoubleScreenEdge;
69 class vtkPixelListEntryMemory;
89 vtkSetClampMacro( ImageSampleDistance,
float, 0.1f, 100.0f );
90 vtkGetMacro( ImageSampleDistance,
float );
98 vtkSetClampMacro( MinimumImageSampleDistance,
float, 0.1f, 100.0f );
99 vtkGetMacro( MinimumImageSampleDistance,
float );
107 vtkSetClampMacro( MaximumImageSampleDistance,
float, 0.1f, 100.0f );
108 vtkGetMacro( MaximumImageSampleDistance,
float );
118 vtkSetClampMacro( AutoAdjustSampleDistances,
int, 0, 1 );
119 vtkGetMacro( AutoAdjustSampleDistances,
int );
128 vtkSetClampMacro( IntermixIntersectingGeometry,
int, 0, 1 );
129 vtkGetMacro( IntermixIntersectingGeometry,
int );
139 int GetMaxPixelListSize();
146 void SetMaxPixelListSize(
int size);
165 vtkGetVectorMacro( ImageInUseSize,
int, 2 );
166 vtkGetVectorMacro( ImageOrigin,
int, 2 );
167 vtkGetVectorMacro( ImageViewportSize,
int , 2 );
196 void CreateAndCleanPixelList();
208 void CompositeFunction(
double zTarget);
213 unsigned char ColorComponentRealToByte(
float color);
218 void RasterizeFace(
vtkIdType faceIds[3],
int externalSide);
226 void RasterizeTriangle(
227 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve0,
228 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve1,
229 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *ve2,
238 void RasterizeSpan(
int y,
239 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *left,
240 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkScreenEdge *right,
250 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *v0,
251 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertexEntry *v1,
264 double GetZBufferValue(
int x,
285 void SavePixelListFrame();
297 int ImageViewportSize[2];
303 int ImageMemorySize[2];
309 int ImageInUseSize[2];
331 int ZBufferOrigin[2];
339 double FaceScalars[2];
342 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSpan *
Span;
343 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListFrame *
PixelListFrame;
348 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkUseSet *
UseSet;
351 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkVertices *
Vertices;
361 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkSimpleScreenEdge *
SimpleEdge;
362 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkDoubleScreenEdge *
DoubleEdge;
378 vtkUnstructuredGridVolumeZSweepMapperNamespace::vtkPixelListEntryMemory *
MemoryManager;