17 #ifndef vtkBoundedPlanePointPlacer_h
18 #define vtkBoundedPlanePointPlacer_h
20 #include "vtkInteractionWidgetsModule.h"
23 VTK_ABI_NAMESPACE_BEGIN
53 vtkGetMacro(ProjectionNormal,
int);
78 vtkGetObjectMacro(ObliquePlane,
vtkPlane);
89 void SetProjectionPosition(
double position);
90 vtkGetMacro(ProjectionPosition,
double);
102 void AddBoundingPlane(
vtkPlane* plane);
103 void RemoveBoundingPlane(
vtkPlane* plane);
104 void RemoveAllBoundingPlanes();
107 void SetBoundingPlanes(
vtkPlanes* planes);
133 vtkRenderer* ren,
double displayPos[2],
double worldPos[3],
double worldOrient[9])
override;
142 double worldPos[3],
double worldOrient[9])
override;
189 void GetProjectionNormal(
double normal[3]);
193 void GetProjectionOrigin(
double origin[3]);
197 void GetCurrentOrientation(
double worldOrient[9]);
202 static double GetDistanceFromObject(
double pos[3],
vtkPlaneCollection* pc,
double closestPt[3]);
209 VTK_ABI_NAMESPACE_END
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.