58#ifndef vtkAxisActor2D_h
59#define vtkAxisActor2D_h
62#include "vtkRenderingAnnotationModule.h"
66VTK_ABI_NAMESPACE_BEGIN
112 vtkSetVector2Macro(Range,
double);
113 vtkGetVectorMacro(Range,
double, 2);
133 vtkGetMacro(RulerDistance,
double);
147 vtkSetClampMacro(NumberOfLabels,
int, 2, VTK_MAX_LABELS);
148 vtkGetMacro(NumberOfLabels,
int);
156 vtkSetStringMacro(LabelFormat);
157 vtkGetStringMacro(LabelFormat);
174 this->UpdateAdjustedRange();
175 return this->AdjustedRange;
179 this->UpdateAdjustedRange();
180 _arg1 = this->AdjustedRange[0];
181 _arg2 = this->AdjustedRange[1];
186 this->UpdateAdjustedRange();
187 return this->AdjustedNumberOfLabels;
195 vtkSetStringMacro(Title);
196 vtkGetStringMacro(Title);
220 vtkSetClampMacro(TickLength,
int, 0, 100);
221 vtkGetMacro(TickLength,
int);
229 vtkSetClampMacro(NumberOfMinorTicks,
int, 0, 20);
230 vtkGetMacro(NumberOfMinorTicks,
int);
238 vtkSetClampMacro(MinorTickLength,
int, 0, 100);
239 vtkGetMacro(MinorTickLength,
int);
248 vtkSetClampMacro(TickOffset,
int, 0, 100);
249 vtkGetMacro(TickOffset,
int);
293 vtkSetMacro(TitlePosition,
double);
294 vtkGetMacro(TitlePosition,
double);
303 vtkSetClampMacro(FontFactor,
double, 0.1, 2.0);
304 vtkGetMacro(FontFactor,
double);
312 vtkSetClampMacro(LabelFactor,
double, 0.1, 2.0);
313 vtkGetMacro(LabelFactor,
double);
348 double inRange[2],
double outRange[2],
int inNumTicks,
int& outNumTicks,
double& interval);
359 int nbOfMappers,
int* targetSize,
double factor,
int* stringSize);
396 double Range[2] = { 0., 1. };
397 double TitlePosition = 0.5;
399 double RulerDistance = 1.;
400 int NumberOfLabels = 5;
402 double FontFactor = 1.;
403 double LabelFactor = 0.75;
405 int MinorTickLength = 3;
407 int NumberOfMinorTicks = 0;
409 double AdjustedRange[2];
410 int AdjustedNumberOfLabels = 5;
411 int NumberOfLabelsBuilt = 0;
418 int LastPosition[2] = { 0, 0 };
419 int LastPosition2[2] = { 0, 0 };
421 int LastSize[2] = { 0, 0 };
422 int LastMaxLabelSize[2] = { 0, 0 };
424 int SizeFontRelativeToAxis = 0;
a actor that draws 2D data
virtual vtkCoordinate * GetPositionCoordinate()
Get the PositionCoordinate instance of vtkCoordinate.
virtual void SetPosition2(float x[2])
Access the Position2 instance variable.
virtual void SetPosition(float x[2])
Get the PositionCoordinate instance of vtkCoordinate.
virtual vtkCoordinate * GetPosition2Coordinate()
Access the Position2 instance variable.
virtual float * GetPosition2()
Access the Position2 instance variable.
virtual float * GetPosition()
Get the PositionCoordinate instance of vtkCoordinate.
Create an axis with tick marks and labels.
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
Draw the axis.
virtual void SetPoint1(double x[2])
Specify the position of the first point defining the axis.
virtual double * GetAdjustedRange()
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
vtkTextMapper * TitleMapper
vtkNew< vtkPolyDataMapper2D > AxisMapper
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
virtual void SetTitleTextProperty(vtkTextProperty *p)
Set/Get the title text property.
vtkActor2D ** LabelActors
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkNew< vtkActor2D > AxisActor
vtkNew< vtkPolyData > Axis
static void SetOffsetPosition(double xTick[3], double theta, int stringWidth, int stringHeight, int offset, vtkActor2D *actor)
virtual void BuildAxis(vtkViewport *viewport)
static int SetMultipleFontSize(vtkViewport *viewport, vtkTextMapper **textMappers, int nbOfMappers, int *targetSize, double factor, int *stringSize)
General method to computes font size from a representative size on the viewport (given by size[2]).
vtkTextProperty * TitleTextProperty
virtual void SetPoint1(double x, double y)
Specify the position of the first point defining the axis.
static void ComputeRange(double inRange[2], double outRange[2], int inNumTicks, int &outNumTicks, double &interval)
This method computes the range of the axis given an input range.
virtual vtkCoordinate * GetPoint2Coordinate()
Specify the position of the second point defining the axis.
virtual vtkCoordinate * GetPoint1Coordinate()
Specify the position of the first point defining the axis.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Draw the axis.
vtkTimeStamp AdjustedRangeBuildTime
virtual void GetAdjustedRange(double _arg[2])
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
vtkTextMapper ** LabelMappers
static vtkAxisActor2D * New()
Instantiate object.
static double ComputeStringOffset(double width, double height, double theta)
int RenderOverlay(vtkViewport *viewport) override
Draw the axis.
virtual double * GetPoint1()
Specify the position of the first point defining the axis.
void ShallowCopy(vtkProp *prop) override
Shallow copy of an axis actor.
virtual void SetPoint2(double x[2])
Specify the position of the second point defining the axis.
virtual void SetLabelTextProperty(vtkTextProperty *p)
Set/Get the labels text property.
virtual double * GetPoint2()
Specify the position of the second point defining the axis.
vtkTextProperty * LabelTextProperty
virtual int GetAdjustedNumberOfLabels()
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
virtual void GetAdjustedRange(double &_arg1, double &_arg2)
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
~vtkAxisActor2D() override
virtual void SetPoint2(double x, double y)
Specify the position of the second point defining the axis.
virtual void UpdateAdjustedRange()
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a simple class to control print indentation
Allocate and hold a VTK object.
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