Go to the documentation of this file.
49 #ifndef vtkSphereRepresentation_h
50 #define vtkSphereRepresentation_h
52 #include "vtkInteractionWidgetsModule.h"
74 #define VTK_SPHERE_OFF 0
75 #define VTK_SPHERE_WIREFRAME 1
76 #define VTK_SPHERE_SURFACE 2
103 vtkGetMacro(Representation,
int);
116 { this->SphereSource->SetThetaResolution(r); }
118 {
return this->SphereSource->GetThetaResolution(); }
124 { this->SphereSource->SetPhiResolution(r); }
126 {
return this->SphereSource->GetPhiResolution(); }
135 {
double c[3]; c[0]=x; c[1]=y; c[2]=z; this->SetCenter(c);}
137 {
return this->SphereSource->GetCenter();}
139 {this->SphereSource->GetCenter(xyz);}
147 {
return this->SphereSource->GetRadius(); }
157 vtkGetMacro(HandleVisibility,
int);
168 {
double p[3]; p[0]=x; p[1]=y; p[2]=z; this->SetHandlePosition(p);}
169 vtkGetVector3Macro(HandlePosition,
double);
180 {
double d[3]; d[0]=dx; d[1]=dy; d[2]=dz; this->SetHandleDirection(d);}
181 vtkGetVector3Macro(HandleDirection,
double);
193 vtkGetMacro(HandleText,
int);
203 vtkGetMacro(RadialLine,
int);
213 vtkGetMacro(CenterCursor,
bool);
311 double LastEventPosition[3];
325 double LastPickPosition[3];
332 void Scale(
double *p1,
double *p2,
int X,
int Y);
354 double HandleDirection[3];
355 double HandlePosition[3];
map vtkPolyData to graphics primitives
represent and manipulate 3D points
void SetHandleDirection(double dx, double dy, double dz)
void SetCenter(double x, double y, double z)
void SetRadius(double r)
Set/Get the radius of sphere.
vtkPolyDataMapper * CenterMapper
void SetRepresentationToOff()
void GetSphere(vtkSphere *sphere)
Get the spherical implicit function defined by this widget.
void SetCenter(double c[3])
Set/Get the center position of the sphere.
void GetCenter(double xyz[3])
vtkProperty * RadialLineProperty
void CreateDefaultProperties()
generate a 3D cursor representation
#define VTK_SPHERE_WIREFRAME
vtkSphereRepresentation()
virtual void WidgetInteraction(double e[2])
vtkActor2D * HandleTextActor
a class defining the representation for the vtkSphereWidget2
vtkActor * RadialLineActor
virtual void PlaceWidget(double bounds[6])
These are methods that satisfy vtkWidgetRepresentation's API.
#define VTK_SPHERE_SURFACE
vtkSphereSource * SphereSource
implicit function for a sphere
virtual int RenderOpaqueGeometry(vtkViewport *)
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
vtkCursor3D * CenterCursorSource
virtual void BuildRepresentation()
void SetThetaResolution(int r)
Set/Get the resolution of the sphere in the theta direction.
virtual void AdaptCenterCursorBounds()
vtkTextMapper * HandleTextMapper
window superclass for vtkRenderWindow
vtkSphereSource * HandleSource
virtual int RenderOverlay(vtkViewport *)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void SetHandlePosition(double x, double y, double z)
virtual int ComputeInteractionState(int X, int Y, int modify=0)
void SetPhiResolution(int r)
Set/Get the resolution of the sphere in the phi direction.
vtkCellPicker * HandlePicker
vtkLineSource * RadialLineSource
create a polygonal sphere centered at the origin
void SetRepresentationToWireframe()
vtkTextProperty * HandleTextProperty
virtual void PlaceWidget(double center[3], double handlePosition[3])
represents an object (geometry & properties) in a rendered scene
vtkPolyDataMapper * RadialLineMapper
a simple class to control print indentation
represent and manipulate 4x4 transformation matrices
void Translate(double *p1, double *p2)
void GetPolyData(vtkPolyData *pd)
Grab the polydata (including points) that defines the sphere.
void SetInteractionState(int state)
The interaction state may be set from a widget (e.g., vtkSphereWidget2) or other object.
virtual double * GetBounds()
Methods to make this class behave as a vtkProp.
void SetHandleDirection(double dir[3])
Set/Get the direction vector of the handle relative to the center of the sphere.
create a line defined by two end points
abstract specification for Viewports
represent text properties.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
void SetRepresentationToSurface()
void SetHandlePosition(double handle[3])
Set/Get the position of the handle.
a actor that draws 2D data
vtkProperty * SphereProperty
void Scale(double *p1, double *p2, int X, int Y)
virtual void ReleaseGraphicsResources(vtkWindow *)
Methods supporting, and required by, the rendering process.
vtkProperty * HandleProperty
static vtkSphereRepresentation * New()
Instantiate the class.
vtkPolyDataMapper * HandleMapper
concrete dataset represents vertices, lines, polygons, and triangle strips
virtual void RegisterPickers()
Register internal Pickers in the Picking Manager.
dynamic, self-adjusting array of double
represent surface properties of a geometric object
vtkProperty * SelectedHandleProperty
virtual void StartWidgetInteraction(double e[2])
virtual int HasTranslucentPolygonalGeometry()
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
vtkCellPicker * SpherePicker
ray-cast cell picker for all kinds of Prop3Ds
~vtkSphereRepresentation()
void HighlightSphere(int highlight)
vtkPolyDataMapper * SphereMapper
void PlaceHandle(double *center, double radius)
void HighlightHandle(int)
vtkProperty * SelectedSphereProperty
virtual void SizeHandles()
Superclass for algorithms that produce only polydata as output.