 |
VTK
9.1.0
|
Go to the documentation of this file.
55 #ifndef vtkBoxRepresentation_h
56 #define vtkBoxRepresentation_h
58 #include "vtkInteractionWidgetsModule.h"
185 vtkGetMacro(OutlineFaceWires,
int);
197 vtkGetMacro(OutlineCursorWires,
int);
222 unsigned long event,
void* calldata) override;
224 unsigned long event,
void* calldata) override;
226 unsigned long event,
void* calldata,
int modify = 0) override;
228 unsigned long event,
void* calldata) override;
272 vtkGetMacro(TwoPlaneMode,
bool);
281 vtkGetMacro(SnapToAxes,
bool);
282 vtkSetMacro(SnapToAxes,
bool);
304 vtkGetMacro(TranslationAxis,
int);
305 vtkSetClampMacro(TranslationAxis,
int, -1, 2);
330 double LastEventPosition[3];
331 double LastEventOrientation[4];
332 double StartEventOrientation[4];
333 double SnappedEventOrientations[3][4];
334 bool SnappedOrientation[3];
400 virtual void Translate(
const double* p1,
const double* p2);
401 virtual void Scale(
const double* p1,
const double* p2,
int X,
int Y);
402 virtual void Rotate(
int X,
int Y,
const double* p1,
const double* p2,
const double* vpn);
409 void UpdatePose(
const double* p1,
const double* d1,
const double* p2,
const double* d2);
421 void MoveFace(
const double* p1,
const double* p2,
const double*
dir,
double* x1,
double* x2,
422 double* x3,
double* x4,
double* x5);
425 void GetDirection(
const double Nx[3],
const double Ny[3],
const double Nz[3],
double dir[3]);
map vtkPolyData to graphics primitives
represent and manipulate 3D points
virtual void HandlesOff()
Switches handles (the spheres) on or off by manipulating the underlying actor visibility.
perform various plane computations
void PlaceWidget(double bounds[6]) override
These are methods that satisfy vtkWidgetRepresentation's API.
double * GetBounds() override
These are methods that satisfy vtkWidgetRepresentation's API.
void MoveMinusYFace(const double *p1, const double *p2)
vtkDoubleArray * PlaneNormals
void MovePlusXFace(const double *p1, const double *p2)
void GetDirection(const double Nx[3], const double Ny[3], const double Nz[3], double dir[3])
void MoveFace(const double *p1, const double *p2, const double *dir, double *x1, double *x2, double *x3, double *x4, double *x5)
vtkProperty * SelectedOutlineProperty
void MoveMinusZFace(const double *p1, const double *p2)
a class defining the representation for the vtkBoxWidget2
void BuildRepresentation() override
These are methods that satisfy vtkWidgetRepresentation's API.
void SetYTranslationAxisOn()
Toggles constraint translation axis on/off.
represent the position of a point in 3D space
void HighlightFace(int cellId)
vtkPolyDataMapper * OutlineMapper
void GetPolyData(vtkPolyData *pd)
Grab the polydata (including points) that define the box widget.
vtkPolyData * OutlinePolyData
virtual void Translate(const double *p1, const double *p2)
void UpdatePose(const double *p1, const double *d1, const double *p2, const double *d2)
int ComputeInteractionState(int X, int Y, int modify=0) override
These are methods that satisfy vtkWidgetRepresentation's API.
void SetTranslationAxisOff()
Toggles constraint translation axis on/off.
vtkCellPicker * HexPicker
implicit function for convex set of planes
vtkPolyDataMapper ** HandleMapper
window superclass for vtkRenderWindow
void StepForward()
For complex events should we snap orientations to be aligned with the x y z axes.
virtual void HandlesOn()
Switches handles (the spheres) on or off by manipulating the underlying actor visibility.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for the class.
void RegisterPickers() override
Register internal Pickers in the Picking Manager.
#define VTK_SIZEHINT(...)
vtkPolyDataMapper * HexMapper
vtkPolyData * HexFacePolyData
vtkPolyDataMapper * HexFaceMapper
create a polygonal sphere centered at the origin
virtual void Scale(const double *p1, const double *p2, int X, int Y)
void SetZTranslationAxisOn()
Toggles constraint translation axis on/off.
void HighlightOutline(int highlight)
represents an object (geometry & properties) in a rendered scene
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
virtual void GetTransform(vtkTransform *t)
Retrieve a linear transform characterizing the transformation of the box.
create a line defined by two end points
void OutlineFaceWiresOn()
Control the representation of the outline.
platform-independent render window interaction including picking and frame rate control.
void WidgetInteraction(double e[2]) override
These are methods that satisfy vtkWidgetRepresentation's API.
abstract specification for Viewports
void SetXTranslationAxisOn()
Toggles constraint translation axis on/off.
virtual void CreateDefaultProperties()
virtual void Rotate(int X, int Y, const double *p1, const double *p2, const double *vpn)
vtkPolyData * HexPolyData
vtkPlane * GetUnderlyingPlane(int i)
virtual void ComputeNormals()
void MovePlusZFace(const double *p1, const double *p2)
static vtkBoxRepresentation * New()
Instantiate the class.
abstract superclass for all actors, volumes and annotations
int HighlightHandle(vtkProp *prop)
vtkProperty * FaceProperty
implicit function for a bounding box
virtual void SizeHandles()
void OutlineCursorWiresOff()
Control the representation of the outline.
vtkProperty * SelectedFaceProperty
vtkSphereSource ** HandleGeometry
void GetPlanes(vtkPlanes *planes)
Get the planes describing the implicit function defined by the box widget.
concrete dataset represents vertices, lines, polygons, and triangle strips
bool IsTranslationConstrained()
Returns true if ContrainedAxis.
void OutlineCursorWiresOn()
Control the representation of the outline.
void MovePlusYFace(const double *p1, const double *p2)
void SetOutlineCursorWires(int)
Control the representation of the outline.
virtual void PositionHandles()
void SetInteractionState(int state)
The interaction state may be set from a widget (e.g., vtkBoxWidget2) or other object.
void MoveMinusXFace(const double *p1, const double *p2)
dynamic, self-adjusting array of double
represent surface properties of a geometric object
vtkCellPicker * LastPicker
virtual void SetTransform(vtkTransform *t)
Set the position, scale and orientation of the box widget using the transform specified.
~vtkBoxRepresentation() override
void SetTwoPlaneMode(bool)
In two plane mode only the X planes are shown this is useful for defining thick slabs.
void OutlineFaceWiresOff()
Control the representation of the outline.
ray-cast cell picker for all kinds of Prop3Ds
vtkProperty * HandleProperty
vtkProperty * OutlineProperty
void SetOutlineFaceWires(int)
Control the representation of the outline.
void StartWidgetInteraction(double e[2]) override
These are methods that satisfy vtkWidgetRepresentation's API.
vtkProperty * SelectedHandleProperty
vtkCellPicker * HandlePicker
void StepBackward()
For complex events should we snap orientations to be aligned with the x y z axes.
Superclass for algorithms that produce only polydata as output.