38 #ifndef __vtkBoxRepresentation_h
39 #define __vtkBoxRepresentation_h
85 vtkSetMacro(InsideOut,
int);
86 vtkGetMacro(InsideOut,
int);
87 vtkBooleanMacro(InsideOut,
int);
118 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
125 vtkGetObjectMacro(SelectedFaceProperty,
vtkProperty);
132 vtkGetObjectMacro(SelectedOutlineProperty,
vtkProperty);
138 void SetOutlineFaceWires(
int);
139 vtkGetMacro(OutlineFaceWires,
int);
148 void SetOutlineCursorWires(
int);
149 vtkGetMacro(OutlineCursorWires,
int);
157 virtual void HandlesOn();
158 virtual void HandlesOff();
180 enum {Outside=0,MoveF0,MoveF1,MoveF2,MoveF3,MoveF4,MoveF5,
Translating,Rotating,Scaling};
190 void SetInteractionState(
int state);
197 double LastEventPosition[3];
215 virtual void PositionHandles();
216 int HighlightHandle(
vtkProp *prop);
217 void HighlightFace(
int cellId);
218 void HighlightOutline(
int highlight);
219 virtual void ComputeNormals();
220 virtual void SizeHandles();
248 virtual void CreateDefaultProperties();
254 void GenerateOutline();
257 virtual void Translate(
double *p1,
double *p2);
258 virtual void Scale(
double *p1,
double *p2,
int X,
int Y);
259 virtual void Rotate(
int X,
int Y,
double *p1,
double *p2,
double *vpn);
260 void MovePlusXFace(
double *p1,
double *p2);
261 void MoveMinusXFace(
double *p1,
double *p2);
262 void MovePlusYFace(
double *p1,
double *p2);
263 void MoveMinusYFace(
double *p1,
double *p2);
264 void MovePlusZFace(
double *p1,
double *p2);
265 void MoveMinusZFace(
double *p1,
double *p2);
274 void MoveFace(
double *p1,
double *p2,
double *
dir,
275 double *x1,
double *x2,
double *x3,
double *x4,
279 void GetDirection(
const double Nx[3],
const double Ny[3],
280 const double Nz[3],
double dir[3]);