VTK
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkClosedSurfacePointPlacer Class Reference

PointPlacer to constrain validity within a set of convex planes. More...

#include <vtkClosedSurfacePointPlacer.h>

Inheritance diagram for vtkClosedSurfacePointPlacer:
[legend]
Collaboration diagram for vtkClosedSurfacePointPlacer:
[legend]

Public Member Functions

int ValidateWorldPosition (double worldPos[3])
 
int ValidateWorldPosition (double worldPos[3], double worldOrient[9])
 
virtual void SetMinimumDistance (double)
 
virtual double GetMinimumDistance ()
 
void AddBoundingPlane (vtkPlane *plane)
 
void RemoveBoundingPlane (vtkPlane *plane)
 
void RemoveAllBoundingPlanes ()
 
virtual void SetBoundingPlanes (vtkPlaneCollection *)
 
virtual vtkPlaneCollectionGetBoundingPlanes ()
 
void SetBoundingPlanes (vtkPlanes *planes)
 
int ComputeWorldPosition (vtkRenderer *ren, double displayPos[2], double worldPos[3], double worldOrient[9])
 
int ComputeWorldPosition (vtkRenderer *ren, double displayPos[2], double refWorldPos[2], double worldPos[3], double worldOrient[9])
 
- Public Member Functions inherited from vtkPointPlacer
virtual int ValidateDisplayPosition (vtkRenderer *, double displayPos[2])
 
virtual int UpdateInternalState ()
 
virtual int ComputeWorldPosition (vtkRenderer *ren, double displayPos[2], double refWorldPos[3], double worldPos[3], double worldOrient[9])
 
virtual int UpdateWorldPosition (vtkRenderer *ren, double worldPos[3], double worldOrient[9])
 
virtual int UpdateNodeWorldPosition (double worldPos[3], vtkIdType nodePointId)
 
virtual void SetPixelTolerance (int)
 
virtual int GetPixelTolerance ()
 
virtual void SetWorldTolerance (double)
 
virtual double GetWorldTolerance ()
 
vtkPointPlacerNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual unsigned long GetMTime ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (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 vtkClosedSurfacePointPlacerNew ()
 
- Static Public Member Functions inherited from vtkPointPlacer
static vtkPointPlacerNew ()
 
static int IsTypeOf (const char *type)
 
static vtkPointPlacerSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
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 vtkObjectBaseNew ()
 

Protected Member Functions

 vtkClosedSurfacePointPlacer ()
 
 ~vtkClosedSurfacePointPlacer ()
 
void BuildPlanes ()
 
- Protected Member Functions inherited from vtkPointPlacer
 vtkPointPlacer ()
 
 ~vtkPointPlacer ()
 
- 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 double GetDistanceFromObject (double pos[3], vtkPlaneCollection *pc, double closestPt[3])
 

Protected Attributes

vtkPlaneCollectionBoundingPlanes
 
double MinimumDistance
 
vtkPlaneCollectionInnerBoundingPlanes
 
- Protected Attributes inherited from vtkPointPlacer
int PixelTolerance
 
double WorldTolerance
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 
typedef vtkPointPlacer Superclass
 
static int IsTypeOf (const char *type)
 
static vtkClosedSurfacePointPlacerSafeDownCast (vtkObjectBase *o)
 
virtual int IsA (const char *type)
 
vtkClosedSurfacePointPlacerNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkObjectBaseNewInstanceInternal () const
 

Additional Inherited Members

- Public Types inherited from vtkPointPlacer
typedef vtkObject Superclass
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Detailed Description

PointPlacer to constrain validity within a set of convex planes.

This placer takes a set of boudning planes and constraints the validity within the supplied convex planes. It is used by the ParallelopPipedRepresentation to place constraints on the motion the handles within the parallelopiped.

See also
vtkParallelopipedRepresentation

Definition at line 38 of file vtkClosedSurfacePointPlacer.h.

Member Typedef Documentation

Standard methods for instances of this class.

Definition at line 46 of file vtkClosedSurfacePointPlacer.h.

Constructor & Destructor Documentation

vtkClosedSurfacePointPlacer::vtkClosedSurfacePointPlacer ( )
protected
vtkClosedSurfacePointPlacer::~vtkClosedSurfacePointPlacer ( )
protected

Member Function Documentation

static vtkClosedSurfacePointPlacer* vtkClosedSurfacePointPlacer::New ( )
static

Instantiate this class.

static int vtkClosedSurfacePointPlacer::IsTypeOf ( const char *  type)
static

Standard methods for instances of this class.

virtual int vtkClosedSurfacePointPlacer::IsA ( const char *  type)
virtual

Standard methods for instances of this class.

Reimplemented from vtkPointPlacer.

static vtkClosedSurfacePointPlacer* vtkClosedSurfacePointPlacer::SafeDownCast ( vtkObjectBase o)
static

Standard methods for instances of this class.

virtual vtkObjectBase* vtkClosedSurfacePointPlacer::NewInstanceInternal ( ) const
protectedvirtual

Standard methods for instances of this class.

Reimplemented from vtkPointPlacer.

vtkClosedSurfacePointPlacer* vtkClosedSurfacePointPlacer::NewInstance ( ) const

Standard methods for instances of this class.

void vtkClosedSurfacePointPlacer::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Standard methods for instances of this class.

Reimplemented from vtkObject.

void vtkClosedSurfacePointPlacer::AddBoundingPlane ( vtkPlane plane)

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

void vtkClosedSurfacePointPlacer::RemoveBoundingPlane ( vtkPlane plane)

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

void vtkClosedSurfacePointPlacer::RemoveAllBoundingPlanes ( )

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

virtual void vtkClosedSurfacePointPlacer::SetBoundingPlanes ( vtkPlaneCollection )
virtual

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

virtual vtkPlaneCollection* vtkClosedSurfacePointPlacer::GetBoundingPlanes ( )
virtual

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

void vtkClosedSurfacePointPlacer::SetBoundingPlanes ( vtkPlanes planes)

A collection of plane equations used to bound the position of the point. This is in addition to confining the point to a plane - these constraints are meant to, for example, keep a point within the extent of an image. Using a set of plane equations allows for more complex bounds (such as bounding a point to an oblique reliced image that has hexagonal shape) than a simple extent.

int vtkClosedSurfacePointPlacer::ComputeWorldPosition ( vtkRenderer ren,
double  displayPos[2],
double  worldPos[3],
double  worldOrient[9] 
)
virtual

Given a renderer and a display position, compute the world position and world orientation for this point. A plane is defined by a combination of the ProjectionNormal, ProjectionOrigin, and ObliquePlane ivars. The display position is projected onto this plane to determine a world position, and the orientation is set to the normal of the plane. If the point cannot project onto the plane or if it falls outside the bounds imposed by the BoundingPlanes, then 0 is returned, otherwise 1 is returned to indicate a valid return position and orientation.

Reimplemented from vtkPointPlacer.

int vtkClosedSurfacePointPlacer::ComputeWorldPosition ( vtkRenderer ren,
double  displayPos[2],
double  refWorldPos[2],
double  worldPos[3],
double  worldOrient[9] 
)

Given a renderer, a display position and a reference position, "worldPos" is calculated as : Consider the line "L" that passes through the supplied "displayPos" and is parallel to the direction of projection of the camera. Clip this line segment with the parallelopiped, let's call it "L_segment". The computed world position, "worldPos" will be the point on "L_segment" that is closest to refWorldPos. NOTE: Note that a set of bounding planes must be supplied. The Oblique plane, if supplied is ignored.

int vtkClosedSurfacePointPlacer::ValidateWorldPosition ( double  worldPos[3])
virtual

Give a world position check if it is valid - does it lie on the plane and within the bounds? Returns 1 if it is valid, 0 otherwise.

Reimplemented from vtkPointPlacer.

int vtkClosedSurfacePointPlacer::ValidateWorldPosition ( double  worldPos[3],
double  worldOrient[9] 
)
virtual

Given a world position and a world orientation, validate it according to the constraints of the placer.

Reimplemented from vtkPointPlacer.

virtual void vtkClosedSurfacePointPlacer::SetMinimumDistance ( double  )
virtual
virtual double vtkClosedSurfacePointPlacer::GetMinimumDistance ( )
virtual
static double vtkClosedSurfacePointPlacer::GetDistanceFromObject ( double  pos[3],
vtkPlaneCollection pc,
double  closestPt[3] 
)
staticprotected
void vtkClosedSurfacePointPlacer::BuildPlanes ( )
protected

Member Data Documentation

vtkPlaneCollection* vtkClosedSurfacePointPlacer::BoundingPlanes
protected

Definition at line 119 of file vtkClosedSurfacePointPlacer.h.

double vtkClosedSurfacePointPlacer::MinimumDistance
protected

Definition at line 130 of file vtkClosedSurfacePointPlacer.h.

vtkPlaneCollection* vtkClosedSurfacePointPlacer::InnerBoundingPlanes
protected

Definition at line 131 of file vtkClosedSurfacePointPlacer.h.


The documentation for this class was generated from the following file: