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
39class vtkIdList;
40class vtkDoubleArray;
41class vtkDataArray;
42
43class VTKRENDERINGVOLUME_EXPORT vtkUnstructuredGridVolumeRayCastIterator : public vtkObject
44{
45public:
47 virtual void PrintSelf(ostream &os, vtkIndent indent);
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
87protected:
90
91 double Bounds[2];
92
94
95private:
97 void operator=(const vtkUnstructuredGridVolumeRayCastIterator&) VTK_DELETE_FUNCTION;
98};
99
100#endif //vtkUnstructuredGridRayCastIterator_h
101
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
dynamic, self-adjusting array of double
list of point or cell ids
Definition: vtkIdList.h:37
a simple class to control print indentation
Definition: vtkIndent.h:40
abstract base class for most VTK objects
Definition: vtkObject.h:60
vtkUnstructuredGridVolumeRayCastIterator is a superclass for iterating over the intersections of a vi...
virtual void Initialize(int x, int y)=0
Initializes the iteration to the start of the ray at the given screen coordinates.
virtual vtkIdType GetNextIntersections(vtkIdList *intersectedCells, vtkDoubleArray *intersectionLengths, vtkDataArray *scalars, vtkDataArray *nearIntersections, vtkDataArray *farIntersections)=0
Get the intersections of the next several cells.
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
int vtkIdType
Definition: vtkType.h:287