34#ifndef vtkLeaderActor2D_h
35#define vtkLeaderActor2D_h
38#include "vtkRenderingAnnotationModule.h"
40VTK_ABI_NAMESPACE_BEGIN
72 vtkSetMacro(Radius,
double);
73 vtkGetMacro(Radius,
double);
81 vtkSetStringMacro(Label);
82 vtkGetStringMacro(Label);
98 vtkSetClampMacro(LabelFactor,
double, 0.1, 2.0);
99 vtkGetMacro(LabelFactor,
double);
113 VTK_ARROW_FILLED = 0,
123 vtkSetClampMacro(ArrowPlacement,
int, VTK_ARROW_NONE, VTK_ARROW_BOTH);
124 vtkGetMacro(ArrowPlacement,
int);
137 vtkSetClampMacro(ArrowStyle,
int, VTK_ARROW_FILLED, VTK_ARROW_HOLLOW);
138 vtkGetMacro(ArrowStyle,
int);
149 vtkSetClampMacro(ArrowLength,
double, 0.0, 1.0);
150 vtkGetMacro(ArrowLength,
double);
151 vtkSetClampMacro(ArrowWidth,
double, 0.0, 1.0);
152 vtkGetMacro(ArrowWidth,
double);
163 vtkGetMacro(MinimumArrowSize,
double);
165 vtkGetMacro(MaximumArrowSize,
double);
184 vtkSetStringMacro(LabelFormat);
185 vtkGetStringMacro(LabelFormat);
193 vtkGetMacro(Length,
double);
194 vtkGetMacro(Angle,
double);
232 double factor,
int* stringSize);
234 double xL[3],
int stringSize[2],
double p1[3],
double ray[3],
double c1[3],
double c2[3]);
235 void BuildCurvedLeader(
double p1[3],
double p2[3],
double ray[3],
double rayLength,
double theta,
237 int InStringBox(
double center[3],
int stringSize[2],
double x[3]);
270 int LastPosition2[2];
a actor that draws 2D data
object to represent cell connectivity
a simple class to control print indentation
create a leader with optional label and arrows
vtkCellArray * LeaderArrows
void SetArrowStyleToOpen()
Control the appearance of the arrow heads.
void BuildCurvedLeader(double p1[3], double p2[3], double ray[3], double rayLength, double theta, vtkViewport *viewport, int viewportChanged)
void SetArrowPlacementToNone()
Control whether arrow heads are drawn on the leader.
int InStringBox(double center[3], int stringSize[2], double x[3])
void SetArrowPlacementToBoth()
Control whether arrow heads are drawn on the leader.
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkActor2D.
virtual void SetLabelTextProperty(vtkTextProperty *p)
Set/Get the text property of the label.
vtkCellArray * LeaderLines
int SetFontSize(vtkViewport *viewport, vtkTextMapper *textMapper, const int *targetSize, double factor, int *stringSize)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetArrowStyleToHollow()
Control the appearance of the arrow heads.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
void SetArrowStyleToFilled()
Control the appearance of the arrow heads.
vtkPolyDataMapper2D * LeaderMapper
virtual void BuildLeader(vtkViewport *viewport)
int RenderOpaqueGeometry(vtkViewport *viewport) override
Methods required by vtkProp and vtkActor2D superclasses.
~vtkLeaderActor2D() override
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
Methods required by vtkProp and vtkActor2D superclasses.
void SetArrowPlacementToPoint2()
Control whether arrow heads are drawn on the leader.
vtkTextProperty * LabelTextProperty
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
vtkTypeBool UseFontSizeFromProperty
int ClipLeader(double xL[3], int stringSize[2], double p1[3], double ray[3], double c1[3], double c2[3])
vtkTextMapper * LabelMapper
void SetArrowPlacementToPoint1()
Control whether arrow heads are drawn on the leader.
int RenderOverlay(vtkViewport *viewport) override
Methods required by vtkProp and vtkActor2D superclasses.
static vtkLeaderActor2D * New()
Instantiate object.
represent and manipulate 3D points
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract superclass for all actors, volumes and annotations
represent text properties.
record modification and/or execution time
abstract specification for Viewports
window superclass for vtkRenderWindow