40 #ifndef vtkConstrainedPointHandleRepresentation_h
41 #define vtkConstrainedPointHandleRepresentation_h
44 #include "vtkInteractionWidgetsModule.h"
93 void SetActiveCursorShape(
vtkPolyData* activeShape);
105 vtkGetMacro(ProjectionNormal,
int);
131 vtkGetObjectMacro(ObliquePlane,
vtkPlane);
142 void SetProjectionPosition(
double position);
143 vtkGetMacro(ProjectionPosition,
double);
155 void AddBoundingPlane(
vtkPlane* plane);
156 void RemoveBoundingPlane(
vtkPlane* plane);
157 void RemoveAllBoundingPlanes();
160 void SetBoundingPlanes(
vtkPlanes* planes);
176 void SetPosition(
double x,
double y,
double z);
177 void SetPosition(
double xyz[3]);
178 double* GetPosition();
179 void GetPosition(
double xyz[3]);
262 double LastPickPosition[3];
263 double LastEventPosition[2];
266 void Translate(
const double* eventPos)
override;
267 void Scale(
const double* eventPos);
274 void CreateDefaultProperties();
285 int GetIntersectionPosition(
const double eventPos[2],
double worldPos[3],
double tolerance = 0.0,
289 void GetProjectionNormal(
double normal[3]);
293 void GetProjectionOrigin(
double origin[3]);
297 double InteractionOffset[2];
abstract superclass for all actors, volumes and annotations
represents an object (geometry & properties) in a rendered scene
void SetProjectionNormalToOblique()
abstract class for representing widget handles
vtkProperty * SelectedProperty
abstract specification for Viewports
void SetProjectionNormalToZAxis()
represent surface properties of a geometric object
vtkPolyData * CursorShape
maintain a list of planes
implicit function for convex set of planes
abstract specification for renderers
concrete dataset represents vertices, lines, polygons, and triangle strips
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instances of this class.
vtkPolyData * ActiveCursorShape
vtkPolyDataMapper * Mapper
window superclass for vtkRenderWindow
vtkProperty * ActiveProperty
virtual int CheckConstraint(vtkRenderer *renderer, double pos[2])
Method has to be overridden in the subclasses which has constraints on placing the handle (Ex...
a simple class to control print indentation
copy oriented and scaled glyph geometry to every input point
perform various plane computations
void SetProjectionNormalToYAxis()
vtkPlaneCollection * BoundingPlanes
double ProjectionPosition
map vtkPolyData to graphics primitives
void ShallowCopy(vtkProp *prop) override
Methods to make this class properly act like a vtkWidgetRepresentation.
void SetProjectionNormalToXAxis()
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual void Translate(const double *p1, const double *p2)
Translates world position by vector p1p2 projected on the constraint axis if any. ...
void SetRenderer(vtkRenderer *ren) override
Methods to make this class properly act like a vtkWidgetRepresentation.
point representation constrained to a 2D plane
virtual void SetDisplayPosition(double pos[3])
Handles usually have their coordinates set in display coordinates (generally by an associated widget)...
represent and manipulate 3D points