Go to the documentation of this file.
39 #ifndef vtkBoxRepresentation_h
40 #define vtkBoxRepresentation_h
42 #include "vtkInteractionWidgetsModule.h"
92 return this->Planes[i]; }
142 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
152 vtkGetObjectMacro(SelectedFaceProperty,
vtkProperty);
162 vtkGetObjectMacro(SelectedOutlineProperty,
vtkProperty);
170 void SetOutlineFaceWires(
int);
171 vtkGetMacro(OutlineFaceWires,
int);
182 void SetOutlineCursorWires(
int);
183 vtkGetMacro(OutlineCursorWires,
int);
193 virtual void HandlesOn();
194 virtual void HandlesOff();
207 void StartComplexInteraction(
210 unsigned long event,
void *calldata) override;
211 void ComplexInteraction(
214 unsigned long event,
void *calldata) override;
215 int ComputeComplexInteractionState(
218 unsigned long event,
void *calldata,
int modify = 0) override;
219 void EndComplexInteraction(
222 unsigned long event,
void *calldata) override;
229 void ReleaseGraphicsResources(
vtkWindow*) override;
231 int RenderTranslucentPolygonalGeometry(
vtkViewport*) override;
232 vtkTypeBool HasTranslucentPolygonalGeometry() override;
236 enum {Outside=0,MoveF0,MoveF1,MoveF2,MoveF3,MoveF4,MoveF5,
Translating,Rotating,Scaling};
247 void SetInteractionState(
int state);
254 vtkGetMacro(TwoPlaneMode,
bool);
255 void SetTwoPlaneMode(
bool);
263 vtkGetMacro(SnapToAxes,
bool);
264 vtkSetMacro(SnapToAxes,
bool);
286 double LastEventPosition[3];
287 double LastEventOrientation[4];
288 double StartEventOrientation[4];
289 double SnappedEventOrientations[3][4];
290 bool SnappedOrientation[3];
311 virtual void PositionHandles();
312 int HighlightHandle(
vtkProp *prop);
313 void HighlightFace(
int cellId);
314 void HighlightOutline(
int highlight);
315 virtual void ComputeNormals();
316 virtual void SizeHandles();
344 virtual void CreateDefaultProperties();
350 void GenerateOutline();
353 virtual void Translate(
double *p1,
double *p2);
354 virtual void Scale(
double *p1,
double *p2,
int X,
int Y);
355 virtual void Rotate(
int X,
int Y,
double *p1,
double *p2,
double *vpn);
356 void MovePlusXFace(
double *p1,
double *p2);
357 void MoveMinusXFace(
double *p1,
double *p2);
358 void MovePlusYFace(
double *p1,
double *p2);
359 void MoveMinusYFace(
double *p1,
double *p2);
360 void MovePlusZFace(
double *p1,
double *p2);
361 void MoveMinusZFace(
double *p1,
double *p2);
362 void UpdatePose(
double *p1,
double *d1,
double *p2,
double *d2);
374 void MoveFace(
double *p1,
double *p2,
double *
dir,
375 double *x1,
double *x2,
double *x3,
double *x4,
379 void GetDirection(
const double Nx[3],
const double Ny[3],
380 const double Nz[3],
double dir[3]);
map vtkPolyData to graphics primitives
represent and manipulate 3D points
perform various plane computations
vtkDoubleArray * PlaneNormals
vtkProperty * SelectedOutlineProperty
a class defining the representation for the vtkBoxWidget2
represent the position of a point in 3D space
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkPolyDataMapper * OutlineMapper
vtkPolyData * OutlinePolyData
vtkCellPicker * HexPicker
implicit function for convex set of planes
vtkPolyDataMapper ** HandleMapper
window superclass for vtkRenderWindow
#define VTK_SIZEHINT(...)
vtkPolyDataMapper * HexMapper
vtkPolyData * HexFacePolyData
vtkPolyDataMapper * HexFaceMapper
create a polygonal sphere centered at the origin
represents an object (geometry & properties) in a rendered scene
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
create a line defined by two end points
void OutlineFaceWiresOn()
platform-independent render window interaction including picking and frame rate control.
abstract specification for Viewports
vtkPolyData * HexPolyData
vtkPlane * GetUnderlyingPlane(int i)
abstract superclass for all actors, volumes and annotations
vtkProperty * FaceProperty
implicit function for a bounding box
void OutlineCursorWiresOff()
vtkProperty * SelectedFaceProperty
vtkSphereSource ** HandleGeometry
concrete dataset represents vertices, lines, polygons, and triangle strips
void OutlineCursorWiresOn()
dynamic, self-adjusting array of double
represent surface properties of a geometric object
vtkCellPicker * LastPicker
void OutlineFaceWiresOff()
ray-cast cell picker for all kinds of Prop3Ds
vtkProperty * HandleProperty
vtkProperty * OutlineProperty
vtkProperty * SelectedHandleProperty
vtkCellPicker * HandlePicker
Superclass for algorithms that produce only polydata as output.