49#ifndef vtkImplicitConeRepresentation_h
50#define vtkImplicitConeRepresentation_h
53#include "vtkInteractionWidgetsModule.h"
57VTK_ABI_NAMESPACE_BEGIN
71#define VTK_MAX_CONE_RESOLUTION 2048
represents an object (geometry & properties) in a rendered scene
implicit function for a bounding box
ray-cast cell picker for all kinds of Prop3Ds
implicit function for a cone
topologically and geometrically regular array of data
~vtkImplicitConeRepresentation() override
void GetPolyData(vtkPolyData *pd)
Grab the polydata that defines the cone.
void SetInteractionColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
void StartWidgetInteraction(double eventPos[2]) override
Methods to interface with the vtkImplicitConeWidget.
vtkImplicitConeRepresentation(const vtkImplicitConeRepresentation &)=delete
void SetForegroundColor(double, double, double)
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
void SetAlongXAxis(bool)
Force the cone widget to be aligned with one of the x-y-z axes.
vtkNew< vtkCellPicker > ConePicker
double * GetAxis()
Set/Get the axis of rotation for the cone.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Methods supporting the rendering process.
void SetHandleColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
void SetAxis(double x, double y, double z)
Set/Get the axis of rotation for the cone.
double * GetOrigin()
Get the origin of the cone representation.
virtual void SetRepresentationState(InteractionStateType)
Sets the visual appearance of the representation based on the state it is in.
void HighlightCone(bool highlight)
void TranslateOrigin(const vtkVector3d &p1, const vtkVector3d &p2)
void SetAlongYAxis(bool)
Force the cone widget to be aligned with one of the x-y-z axes.
vtkNew< vtkActor > ConePDActor
void SetOrigin(double x[3])
Get the origin of the cone representation.
vtkNew< vtkPolyDataMapper > AxisArrowMapper
vtkNew< vtkProperty > SelectedConeProperty
void SetAlongZAxis(bool)
Force the cone widget to be aligned with one of the x-y-z axes.
vtkNew< vtkLineSource > AxisLineSource
void PushCone(double distance)
Push the cone the distance specified along the view vector.
int ComputeInteractionState(int X, int Y, int modify=0) override
Methods to interface with the vtkImplicitConeWidget.
vtkNew< vtkProperty > SelectedAxisProperty
vtkNew< vtkActor > OriginHandleActor
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instances of this class.
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
Methods supporting the rendering process.
vtkVector3d LastEventPosition
void AdjustAngle(double X, double Y, const vtkVector3d &p1, const vtkVector3d &p2)
void ReleaseGraphicsResources(vtkWindow *) override
Methods supporting the rendering process.
void WidgetInteraction(double newEventPos[2]) override
Methods to interface with the vtkImplicitConeWidget.
void RegisterPickers() override
Register internal Pickers in the Picking Manager.
int RenderOpaqueGeometry(vtkViewport *) override
Methods supporting the rendering process.
vtkNew< vtkActor > AxisLineActor
void PlaceWidget(double bounds[6]) override
Methods to interface with the vtkImplicitConeWidget.
void UpdatePlacement()
Satisfies the superclass API.
void EndWidgetInteraction(double newEventPos[2]) override
Methods to interface with the vtkImplicitConeWidget.
void SetOrigin(double x, double y, double z)
Get the origin of the cone representation.
double GetAngle()
Set/Get the cone angle (expressed in degrees).
vtkNew< vtkConeSource > AxisArrowSource
vtkNew< vtkPolyDataMapper > OriginHandleMapper
void HighlightAxis(bool highlight)
InteractionStateType RepresentationState
vtkImplicitConeRepresentation()
void SetAngle(double r)
Set/Get the cone angle (expressed in degrees).
void operator=(const vtkImplicitConeRepresentation &)=delete
vtkNew< vtkProperty > ConeProperty
vtkNew< vtkPolyDataMapper > AxisLineMapper
void GetCone(vtkCone *cone) const
void HighlightOriginHandle(bool highlight)
vtkNew< vtkActor > AxisArrowActor
vtkNew< vtkPolyData > ConePD
vtkNew< vtkProperty > OriginHandleProperty
void SetForegroundColor(double c[3])
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
vtkNew< vtkBox > BoundingBox
vtkNew< vtkTubeFilter > EdgesTuber
void SetDrawCone(bool draw)
Enable/disable the drawing of the cone.
vtkNew< vtkPolyDataMapper > EdgesMapper
void GetActors(vtkPropCollection *pc) override
Methods supporting the rendering process.
double * GetBounds() override
Methods supporting the rendering process.
vtkNew< vtkProperty > EdgesProperty
void SetHandleColor(double, double, double)
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
vtkNew< vtkProperty > AxisProperty
vtkNew< vtkPolyData > EdgesPD
void Scale(const vtkVector3d &p1, const vtkVector3d &p2, double X, double Y)
vtkNew< vtkActor > EdgesActor
void TranslateRepresentation(const vtkVector3d &motion) override
Translate the representation, to be implemented in derived class.
void Rotate(double X, double Y, const vtkVector3d &p1, const vtkVector3d &p2, const vtkVector3d &vpn)
void ScaleAngle(const vtkVector3d &p1, const vtkVector3d &p2)
vtkNew< vtkSphereSource > OriginHandleSource
void TranslateOriginOnAxis(const vtkVector3d &p1, const vtkVector3d &p2)
static vtkImplicitConeRepresentation * New()
vtkNew< vtkPolyDataMapper > ConePDMapper
vtkNew< vtkProperty > SelectedOriginHandleProperty
vtkNew< vtkCellPicker > Picker
void BumpCone(int dir, double factor)
Translate the cone in the direction of the view vector by the specified BumpDistance.
void SetInteractionColor(double, double, double)
Set the color of all the widgets handles (edges, axis, selected cone) and their color during interact...
void BuildRepresentation() override
Methods to interface with the vtkImplicitConeWidget.
void TranslateCone(const vtkVector3d &p1, const vtkVector3d &p2)
a simple class to control print indentation
create a line defined by two end points
Allocate and hold a VTK object.
map vtkPolyData to graphics primitives
concrete dataset represents vertices, lines, polygons, and triangle strips
represent surface properties of a geometric object
create a polygonal sphere centered at the origin
filter that generates tubes around lines
abstract specification for Viewports
window superclass for vtkRenderWindow
#define VTK_MAX_CONE_RESOLUTION
#define VTK_SIZEHINT(...)