#include <vtkLeaderActor2D.h>
vtkLeaderActor2D creates a leader with an optional label and arrows. (A leader is typically used to indicate distance between points.) vtkLeaderActor2D is a type of vtkActor2D; that is, it is drawn on the overlay plane and is not occluded by 3D geometry. To use this class, you typically specify two points defining the start and end points of the line (x-y definition using vtkCoordinate class), whether to place arrows on one or both end points, and whether to label the leader. Also, this class has a special feature that allows curved leaders to be created by specifying a radius.
Use the vtkLeaderActor2D uses its superclass vtkActor2D instance variables Position and Position2 vtkCoordinates to place an instance of vtkLeaderActor2D (i.e., these two data members represent the start and end points of the leader). Using these vtkCoordinates you can specify the position of the leader in a variety of coordinate systems.
To control the appearance of the actor, use the superclasses vtkActor2D::vtkProperty2D and the vtkTextProperty objects associated with this actor.
Definition at line 57 of file vtkLeaderActor2D.h.
Public Types | |
enum | { VTK_ARROW_NONE = 0, VTK_ARROW_POINT1, VTK_ARROW_POINT2, VTK_ARROW_BOTH } |
enum | { VTK_ARROW_FILLED = 0, VTK_ARROW_OPEN, VTK_ARROW_HOLLOW } |
typedef vtkActor2D | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual int | HasTranslucentPolygonalGeometry () |
void | ReleaseGraphicsResources (vtkWindow *) |
void | ShallowCopy (vtkProp *prop) |
virtual void | SetRadius (double) |
virtual double | GetRadius () |
virtual void | SetLabel (const char *) |
virtual char * | GetLabel () |
virtual void | SetLabelTextProperty (vtkTextProperty *p) |
virtual vtkTextProperty * | GetLabelTextProperty () |
virtual void | SetLabelFactor (double) |
virtual double | GetLabelFactor () |
virtual void | SetArrowPlacement (int) |
virtual int | GetArrowPlacement () |
void | SetArrowPlacementToNone () |
void | SetArrowPlacementToPoint1 () |
void | SetArrowPlacementToPoint2 () |
void | SetArrowPlacementToBoth () |
virtual void | SetArrowStyle (int) |
virtual int | GetArrowStyle () |
void | SetArrowStyleToFilled () |
void | SetArrowStyleToOpen () |
void | SetArrowStyleToHollow () |
virtual void | SetArrowLength (double) |
virtual double | GetArrowLength () |
virtual void | SetArrowWidth (double) |
virtual double | GetArrowWidth () |
virtual void | SetMinimumArrowSize (double) |
virtual double | GetMinimumArrowSize () |
virtual void | SetMaximumArrowSize (double) |
virtual double | GetMaximumArrowSize () |
virtual void | SetAutoLabel (int) |
virtual int | GetAutoLabel () |
virtual void | AutoLabelOn () |
virtual void | AutoLabelOff () |
virtual void | SetLabelFormat (const char *) |
virtual char * | GetLabelFormat () |
virtual double | GetLength () |
virtual double | GetAngle () |
int | RenderOverlay (vtkViewport *viewport) |
int | RenderOpaqueGeometry (vtkViewport *viewport) |
virtual int | RenderTranslucentPolygonalGeometry (vtkViewport *) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkLeaderActor2D * | SafeDownCast (vtkObject *o) |
static vtkLeaderActor2D * | New () |
Protected Member Functions | |
vtkLeaderActor2D () | |
~vtkLeaderActor2D () | |
virtual void | BuildLeader (vtkViewport *viewport) |
int | SetFontSize (vtkViewport *viewport, vtkTextMapper *textMapper, int *targetSize, double factor, int *stringSize) |
int | ClipLeader (double xL[3], int stringSize[2], double p1[3], double ray[3], double c1[3], double c2[3]) |
void | BuildCurvedLeader (double p1[3], double p2[3], double ray[3], double rayLength, double theta, vtkViewport *viewport, int viewportChanged) |
int | InStringBox (double center[3], int stringSize[2], double x[3]) |
Protected Attributes | |
double | Radius |
double | Length |
double | Angle |
int | AutoLabel |
char * | LabelFormat |
char * | Label |
double | LabelFactor |
vtkTextMapper * | LabelMapper |
vtkActor2D * | LabelActor |
vtkTextProperty * | LabelTextProperty |
int | ArrowPlacement |
int | ArrowStyle |
double | ArrowLength |
double | ArrowWidth |
double | MinimumArrowSize |
double | MaximumArrowSize |
vtkPoints * | LeaderPoints |
vtkCellArray * | LeaderLines |
vtkCellArray * | LeaderArrows |
vtkPolyData * | Leader |
vtkPolyDataMapper2D * | LeaderMapper |
vtkActor2D * | LeaderActor |
int | LastPosition [2] |
int | LastPosition2 [2] |
int | LastSize [2] |
vtkTimeStamp | BuildTime |
anonymous enum |
Definition at line 104 of file vtkLeaderActor2D.h.
anonymous enum |
Definition at line 105 of file vtkLeaderActor2D.h.
vtkLeaderActor2D::vtkLeaderActor2D | ( | ) | [protected] |
vtkLeaderActor2D::~vtkLeaderActor2D | ( | ) | [protected] |
virtual const char* vtkLeaderActor2D::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkActor2D.
static int vtkLeaderActor2D::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkActor2D.
virtual int vtkLeaderActor2D::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkActor2D.
static vtkLeaderActor2D* vtkLeaderActor2D::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkActor2D.
void vtkLeaderActor2D::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkActor2D.
static vtkLeaderActor2D* vtkLeaderActor2D::New | ( | ) | [static] |
Instantiate object.
Reimplemented from vtkActor2D.
virtual void vtkLeaderActor2D::SetRadius | ( | double | ) | [virtual] |
Set/Get a radius which can be used to curve the leader. If a radius is specified whose absolute value is greater than one half the distance between the two points defined by the superclasses' Position and Position2 ivars, then the leader will be curved. A positive radius will produce a curve such that the center is to the right of the line from Position and Position2; a negative radius will produce a curve in the opposite sense. By default, the radius is set to zero and thus there is no curvature. Note that the radius is expresses as a multiple of the distance between (Position,Position2); this avoids issues relative to coordinate system transformations.
virtual double vtkLeaderActor2D::GetRadius | ( | ) | [virtual] |
Set/Get a radius which can be used to curve the leader. If a radius is specified whose absolute value is greater than one half the distance between the two points defined by the superclasses' Position and Position2 ivars, then the leader will be curved. A positive radius will produce a curve such that the center is to the right of the line from Position and Position2; a negative radius will produce a curve in the opposite sense. By default, the radius is set to zero and thus there is no curvature. Note that the radius is expresses as a multiple of the distance between (Position,Position2); this avoids issues relative to coordinate system transformations.
virtual void vtkLeaderActor2D::SetLabel | ( | const char * | ) | [virtual] |
Set/Get the label for the leader. If the label is an empty string, then it will not be drawn.
virtual char* vtkLeaderActor2D::GetLabel | ( | ) | [virtual] |
Set/Get the label for the leader. If the label is an empty string, then it will not be drawn.
virtual void vtkLeaderActor2D::SetLabelTextProperty | ( | vtkTextProperty * | p | ) | [virtual] |
Set/Get the text property of the label.
virtual vtkTextProperty* vtkLeaderActor2D::GetLabelTextProperty | ( | ) | [virtual] |
Set/Get the text property of the label.
virtual void vtkLeaderActor2D::SetLabelFactor | ( | double | ) | [virtual] |
Set/Get the factor that controls the overall size of the fonts used to label the leader.
virtual double vtkLeaderActor2D::GetLabelFactor | ( | ) | [virtual] |
Set/Get the factor that controls the overall size of the fonts used to label the leader.
virtual void vtkLeaderActor2D::SetArrowPlacement | ( | int | ) | [virtual] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
virtual int vtkLeaderActor2D::GetArrowPlacement | ( | ) | [virtual] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
void vtkLeaderActor2D::SetArrowPlacementToNone | ( | ) | [inline] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
Definition at line 113 of file vtkLeaderActor2D.h.
void vtkLeaderActor2D::SetArrowPlacementToPoint1 | ( | ) | [inline] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
Definition at line 114 of file vtkLeaderActor2D.h.
void vtkLeaderActor2D::SetArrowPlacementToPoint2 | ( | ) | [inline] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
Definition at line 115 of file vtkLeaderActor2D.h.
void vtkLeaderActor2D::SetArrowPlacementToBoth | ( | ) | [inline] |
Control whether arrow heads are drawn on the leader. Arrows may be drawn on one end, both ends, or not at all.
Definition at line 116 of file vtkLeaderActor2D.h.
virtual void vtkLeaderActor2D::SetArrowStyle | ( | int | ) | [virtual] |
Control the appearance of the arrow heads. A solid arrow head is a filled triangle; a open arrow looks like a "V"; and a hollow arrow looks like a non-filled triangle.
virtual int vtkLeaderActor2D::GetArrowStyle | ( | ) | [virtual] |
Control the appearance of the arrow heads. A solid arrow head is a filled triangle; a open arrow looks like a "V"; and a hollow arrow looks like a non-filled triangle.
void vtkLeaderActor2D::SetArrowStyleToFilled | ( | ) | [inline] |
Control the appearance of the arrow heads. A solid arrow head is a filled triangle; a open arrow looks like a "V"; and a hollow arrow looks like a non-filled triangle.
Definition at line 125 of file vtkLeaderActor2D.h.
void vtkLeaderActor2D::SetArrowStyleToOpen | ( | ) | [inline] |
Control the appearance of the arrow heads. A solid arrow head is a filled triangle; a open arrow looks like a "V"; and a hollow arrow looks like a non-filled triangle.
Definition at line 126 of file vtkLeaderActor2D.h.
void vtkLeaderActor2D::SetArrowStyleToHollow | ( | ) | [inline] |
Control the appearance of the arrow heads. A solid arrow head is a filled triangle; a open arrow looks like a "V"; and a hollow arrow looks like a non-filled triangle.
Definition at line 127 of file vtkLeaderActor2D.h.
virtual void vtkLeaderActor2D::SetArrowLength | ( | double | ) | [virtual] |
Specify the arrow length and base width (in normalized viewport coordinates).
virtual double vtkLeaderActor2D::GetArrowLength | ( | ) | [virtual] |
Specify the arrow length and base width (in normalized viewport coordinates).
virtual void vtkLeaderActor2D::SetArrowWidth | ( | double | ) | [virtual] |
Specify the arrow length and base width (in normalized viewport coordinates).
virtual double vtkLeaderActor2D::GetArrowWidth | ( | ) | [virtual] |
Specify the arrow length and base width (in normalized viewport coordinates).
virtual void vtkLeaderActor2D::SetMinimumArrowSize | ( | double | ) | [virtual] |
Limit the minimum and maximum size of the arrows. These values are expressed in pixels and clamp the minimum/maximum possible size for the width/length of the arrow head. (When clamped, the ratio between length and width is preserved.)
virtual double vtkLeaderActor2D::GetMinimumArrowSize | ( | ) | [virtual] |
Limit the minimum and maximum size of the arrows. These values are expressed in pixels and clamp the minimum/maximum possible size for the width/length of the arrow head. (When clamped, the ratio between length and width is preserved.)
virtual void vtkLeaderActor2D::SetMaximumArrowSize | ( | double | ) | [virtual] |
Limit the minimum and maximum size of the arrows. These values are expressed in pixels and clamp the minimum/maximum possible size for the width/length of the arrow head. (When clamped, the ratio between length and width is preserved.)
virtual double vtkLeaderActor2D::GetMaximumArrowSize | ( | ) | [virtual] |
Limit the minimum and maximum size of the arrows. These values are expressed in pixels and clamp the minimum/maximum possible size for the width/length of the arrow head. (When clamped, the ratio between length and width is preserved.)
virtual void vtkLeaderActor2D::SetAutoLabel | ( | int | ) | [virtual] |
Enable auto-labelling. In this mode, the label is automatically updated based on distance (in world coordinates) between the two end points; or if a curved leader is being generated, the angle in degrees between the two points.
virtual int vtkLeaderActor2D::GetAutoLabel | ( | ) | [virtual] |
Enable auto-labelling. In this mode, the label is automatically updated based on distance (in world coordinates) between the two end points; or if a curved leader is being generated, the angle in degrees between the two points.
virtual void vtkLeaderActor2D::AutoLabelOn | ( | ) | [virtual] |
Enable auto-labelling. In this mode, the label is automatically updated based on distance (in world coordinates) between the two end points; or if a curved leader is being generated, the angle in degrees between the two points.
virtual void vtkLeaderActor2D::AutoLabelOff | ( | ) | [virtual] |
Enable auto-labelling. In this mode, the label is automatically updated based on distance (in world coordinates) between the two end points; or if a curved leader is being generated, the angle in degrees between the two points.
virtual void vtkLeaderActor2D::SetLabelFormat | ( | const char * | ) | [virtual] |
Specify the format to use for auto-labelling.
virtual char* vtkLeaderActor2D::GetLabelFormat | ( | ) | [virtual] |
Specify the format to use for auto-labelling.
virtual double vtkLeaderActor2D::GetLength | ( | ) | [virtual] |
Obtain the length of the leader if the leader is not curved, otherwise obtain the angle that the leader circumscribes.
virtual double vtkLeaderActor2D::GetAngle | ( | ) | [virtual] |
Obtain the length of the leader if the leader is not curved, otherwise obtain the angle that the leader circumscribes.
int vtkLeaderActor2D::RenderOverlay | ( | vtkViewport * | viewport | ) | [virtual] |
Methods required by vtkProp and vtkActor2D superclasses.
Reimplemented from vtkActor2D.
int vtkLeaderActor2D::RenderOpaqueGeometry | ( | vtkViewport * | viewport | ) | [virtual] |
Methods required by vtkProp and vtkActor2D superclasses.
Reimplemented from vtkActor2D.
virtual int vtkLeaderActor2D::RenderTranslucentPolygonalGeometry | ( | vtkViewport * | ) | [inline, virtual] |
Methods required by vtkProp and vtkActor2D superclasses.
Reimplemented from vtkActor2D.
Definition at line 177 of file vtkLeaderActor2D.h.
virtual int vtkLeaderActor2D::HasTranslucentPolygonalGeometry | ( | ) | [virtual] |
Does this prop have some translucent polygonal geometry?
Reimplemented from vtkActor2D.
void vtkLeaderActor2D::ReleaseGraphicsResources | ( | vtkWindow * | ) | [virtual] |
Release any graphics resources that are being consumed by this actor. The parameter window could be used to determine which graphic resources to release.
Reimplemented from vtkActor2D.
void vtkLeaderActor2D::ShallowCopy | ( | vtkProp * | prop | ) | [virtual] |
Shallow copy of this vtkActor2D. Overloads the virtual vtkProp method.
Reimplemented from vtkActor2D.
virtual void vtkLeaderActor2D::BuildLeader | ( | vtkViewport * | viewport | ) | [protected, virtual] |
int vtkLeaderActor2D::SetFontSize | ( | vtkViewport * | viewport, | |
vtkTextMapper * | textMapper, | |||
int * | targetSize, | |||
double | factor, | |||
int * | stringSize | |||
) | [protected] |
int vtkLeaderActor2D::ClipLeader | ( | double | xL[3], | |
int | stringSize[2], | |||
double | p1[3], | |||
double | ray[3], | |||
double | c1[3], | |||
double | c2[3] | |||
) | [protected] |
void vtkLeaderActor2D::BuildCurvedLeader | ( | double | p1[3], | |
double | p2[3], | |||
double | ray[3], | |||
double | rayLength, | |||
double | theta, | |||
vtkViewport * | viewport, | |||
int | viewportChanged | |||
) | [protected] |
int vtkLeaderActor2D::InStringBox | ( | double | center[3], | |
int | stringSize[2], | |||
double | x[3] | |||
) | [protected] |
double vtkLeaderActor2D::Radius [protected] |
Definition at line 202 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::Length [protected] |
Definition at line 203 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::Angle [protected] |
Definition at line 204 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::AutoLabel [protected] |
Definition at line 206 of file vtkLeaderActor2D.h.
char* vtkLeaderActor2D::LabelFormat [protected] |
Definition at line 207 of file vtkLeaderActor2D.h.
char* vtkLeaderActor2D::Label [protected] |
Definition at line 208 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::LabelFactor [protected] |
Definition at line 209 of file vtkLeaderActor2D.h.
vtkTextMapper* vtkLeaderActor2D::LabelMapper [protected] |
Definition at line 210 of file vtkLeaderActor2D.h.
vtkActor2D* vtkLeaderActor2D::LabelActor [protected] |
Definition at line 211 of file vtkLeaderActor2D.h.
vtkTextProperty* vtkLeaderActor2D::LabelTextProperty [protected] |
Definition at line 212 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::ArrowPlacement [protected] |
Definition at line 214 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::ArrowStyle [protected] |
Definition at line 215 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::ArrowLength [protected] |
Definition at line 216 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::ArrowWidth [protected] |
Definition at line 217 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::MinimumArrowSize [protected] |
Definition at line 218 of file vtkLeaderActor2D.h.
double vtkLeaderActor2D::MaximumArrowSize [protected] |
Definition at line 219 of file vtkLeaderActor2D.h.
vtkPoints* vtkLeaderActor2D::LeaderPoints [protected] |
Definition at line 221 of file vtkLeaderActor2D.h.
vtkCellArray* vtkLeaderActor2D::LeaderLines [protected] |
Definition at line 222 of file vtkLeaderActor2D.h.
vtkCellArray* vtkLeaderActor2D::LeaderArrows [protected] |
Definition at line 223 of file vtkLeaderActor2D.h.
vtkPolyData* vtkLeaderActor2D::Leader [protected] |
Definition at line 224 of file vtkLeaderActor2D.h.
vtkPolyDataMapper2D* vtkLeaderActor2D::LeaderMapper [protected] |
Definition at line 225 of file vtkLeaderActor2D.h.
vtkActor2D* vtkLeaderActor2D::LeaderActor [protected] |
Definition at line 226 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::LastPosition[2] [protected] |
Definition at line 229 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::LastPosition2[2] [protected] |
Definition at line 230 of file vtkLeaderActor2D.h.
int vtkLeaderActor2D::LastSize[2] [protected] |
Definition at line 231 of file vtkLeaderActor2D.h.
vtkTimeStamp vtkLeaderActor2D::BuildTime [protected] |
Definition at line 232 of file vtkLeaderActor2D.h.