26 #ifndef vtkBoundedPlanePointPlacer_h 27 #define vtkBoundedPlanePointPlacer_h 29 #include "vtkInteractionWidgetsModule.h" 61 vtkGetMacro(ProjectionNormal,
int);
86 vtkGetObjectMacro(ObliquePlane,
vtkPlane);
97 void SetProjectionPosition(
double position);
98 vtkGetMacro(ProjectionPosition,
double);
110 void AddBoundingPlane(
vtkPlane* plane);
111 void RemoveBoundingPlane(
vtkPlane* plane);
112 void RemoveAllBoundingPlanes();
115 void SetBoundingPlanes(
vtkPlanes* planes);
141 vtkRenderer* ren,
double displayPos[2],
double worldPos[3],
double worldOrient[9])
override;
150 double worldPos[3],
double worldOrient[9])
override;
197 void GetProjectionNormal(
double normal[3]);
201 void GetProjectionOrigin(
double origin[3]);
205 void GetCurrentOrientation(
double worldOrient[9]);
210 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.