34#ifndef vtkLeaderActor2D_h
35#define vtkLeaderActor2D_h
38#include "vtkRenderingAnnotationModule.h"
41VTK_ABI_NAMESPACE_BEGIN
73 vtkSetMacro(Radius,
double);
74 vtkGetMacro(Radius,
double);
82 vtkSetStringMacro(Label);
83 vtkGetStringMacro(Label);
99 vtkSetClampMacro(LabelFactor,
double, 0.1, 2.0);
100 vtkGetMacro(LabelFactor,
double);
114 VTK_ARROW_FILLED = 0,
124 vtkSetClampMacro(ArrowPlacement,
int, VTK_ARROW_NONE, VTK_ARROW_BOTH);
125 vtkGetMacro(ArrowPlacement,
int);
138 vtkSetClampMacro(ArrowStyle,
int, VTK_ARROW_FILLED, VTK_ARROW_HOLLOW);
139 vtkGetMacro(ArrowStyle,
int);
150 vtkSetClampMacro(ArrowLength,
double, 0.0, 1.0);
151 vtkGetMacro(ArrowLength,
double);
152 vtkSetClampMacro(ArrowWidth,
double, 0.0, 1.0);
153 vtkGetMacro(ArrowWidth,
double);
164 vtkGetMacro(MinimumArrowSize,
double);
166 vtkGetMacro(MaximumArrowSize,
double);
185 vtkSetStringMacro(LabelFormat);
186 vtkGetStringMacro(LabelFormat);
194 vtkGetMacro(Length,
double);
195 vtkGetMacro(Angle,
double);
233 double factor,
int* stringSize);
235 double xL[3],
int stringSize[2],
double p1[3],
double ray[3],
double c1[3],
double c2[3]);
236 void BuildCurvedLeader(
double p1[3],
double p2[3],
double ray[3],
double rayLength,
double theta,
238 int InStringBox(
double center[3],
int stringSize[2],
double x[3]);
271 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