Go to the documentation of this file.
29 #ifndef vtkBoundedPlanePointPlacer_h
30 #define vtkBoundedPlanePointPlacer_h
32 #include "vtkInteractionWidgetsModule.h"
63 vtkSetClampMacro(ProjectionNormal,
int,
66 vtkGetMacro(ProjectionNormal,
int);
95 vtkGetMacro(ProjectionPosition,
double);
138 double displayPos[2],
140 double worldOrient[9] );
149 double displayPos[2],
150 double refWorldPos[3],
152 double worldOrient[9] );
165 double worldOrient[9]);
177 double worldOrient[9] );
218 double closestPt[3]);
perform various plane computations
a placer that constrains a handle to a finite plane
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
double ProjectionPosition
vtkPlaneCollection * BoundingPlanes
Abstract interface to translate 2D display positions to world coordinates.
~vtkBoundedPlanePointPlacer()
void RemoveBoundingPlane(vtkPlane *plane)
vtkBoundedPlanePointPlacer()
void SetProjectionNormalToOblique()
int ValidateWorldPosition(double worldPos[3], double worldOrient[9])
Given a world position and a world orientation, validate it according to the constraints of the place...
static double GetDistanceFromObject(double pos[3], vtkPlaneCollection *pc, double closestPt[3])
implicit function for convex set of planes
void SetBoundingPlanes(vtkPlanes *planes)
void RemoveAllBoundingPlanes()
void SetProjectionPosition(double position)
The position of the bounding plane from the origin along the normal.
virtual void SetBoundingPlanes(vtkPlaneCollection *)
void SetProjectionNormalToXAxis()
a simple class to control print indentation
void GetProjectionOrigin(double origin[3])
virtual int UpdateWorldPosition(vtkRenderer *ren, double worldPos[3], double worldOrient[9])
If the constraints on this placer are changed, then this method will be called by the representation ...
static vtkBoundedPlanePointPlacer * New()
Instantiate this class.
virtual int ComputeWorldPosition(vtkRenderer *ren, double displayPos[2], double refWorldPos[3], double worldPos[3], double worldOrient[9])
Given a renderer, a display position, and a reference world position, compute the new world position ...
void GetCurrentOrientation(double worldOrient[9])
void SetObliquePlane(vtkPlane *)
If the ProjectionNormal is set to Oblique, then this is the oblique plane used to constrain the handl...
abstract specification for renderers
void GetProjectionNormal(double normal[3])
void SetProjectionNormalToZAxis()
void SetProjectionNormalToYAxis()
void AddBoundingPlane(vtkPlane *plane)
A collection of plane equations used to bound the position of the point.
int ComputeWorldPosition(vtkRenderer *ren, double displayPos[2], double worldPos[3], double worldOrient[9])
Given a renderer and a display position, compute the world position and world orientation for this po...
maintain a list of planes
int ValidateWorldPosition(double worldPos[3])
Give a world position check if it is valid - does it lie on the plane and within the bounds?...