36 #ifndef vtkBoxRepresentation_h 37 #define vtkBoxRepresentation_h 39 #include "vtkInteractionWidgetsModule.h" 133 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
143 vtkGetObjectMacro(SelectedFaceProperty,
vtkProperty);
153 vtkGetObjectMacro(SelectedOutlineProperty,
vtkProperty);
161 void SetOutlineFaceWires(
int);
162 vtkGetMacro(OutlineFaceWires,
int);
173 void SetOutlineCursorWires(
int);
174 vtkGetMacro(OutlineCursorWires,
int);
184 virtual void HandlesOn();
185 virtual void HandlesOff();
204 void ReleaseGraphicsResources(
vtkWindow*) override;
206 int RenderTranslucentPolygonalGeometry(
vtkViewport*) override;
207 int HasTranslucentPolygonalGeometry() override;
211 enum {Outside=0,MoveF0,MoveF1,MoveF2,MoveF3,MoveF4,MoveF5,
Translating,Rotating,Scaling};
222 void SetInteractionState(
int state);
229 double LastEventPosition[3];
247 virtual void PositionHandles();
248 int HighlightHandle(
vtkProp *prop);
249 void HighlightFace(
int cellId);
250 void HighlightOutline(
int highlight);
251 virtual void ComputeNormals();
252 virtual void SizeHandles();
283 virtual void CreateDefaultProperties();
289 void GenerateOutline();
292 virtual void Translate(
double *p1,
double *p2);
293 virtual void Scale(
double *p1,
double *p2,
int X,
int Y);
294 virtual void Rotate(
int X,
int Y,
double *p1,
double *p2,
double *vpn);
295 void MovePlusXFace(
double *p1,
double *p2);
296 void MoveMinusXFace(
double *p1,
double *p2);
297 void MovePlusYFace(
double *p1,
double *p2);
298 void MoveMinusYFace(
double *p1,
double *p2);
299 void MovePlusZFace(
double *p1,
double *p2);
300 void MoveMinusZFace(
double *p1,
double *p2);
309 void MoveFace(
double *p1,
double *p2,
double *
dir,
310 double *x1,
double *x2,
double *x3,
double *x4,
314 void GetDirection(
const double Nx[3],
const double Ny[3],
315 const double Nz[3],
double dir[3]);
vtkProperty * SelectedHandleProperty
abstract superclass for all actors, volumes and annotations
vtkPolyData * OutlinePolyData
vtkPolyDataMapper * HexMapper
represents an object (geometry & properties) in a rendered scene
represent and manipulate 4x4 transformation matrices
represent the position of a point in 3D space
abstract specification for Viewports
represent surface properties of a geometric object
implicit function for convex set of planes
a class defining the representation for the vtkBoxWidget2
vtkProperty * SelectedFaceProperty
vtkProperty * OutlineProperty
concrete dataset represents vertices, lines, polygons, and triangle strips
dynamic, self-adjusting array of double
window superclass for vtkRenderWindow
create a polygonal sphere centered at the origin
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
vtkCellPicker * HexPicker
vtkPolyDataMapper ** HandleMapper
vtkPolyDataMapper * HexFaceMapper
vtkSphereSource ** HandleGeometry
#define VTK_SIZEHINT(...)
vtkPolyData * HexFacePolyData
vtkProperty * SelectedOutlineProperty
create a line defined by two end points
map vtkPolyData to graphics primitives
vtkProperty * FaceProperty
vtkProperty * HandleProperty
void OutlineFaceWiresOn()
Control the representation of the outline.
void OutlineCursorWiresOff()
Control the representation of the outline.
ray-cast cell picker for all kinds of Prop3Ds
vtkDoubleArray * PlaneNormals
void OutlineCursorWiresOn()
Control the representation of the outline.
vtkCellPicker * LastPicker
vtkCellPicker * HandlePicker
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
implicit function for a bounding box
void OutlineFaceWiresOff()
Control the representation of the outline.
represent and manipulate 3D points
vtkPolyData * HexPolyData
vtkPolyDataMapper * OutlineMapper