 |
VTK
9.0.1
|
Go to the documentation of this file.
28 #ifndef vtkCurveRepresentation_h
29 #define vtkCurveRepresentation_h
31 #include "vtkInteractionWidgetsModule.h"
47 #define VTK_PROJECTION_YZ 0
48 #define VTK_PROJECTION_XZ 1
49 #define VTK_PROJECTION_XY 2
50 #define VTK_PROJECTION_OBLIQUE 3
75 vtkSetMacro(InteractionState,
int);
100 vtkGetMacro(ProjectionNormal,
int);
115 vtkGetMacro(ProjectionPosition,
double);
150 vtkGetMacro(NumberOfHandles,
int);
159 vtkGetMacro(DirectionalLine,
bool);
160 vtkBooleanMacro(DirectionalLine,
bool);
251 vtkGetMacro(CurrentHandleIndex,
int);
259 vtkGetMacro(TranslationAxis,
int);
260 vtkSetClampMacro(TranslationAxis,
int, -1, 2);
286 double LastEventPosition[3];
326 double LastPickPosition[3];
333 void Scale(
double* p1,
double* p2,
int X,
int Y);
335 void Spin(
double* p1,
double* p2,
double* vpn);
362 vtkSetMacro(UseSphere,
bool);
363 vtkGetMacro(UseSphere,
bool);
364 vtkBooleanMacro(UseSphere,
bool);
367 vtkGetMacro(Radius,
double);
369 vtkSetVector3Macro(Center,
double);
370 vtkGetVectorMacro(Center,
double, 3);
372 vtkSetVector3Macro(Direction,
double);
373 vtkGetVectorMacro(Direction,
double, 3);
represent and manipulate 3D points
void SetZTranslationAxisOn()
void SetProjectionPosition(double position)
Set the position of poly line handles and points in terms of a plane's position.
void CreateDefaultProperties()
void Spin(double *p1, double *p2, double *vpn)
void SetProjectionNormalToYAxes()
void ProjectPointsToPlane()
void SetProjectionNormalToOblique()
virtual void SetNumberOfHandles(int npts)=0
Set/Get the number of handles for this widget.
#define VTK_PROJECTION_YZ
virtual int InsertHandleOnLine(double *pos)=0
Returns the position of insertion or -1 on fail.
void SetPlaneSource(vtkPlaneSource *plane)
Set up a reference to a vtkPlaneSource that could be from another widget object, e....
vtkTypeBool HasTranslucentPolygonalGeometry() override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
vtkCellPicker * LinePicker
vtkWidgetRepresentation base class for a widget that represents an curve that connects control points...
void SetCurrentHandleIndex(int index)
Get/Set the current handle index.
void ReleaseGraphicsResources(vtkWindow *) override
Methods supporting, and required by, the rendering process.
vtkProperty * SelectedHandleProperty
create an array of quadrilaterals located in a plane
void ProjectPointsToOrthoPlane()
void BuildRepresentation() override=0
These are methods that satisfy vtkWidgetRepresentation's API.
void WidgetInteraction(double e[2]) override
int RenderOpaqueGeometry(vtkViewport *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THESE METHODS OUTSIDE OF THE RENDE...
void EndWidgetInteraction(double e[2]) override
int HighlightHandle(vtkProp *prop)
void Scale(double *p1, double *p2, int X, int Y)
static HandleSource * New()
window superclass for vtkRenderWindow
#define VTK_PROJECTION_OBLIQUE
void ProjectPointsToObliquePlane()
double ProjectionPosition
void MovePoint(double *p1, double *p2)
void SetXTranslationAxisOn()
Toggles constraint translation axis on/off.
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
void SetLineColor(double r, double g, double b)
Convenience method to set the line color.
create a polygonal sphere centered at the origin
vtkTypeBool IsClosed()
Convenience method to determine whether the curve is closed in a geometric sense.
represents an object (geometry & properties) in a rendered scene
virtual void PushHandle(double *pos)
bool IsTranslationConstrained()
Returns true if ContrainedAxis.
int RenderOverlay(vtkViewport *) override
a simple class to control print indentation
void SetDirectionalLine(bool val)
Sets the representation to be a directional curve with the end represented as a cone.
void SetProjectionNormalToZAxes()
virtual void GetPolyData(vtkPolyData *pd)=0
Grab the polydata (including points) that defines the interpolating curve.
void SetClosed(vtkTypeBool closed)
Control whether the curve is open or closed.
virtual void SetHandlePosition(int handle, double x, double y, double z)
Set/Get the position of the handles.
virtual void GetHandlePosition(int handle, double xyz[3])
void RegisterPickers() override
Register internal Pickers in the Picking Manager.
abstract specification for Viewports
virtual void InitializeHandles(vtkPoints *points)=0
Convenience method to allocate and set the handles from a vtkPoints instance.
vtkProperty * HandleProperty
abstract superclass for all actors, volumes and annotations
void EraseHandle(const int &)
void HighlightLine(int highlight)
double * GetBounds() override
Get the bounds for this Prop as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
vtkCellPicker * HandlePicker
void Translate(double *p1, double *p2)
virtual vtkDoubleArray * GetHandlePositions()=0
int ComputeInteractionState(int X, int Y, int modify=0) override
virtual void SetHandlePosition(int handle, double xyz[3])
virtual double * GetHandlePosition(int handle)
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkProperty * SelectedLineProperty
HandleSource ** HandleGeometry
vtkTypeBool ProjectToPlane
dynamic, self-adjusting array of double
represent surface properties of a geometric object
void SetYTranslationAxisOn()
void StartWidgetInteraction(double e[2]) override
int GetHandleIndex(vtkProp *prop)
void SetTranslationAxisOff()
virtual void SizeHandles()
virtual double GetSummedLength()=0
Get the approximate vs.
vtkProperty * LineProperty
ray-cast cell picker for all kinds of Prop3Ds
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetProjectionNormalToXAxes()
~vtkCurveRepresentation() override
vtkPlaneSource * PlaneSource
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Superclass for algorithms that produce only polydata as output.