30 #ifndef vtkImplicitCylinderRepresentation_h
31 #define vtkImplicitCylinderRepresentation_h
34 #include "vtkInteractionWidgetsModule.h"
37 VTK_ABI_NAMESPACE_BEGIN
56 #define VTK_MAX_CYL_RESOLUTION 2048
80 void SetCenter(
double x,
double y,
double z);
81 void SetCenter(
double x[3]);
83 void GetCenter(
double xyz[3]);
91 void SetAxis(
double x,
double y,
double z);
92 void SetAxis(
double a[3]);
94 void GetAxis(
double a[3]);
102 void SetRadius(
double r);
114 vtkSetClampMacro(MinRadius,
double, 0.001, 0.25);
115 vtkGetMacro(MinRadius,
double);
117 vtkGetMacro(MaxRadius,
double);
129 vtkGetMacro(AlongXAxis, vtkTypeBool);
130 vtkBooleanMacro(AlongXAxis, vtkTypeBool);
131 void SetAlongYAxis(vtkTypeBool);
132 vtkGetMacro(AlongYAxis, vtkTypeBool);
133 vtkBooleanMacro(AlongYAxis, vtkTypeBool);
134 void SetAlongZAxis(vtkTypeBool);
135 vtkGetMacro(AlongZAxis, vtkTypeBool);
136 vtkBooleanMacro(AlongZAxis, vtkTypeBool);
146 void SetDrawCylinder(vtkTypeBool drawCyl);
147 vtkGetMacro(DrawCylinder, vtkTypeBool);
148 vtkBooleanMacro(DrawCylinder, vtkTypeBool);
159 vtkGetMacro(Resolution,
int);
168 vtkSetMacro(Tubing, vtkTypeBool);
169 vtkGetMacro(Tubing, vtkTypeBool);
170 vtkBooleanMacro(Tubing, vtkTypeBool);
177 vtkSetMacro(ScaleEnabled, vtkTypeBool);
178 vtkGetMacro(ScaleEnabled, vtkTypeBool);
179 vtkBooleanMacro(ScaleEnabled, vtkTypeBool);
200 void UpdatePlacement();
207 vtkGetObjectMacro(SelectedAxisProperty, vtkProperty);
215 vtkGetObjectMacro(CylinderProperty, vtkProperty);
216 vtkGetObjectMacro(SelectedCylinderProperty, vtkProperty);
224 vtkGetObjectMacro(EdgesProperty, vtkProperty);
233 void SetInteractionColor(
double,
double,
double);
235 void SetHandleColor(
double,
double,
double);
237 void SetForegroundColor(
double,
double,
double);
271 vtkSetClampMacro(BumpDistance,
double, 0.000001, 1);
272 vtkGetMacro(BumpDistance,
double);
282 void BumpCylinder(
int dir,
double factor);
290 void PushCylinder(
double distance);
315 vtkSetClampMacro(InteractionState,
int, Outside, TranslatingCenter);
323 virtual void SetRepresentationState(
int);
324 vtkGetMacro(RepresentationState,
int);
341 double LastEventPosition[3];
368 void HighlightCylinder(
int highlight);
381 void HighlightNormal(
int highlight);
411 void Rotate(
double X,
double Y,
double* p1,
double* p2,
double* vpn);
412 void TranslateCylinder(
double* p1,
double* p2);
413 void TranslateCenter(
double* p1,
double* p2);
414 void TranslateCenterOnAxis(
double* p1,
double* p2);
415 void ScaleRadius(
double* p1,
double* p2);
416 void AdjustRadius(
double X,
double Y,
double* p1,
double* p2);
417 void Scale(
double* p1,
double* p2,
double X,
double Y);
430 void BuildCylinder();
440 VTK_ABI_NAMESPACE_END
vtkPolyDataMapper * ConeMapper
vtkConeSource * ConeSource2
represents an object (geometry & properties) in a rendered scene
abstract specification for Viewports
represent surface properties of a geometric object
vtkProperty * CylinderProperty
defining the representation for a vtkImplicitCylinderWidget
map scalar values into colors via a lookup table
void SetForegroundColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cylinder) and their color during inte...
vtkPolyDataMapper * LineMapper
vtkLineSource * LineSource2
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkCellPicker * CylPicker
vtkConeSource * ConeSource
window superclass for vtkRenderWindow
create wireframe outline for an arbitrary data set or composite dataset
create a polygonal sphere centered at the origin
Superclass for algorithms that produce only polydata as output.
vtkPolyDataMapper * LineMapper2
vtkProperty * SelectedAxisProperty
filter that generates tubes around lines
a simple class to control print indentation
void SetInteractionColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cylinder) and their color during inte...
extract interior, boundary, non-manifold, and/or sharp edges from polygonal data
topologically and geometrically regular array of data
vtkLineSource * LineSource
vtkPolyDataMapper * CylMapper
vtkProperty * EdgesProperty
#define VTK_SIZEHINT(...)
create a line defined by two end points
map vtkPolyData to graphics primitives
void SetHandleColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cylinder) and their color during inte...
vtkPolyDataMapper * SphereMapper
ray-cast cell picker for all kinds of Prop3Ds
vtkPolyDataMapper * EdgesMapper
vtkTubeFilter * EdgesTuber
vtkProperty * SelectedCylinderProperty
implicit function for a cylinder
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
vtkPolyDataMapper * ConeMapper2
#define VTK_MAX_CYL_RESOLUTION
vtkProperty * AxisProperty