29 #ifndef vtkBoundedPlanePointPlacer_h
30 #define vtkBoundedPlanePointPlacer_h
32 #include "vtkInteractionWidgetsModule.h"
64 vtkGetMacro(ProjectionNormal,
int);
89 vtkGetObjectMacro(ObliquePlane,
vtkPlane);
100 void SetProjectionPosition(
double position);
101 vtkGetMacro(ProjectionPosition,
double);
113 void AddBoundingPlane(
vtkPlane* plane);
114 void RemoveBoundingPlane(
vtkPlane* plane);
115 void RemoveAllBoundingPlanes();
118 void SetBoundingPlanes(
vtkPlanes* planes);
144 vtkRenderer* ren,
double displayPos[2],
double worldPos[3],
double worldOrient[9])
override;
153 double worldPos[3],
double worldOrient[9])
override;
200 void GetProjectionNormal(
double normal[3]);
204 void GetProjectionOrigin(
double origin[3]);
208 void GetCurrentOrientation(
double worldOrient[9]);
213 static double GetDistanceFromObject(
double pos[3],
vtkPlaneCollection* pc,
double closestPt[3]);
virtual int ComputeWorldPosition(vtkRenderer *ren, double displayPos[2], double worldPos[3], double worldOrient[9])
Given a renderer and a display position in pixel coordinates, compute the world position and orientat...
void SetProjectionNormalToXAxis()
Set the projection normal to lie along the x, y, or z axis, or to be oblique.
double ProjectionPosition
maintain a list of planes
implicit function for convex set of planes
abstract specification for renderers
a placer that constrains a handle to a finite plane
void SetProjectionNormalToZAxis()
Set the projection normal to lie along the x, y, or z axis, or to be oblique.
a simple class to control print indentation
Abstract interface to translate 2D display positions to world coordinates.
perform various plane computations
void SetProjectionNormalToOblique()
Set the projection normal to lie along the x, y, or z axis, or to be oblique.
virtual int UpdateWorldPosition(vtkRenderer *ren, double worldPos[3], double worldOrient[9])
Given a current renderer, world position and orientation, update them according to the constraints of...
virtual int ValidateWorldPosition(double worldPos[3])
Given a world position check the validity of this position according to the constraints of the placer...
static vtkPointPlacer * New()
Instantiate this class.
void SetProjectionNormalToYAxis()
Set the projection normal to lie along the x, y, or z axis, or to be oblique.
vtkPlaneCollection * BoundingPlanes
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instances of this class.