FreeMat

- Main Page
- Related Pages

vtkUnstructuredGridPreIntegration

Section: Visualization Toolkit Volume Rendering Classes

# Usage

vtkUnstructuredGridPreIntegration performs ray integration by looking into a precomputed table. The result should be equivalent to that computed by vtkUnstructuredGridLinearRayIntegrator and vtkUnstructuredGridPartialPreIntegration, but faster than either one. The pre-integration algorithm was first introduced by Roettger, Kraus, and Ertl in "Hardware-Accelerated Volume And Isosurface Rendering Based On Cell-Projection."

Due to table size limitations, a table can only be indexed by independent scalars. Thus, dependent scalars are not supported.

To create an instance of class vtkUnstructuredGridPreIntegration, simply invoke its constructor as follows

      obj = vtkUnstructuredGridPreIntegration

# Methods

The class vtkUnstructuredGridPreIntegration has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, `obj` is an instance of the vtkUnstructuredGridPreIntegration class.

- `string = obj.GetClassName ()`
- `int = obj.IsA (string name)`
- `vtkUnstructuredGridPreIntegration = obj.NewInstance ()`
- `vtkUnstructuredGridPreIntegration = obj.SafeDownCast (vtkObject o)`
- `obj.Initialize (vtkVolume volume, vtkDataArray scalars)`
- `obj.Integrate (vtkDoubleArray intersectionLengths, vtkDataArray nearIntersections, vtkDataArray farIntersections, float color[4])`
- `vtkUnstructuredGridVolumeRayIntegrator = obj.GetIntegrator ()` - The class used to fill the pre integration table. By default, a vtkUnstructuredGridPartialPreIntegration is built.
- `obj.SetIntegrator (vtkUnstructuredGridVolumeRayIntegrator )` - The class used to fill the pre integration table. By default, a vtkUnstructuredGridPartialPreIntegration is built.
- `obj.SetIntegrationTableScalarResolution (int )` - Set/Get the size of the integration table built.
- `int = obj.GetIntegrationTableScalarResolution ()` - Set/Get the size of the integration table built.
- `obj.SetIntegrationTableLengthResolution (int )` - Set/Get the size of the integration table built.
- `int = obj.GetIntegrationTableLengthResolution ()` - Set/Get the size of the integration table built.
- `double = obj.GetIntegrationTableScalarShift (int component)` - Get how an integration table is indexed.
- `double = obj.GetIntegrationTableScalarScale (int component)` - Get how an integration table is indexed.
- `double = obj.GetIntegrationTableLengthScale ()` - Get how an integration table is indexed.
- `int = obj.GetIncrementalPreIntegration ()` - Get/set whether to use incremental pre-integration (by default it's on). Incremental pre-integration is much faster but can introduce error due to numerical imprecision. Under most circumstances, the error is not noticable.
- `obj.SetIncrementalPreIntegration (int )` - Get/set whether to use incremental pre-integration (by default it's on). Incremental pre-integration is much faster but can introduce error due to numerical imprecision. Under most circumstances, the error is not noticable.
- `obj.IncrementalPreIntegrationOn ()` - Get/set whether to use incremental pre-integration (by default it's on). Incremental pre-integration is much faster but can introduce error due to numerical imprecision. Under most circumstances, the error is not noticable.
- `obj.IncrementalPreIntegrationOff ()` - Get/set whether to use incremental pre-integration (by default it's on). Incremental pre-integration is much faster but can introduce error due to numerical imprecision. Under most circumstances, the error is not noticable.