vtk
Class vtkUnstructuredGridBunykRayCastFunction
java.lang.Object
vtk.vtkObjectBase
vtk.vtkObject
vtk.vtkUnstructuredGridVolumeRayCastFunction
vtk.vtkUnstructuredGridBunykRayCastFunction
- All Implemented Interfaces:
- java.io.Serializable
- public class vtkUnstructuredGridBunykRayCastFunction
- extends vtkUnstructuredGridVolumeRayCastFunction
- implements java.io.Serializable
vtkUnstructuredGridBunykRayCastFunction - a superclass for ray casting functions.
vtkUnstructuredGridBunykRayCastFunction is a concrete implementation of a
ray cast function for unstructured grid data. This class was based on the
paper "Simple, Fast, Robust Ray Casting of Irregular Grids" by Paul Bunyk,
Arie Kaufmna, and Claudio Silva. This method is quite memory intensive
(with extra explicit copies of the data) and therefore should not be used
for very large data. This method assumes that the input data is composed
entirely of tetras - use vtkDataSetTriangleFilter before setting the input
on the mapper.
The basic idea of this method is as follows:
1) Enumerate the triangles. At each triangle have space for some
information that will be used during rendering. This includes
which tetra the triangles belong to, the plane equation and the
Barycentric coefficients.
2) Keep a reference to all four triangles for each tetra.
3) At the beginning of each render, do the precomputation. This
includes creating an array of transformed points (in view
coordinates) and computing the view dependent info per triangle
(plane equations and barycentric coords in view space)
4) Find all front facing boundary triangles (a triangle is on the
boundary if it belongs to only one tetra). For each triangle,
find all pixels in the image that intersect the triangle, and
add this to the sorted (by depth) intersection list at each
pixel.
5) For each ray cast, traverse the intersection list. At each
intersection, accumulate opacity and color contribution
per tetra along the ray until you reach an exiting triangle
(on the boundary).
JavaBean wrapper for vtkUnstructuredGridBunykRayCastFunction object.
- Author:
- vtk2jbean Automatic JavaBean wrapper for VTK.
- See Also:
- Serialized Form
Field Summary |
protected java.beans.PropertyChangeSupport |
changes
|
Methods inherited from class vtk.vtkObject |
AddObserver, breakOnError, debugOff, debugOn, getDebug, getGlobalWarningDisplay, getMTime, getThisObject, globalWarningDisplayOff, globalWarningDisplayOn, hasObserver, hasObserver, invokeEvent, invokeEvent, modified, Print, PrintRevisions, register, removeObserver, removeObservers, removeObservers, setDebug, setGlobalWarningDisplay, unRegister |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
changes
protected java.beans.PropertyChangeSupport changes
vtkUnstructuredGridBunykRayCastFunction
public vtkUnstructuredGridBunykRayCastFunction()
vtkUnstructuredGridBunykRayCastFunction
protected vtkUnstructuredGridBunykRayCastFunction(int dmy)
getThisUnstructuredGridBunykRayCastFunction
public vtkUnstructuredGridBunykRayCastFunction getThisUnstructuredGridBunykRayCastFunction()
getClassName
public java.lang.String getClassName()
- Description copied from class:
vtkObjectBase
- Return the class name as a string. This method is defined
in all subclasses of vtkObjectBase with the vtkTypeRevisionMacro found
in vtkSetGet.h.
- Overrides:
getClassName
in class vtkUnstructuredGridVolumeRayCastFunction
isA
public int isA(java.lang.String id0)
- Description copied from class:
vtkObjectBase
- Return 1 if this class is the same type of (or a subclass of)
the named class. Returns 0 otherwise. This method works in
combination with vtkTypeRevisionMacro found in vtkSetGet.h.
- Overrides:
isA
in class vtkUnstructuredGridVolumeRayCastFunction
VTKInit
public void VTKInit()
- Overrides:
VTKInit
in class vtkObject
VTKCastInit
protected void VTKCastInit()
- Overrides:
VTKCastInit
in class vtkUnstructuredGridVolumeRayCastFunction
Copyright © 2004 Sydney ViSLAB. All Rights Reserved.