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 
33 #ifndef vtkUnstructuredGridVolumeRayCastIterator_h
34 #define vtkUnstructuredGridVolumeRayCastIterator_h
35 
36 #include "vtkRenderingVolumeModule.h" // For export macro
37 #include "vtkObject.h"
38 
39 class vtkIdList;
40 class vtkDoubleArray;
41 class vtkDataArray;
42 
43 class VTKRENDERINGVOLUME_EXPORT vtkUnstructuredGridVolumeRayCastIterator : public vtkObject
44 {
45 public:
47  void PrintSelf(ostream &os, vtkIndent indent) override;
48 
53  virtual void Initialize(int x, int y) = 0;
54 
66  virtual vtkIdType GetNextIntersections(vtkIdList *intersectedCells,
67  vtkDoubleArray *intersectionLengths,
68  vtkDataArray *scalars,
69  vtkDataArray *nearIntersections,
70  vtkDataArray *farIntersections) = 0;
71 
73 
77  vtkSetVector2Macro(Bounds, double);
78  vtkGetVector2Macro(Bounds, double);
80 
81  // Descrption:
82  // Set/get the maximum number of intersections returned with a call to
83  // GetNextIntersections. Set to 32 by default.
84  vtkSetMacro(MaxNumberOfIntersections, vtkIdType);
85  vtkGetMacro(MaxNumberOfIntersections, vtkIdType);
86 
87 protected:
90 
91  double Bounds[2];
92 
94 
95 private:
97  void operator=(const vtkUnstructuredGridVolumeRayCastIterator&) = delete;
98 };
99 
100 #endif //vtkUnstructuredGridRayCastIterator_h
101 
abstract base class for most VTK objects
Definition: vtkObject.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int vtkIdType
Definition: vtkType.h:347
dynamic, self-adjusting array of double
a simple class to control print indentation
Definition: vtkIndent.h:39
list of point or cell ids
Definition: vtkIdList.h:36
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
vtkUnstructuredGridVolumeRayCastIterator is a superclass for iterating over the intersections of a vi...