59 #ifndef vtkSphereWidget_h
60 #define vtkSphereWidget_h
63 #include "vtkInteractionWidgetsModule.h"
75 #define VTK_SPHERE_OFF 0
76 #define VTK_SPHERE_WIREFRAME 1
77 #define VTK_SPHERE_SURFACE 2
96 void PlaceWidget()
override { this->Superclass::PlaceWidget(); }
98 double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax)
override
100 this->Superclass::PlaceWidget(xmin, xmax, ymin, ymax, zmin, zmax);
111 vtkGetMacro(Representation,
int);
141 this->SphereSource->SetRadius(r);
143 double GetRadius() {
return this->SphereSource->GetRadius(); }
150 void SetCenter(
double x,
double y,
double z) { this->SphereSource->SetCenter(x, y, z); }
153 void GetCenter(
double xyz[3]) { this->SphereSource->GetCenter(xyz); }
187 vtkSetVector3Macro(HandleDirection,
double);
188 vtkGetVector3Macro(HandleDirection,
double);
195 vtkGetVector3Macro(HandlePosition,
double);
221 vtkGetObjectMacro(SelectedSphereProperty,
vtkProperty);
231 vtkGetObjectMacro(SelectedHandleProperty,
vtkProperty);
251 vtkObject*
object,
unsigned long event,
void* clientdata,
void* calldata);
254 void OnLeftButtonDown();
255 void OnLeftButtonUp();
256 void OnRightButtonDown();
257 void OnRightButtonUp();
264 void HighlightSphere(
int highlight);
265 void SelectRepresentation();
279 void Translate(
double* p1,
double* p2);
280 void ScaleSphere(
double* p1,
double* p2,
int X,
int Y);
281 void MoveHandle(
double* p1,
double* p2,
int X,
int Y);
290 void CreateDefaultProperties();
296 void HighlightHandle(
int);
298 double HandleDirection[3];
299 double HandlePosition[3];
represents an object (geometry & properties) in a rendered scene
abstract base class for most VTK objects
represent surface properties of a geometric object
static void ProcessEvents(vtkObject *object, unsigned long event, void *clientdata, void *calldata)
Handles the char widget activation event.
virtual void SetEnabled(int)
Methods for turning the interactor observer on and off, and determining its state.
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void RegisterPickers()
Register internal Pickers in the Picking Manager.
create a polygonal sphere centered at the origin
implicit function for a sphere
a simple class to control print indentation
#define VTK_SIZEHINT(...)
map vtkPolyData to graphics primitives
ray-cast cell picker for all kinds of Prop3Ds
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
represent and manipulate 3D points