VTK
vtkUnstructuredGridVolumeRayCastIterator.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 
3 /*=========================================================================
4 
5  Program: Visualization Toolkit
6  Module: vtkUnstructuredGridVolumeRayCastIterator.h
7 
8  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
9  All rights reserved.
10  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
11 
12  This software is distributed WITHOUT ANY WARRANTY; without even
13  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
14  PURPOSE. See the above copyright notice for more information.
15 
16 =========================================================================*/
17 
32 #ifndef vtkUnstructuredGridVolumeRayCastIterator_h
33 #define vtkUnstructuredGridVolumeRayCastIterator_h
34 
35 #include "vtkRenderingVolumeModule.h" // For export macro
36 #include "vtkObject.h"
37 
38 class vtkIdList;
39 class vtkDoubleArray;
40 class vtkDataArray;
41 
43 {
44 public:
46  virtual void PrintSelf(ostream &os, vtkIndent indent);
47 
50  virtual void Initialize(int x, int y) = 0;
51 
53 
62  virtual vtkIdType GetNextIntersections(vtkIdList *intersectedCells,
63  vtkDoubleArray *intersectionLengths,
64  vtkDataArray *scalars,
65  vtkDataArray *nearIntersections,
66  vtkDataArray *farIntersections) = 0;
68 
70 
72  vtkSetVector2Macro(Bounds, double);
73  vtkGetVector2Macro(Bounds, double);
75 
76  // Descrption:
77  // Set/get the maximum number of intersections returned with a call to
78  // GetNextIntersections. Set to 32 by default.
79  vtkSetMacro(MaxNumberOfIntersections, vtkIdType);
80  vtkGetMacro(MaxNumberOfIntersections, vtkIdType);
81 
82 protected:
85 
86  double Bounds[2];
87 
89 
90 private:
92  void operator=(const vtkUnstructuredGridVolumeRayCastIterator&); // Not implemented.
93 };
94 
95 #endif //vtkUnstructuredGridRayCastIterator_h
96 
vtkUnstructuredGridVolumeRayCastIterator::GetNextIntersections
virtual vtkIdType GetNextIntersections(vtkIdList *intersectedCells, vtkDoubleArray *intersectionLengths, vtkDataArray *scalars, vtkDataArray *nearIntersections, vtkDataArray *farIntersections)=0
vtkSetVector2Macro
#define vtkSetVector2Macro(name, type)
Definition: vtkSetGet.h:254
vtkUnstructuredGridVolumeRayCastIterator::MaxNumberOfIntersections
vtkIdType MaxNumberOfIntersections
Definition: vtkUnstructuredGridVolumeRayCastIterator.h:88
vtkGetVector2Macro
#define vtkGetVector2Macro(name, type)
Definition: vtkSetGet.h:270
vtkIdType
int vtkIdType
Definition: vtkType.h:275
vtkUnstructuredGridVolumeRayCastIterator::~vtkUnstructuredGridVolumeRayCastIterator
~vtkUnstructuredGridVolumeRayCastIterator()
vtkRenderingVolumeModule.h
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkUnstructuredGridVolumeRayCastIterator::Initialize
virtual void Initialize(int x, int y)=0
vtkgl::x
GLint GLint GLint GLint GLint x
Definition: vtkgl.h:11318
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
vtkUnstructuredGridVolumeRayCastIterator
Definition: vtkUnstructuredGridVolumeRayCastIterator.h:43
vtkUnstructuredGridVolumeRayCastIterator::vtkUnstructuredGridVolumeRayCastIterator
vtkUnstructuredGridVolumeRayCastIterator()
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkIdList
list of point or cell ids
Definition: vtkIdList.h:36
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkObject.h
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkUnstructuredGridVolumeRayCastIterator::PrintSelf
virtual void PrintSelf(ostream &os, vtkIndent indent)
vtkgl::y
GLint GLint GLint GLint GLint GLint y
Definition: vtkgl.h:11318
VTKRENDERINGVOLUME_EXPORT
#define VTKRENDERINGVOLUME_EXPORT
Definition: vtkRenderingVolumeModule.h:15
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:49