VTK
|
A vtkPlanesIntersection object is a vtkPlanes object that can compute whether the arbitrary convex region bounded by it's planes intersects an axis-aligned box. More...
#include <vtkPlanesIntersection.h>
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkPlanesIntersection * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetRegionVertices (vtkPoints *pts) |
void | SetRegionVertices (double *v, int nvertices) |
int | GetNumRegionVertices () |
int | GetRegionVertices (double *v, int nvertices) |
int | IntersectsRegion (vtkPoints *R) |
![]() | |
vtkPlanes * | NewInstance () const |
void | EvaluateGradient (double x[3], double n[3]) |
void | SetFrustumPlanes (double planes[24]) |
int | GetNumberOfPlanes () |
double | EvaluateFunction (double x[3]) |
double | EvaluateFunction (double x, double y, double z) |
virtual void | SetPoints (vtkPoints *) |
virtual vtkPoints * | GetPoints () |
void | SetNormals (vtkDataArray *normals) |
virtual vtkDataArray * | GetNormals () |
void | SetBounds (const double bounds[6]) |
void | SetBounds (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) |
vtkPlane * | GetPlane (int i) |
void | GetPlane (int i, vtkPlane *plane) |
![]() | |
vtkImplicitFunction * | NewInstance () const |
unsigned long | GetMTime () |
double | FunctionValue (const double x[3]) |
double | FunctionValue (double x, double y, double z) |
void | FunctionGradient (const double x[3], double g[3]) |
double * | FunctionGradient (const double x[3]) |
double * | FunctionGradient (double x, double y, double z) |
virtual void | SetTransform (vtkAbstractTransform *) |
virtual void | SetTransform (const double elements[16]) |
virtual vtkAbstractTransform * | GetTransform () |
double | EvaluateFunction (double x, double y, double z) |
![]() | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
bool | GetDebug () |
void | SetDebug (bool debugFlag) |
virtual void | Modified () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
![]() | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkPlanesIntersection * | SafeDownCast (vtkObjectBase *o) |
static vtkPlanesIntersection * | New () |
static int | PolygonIntersectsBBox (double bounds[6], vtkPoints *pts) |
static vtkPlanesIntersection * | Convert3DCell (vtkCell *cell) |
![]() | |
static vtkPlanes * | New () |
static int | IsTypeOf (const char *type) |
static vtkPlanes * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkImplicitFunction * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
![]() | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkPlanesIntersection () | |
~vtkPlanesIntersection () | |
![]() | |
vtkPlanes () | |
~vtkPlanes () | |
![]() | |
vtkImplicitFunction () | |
~vtkImplicitFunction () | |
![]() | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Static Protected Member Functions | |
static void | ComputeNormal (double *p1, double *p2, double *p3, double normal[3]) |
static double | EvaluatePlaneEquation (double *x, double *p) |
static void | PlaneEquation (double *n, double *x, double *p) |
static int | GoodNormal (double *n) |
static int | Invert3x3 (double M[3][3]) |
Additional Inherited Members | |
![]() | |
typedef vtkImplicitFunction | Superclass |
![]() | |
typedef vtkObject | Superclass |
![]() | |
typedef vtkObjectBase | Superclass |
![]() | |
vtkPoints * | Points |
vtkDataArray * | Normals |
vtkPlane * | Plane |
![]() | |
vtkAbstractTransform * | Transform |
double | ReturnValue [3] |
![]() | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
![]() | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
A vtkPlanesIntersection object is a vtkPlanes object that can compute whether the arbitrary convex region bounded by it's planes intersects an axis-aligned box.
A subclass of vtkPlanes, this class determines whether it intersects an axis aligned box. This is motivated by the need to intersect the axis aligned region of a spacial decomposition of volume data with various other regions. It uses the algorithm from Graphics Gems IV, page 81.
Definition at line 51 of file vtkPlanesIntersection.h.
|
protected |
|
protected |
|
static |
|
virtual |
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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkPlanes.
|
static |
|
protectedvirtual |
Reimplemented from vtkPlanes.
vtkPlanesIntersection* vtkPlanesIntersection::NewInstance | ( | ) | const |
|
virtual |
|
static |
void vtkPlanesIntersection::SetRegionVertices | ( | vtkPoints * | pts | ) |
It helps if you know the vertices of the convex region. If you don't, we will calculate them. Region vertices are 3-tuples.
int vtkPlanesIntersection::GetNumRegionVertices | ( | ) |
Return 1 if the axis aligned box defined by R intersects the region defined by the planes, or 0 otherwise.
|
static |
A convenience function provided by this class, returns 1 if the polygon defined in pts intersects the bounding box defined in bounds, 0 otherwise. The points must define a planar polygon.
|
static |
Another convenience function provided by this class, returns the vtkPlanesIntersection object representing a 3D cell. The point IDs for each face must be given in counter-clockwise order from the outside of the cell.
|
staticprotected |
|
staticprotected |
|
staticprotected |