|
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) |
Public Member Functions inherited from vtkPlanes | |
| 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) |
Public Member Functions inherited from vtkImplicitFunction | |
| 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) |
Public Member Functions inherited from vtkObject | |
| 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) |
Public Member Functions inherited from vtkObjectBase | |
| 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 Public Member Functions inherited from vtkPlanes | |
| static vtkPlanes * | New () |
| static int | IsTypeOf (const char *type) |
| static vtkPlanes * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkImplicitFunction | |
| static int | IsTypeOf (const char *type) |
| static vtkImplicitFunction * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
| 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 Public Member Functions inherited from vtkObjectBase | |
| static int | IsTypeOf (const char *name) |
| static vtkObjectBase * | New () |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| vtkPlanesIntersection () | |
| ~vtkPlanesIntersection () | |
Protected Member Functions inherited from vtkPlanes | |
| vtkPlanes () | |
| ~vtkPlanes () | |
Protected Member Functions inherited from vtkImplicitFunction | |
| vtkImplicitFunction () | |
| ~vtkImplicitFunction () | |
Protected Member Functions inherited from vtkObject | |
| vtkObject () | |
| virtual | ~vtkObject () |
| virtual void | RegisterInternal (vtkObjectBase *, int check) |
| virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
| 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 | |
Public Types inherited from vtkPlanes | |
| typedef vtkImplicitFunction | Superclass |
Public Types inherited from vtkImplicitFunction | |
| typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
| typedef vtkObjectBase | Superclass |
Protected Attributes inherited from vtkPlanes | |
| vtkPoints * | Points |
| vtkDataArray * | Normals |
| vtkPlane * | Plane |
Protected Attributes inherited from vtkImplicitFunction | |
| vtkAbstractTransform * | Transform |
| double | ReturnValue [3] |
Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
| 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 |
1.8.9.1