72 #ifndef vtkAxisActor_h
73 #define vtkAxisActor_h
76 #include "vtkRenderingAnnotationModule.h"
130 vtkGetVectorMacro(
Range,
double, 2);
138 void SetBounds(
double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax);
147 vtkSetStringMacro(LabelFormat);
148 vtkGetStringMacro(LabelFormat);
159 vtkSetMacro(UseTextActor3D,
int);
160 vtkGetMacro(UseTextActor3D,
int);
177 vtkGetStringMacro(Title);
185 vtkGetStringMacro(Exponent);
192 vtkSetMacro(MajorTickSize,
double);
193 vtkGetMacro(MajorTickSize,
double);
200 vtkSetMacro(MinorTickSize,
double);
201 vtkGetMacro(MinorTickSize,
double);
206 VTK_TICKS_INSIDE = 0,
207 VTK_TICKS_OUTSIDE = 1,
265 vtkSetMacro(ExponentVisibility,
bool);
266 vtkGetMacro(ExponentVisibility,
bool);
267 vtkBooleanMacro(ExponentVisibility,
bool);
274 vtkSetMacro(LastMajorTickPointCorrection,
bool);
275 vtkGetMacro(LastMajorTickPointCorrection,
bool);
276 vtkBooleanMacro(LastMajorTickPointCorrection,
bool);
282 VTK_ALIGN_BOTTOM = 1,
283 VTK_ALIGN_POINT1 = 2,
293 vtkGetMacro(TitleAlignLocation,
int);
302 vtkGetMacro(ExponentLocation,
int);
397 vtkSetMacro(DrawGridlinesLocation,
int);
398 vtkGetMacro(DrawGridlinesLocation,
int);
413 vtkSetMacro(GridlineXLength,
double);
414 vtkGetMacro(GridlineXLength,
double);
415 vtkSetMacro(GridlineYLength,
double);
416 vtkGetMacro(GridlineYLength,
double);
417 vtkSetMacro(GridlineZLength,
double);
418 vtkGetMacro(GridlineZLength,
double);
441 vtkSetClampMacro(
AxisType,
int, VTK_AXIS_TYPE_X, VTK_AXIS_TYPE_Z);
450 VTK_AXIS_POS_MINMIN = 0,
451 VTK_AXIS_POS_MINMAX = 1,
452 VTK_AXIS_POS_MAXMAX = 2,
453 VTK_AXIS_POS_MAXMIN = 3
460 vtkSetMacro(Log,
bool);
461 vtkGetMacro(Log,
bool);
462 vtkBooleanMacro(Log,
bool);
473 vtkSetClampMacro(
AxisPosition,
int, VTK_AXIS_POS_MINMIN, VTK_AXIS_POS_MAXMIN);
521 vtkSetMacro(MinorStart,
double);
522 vtkGetMacro(MinorStart,
double);
527 vtkSetMacro(DeltaMinor,
double);
528 vtkGetMacro(DeltaMinor,
double);
542 vtkSetMacro(MinorRangeStart,
double);
543 vtkGetMacro(MinorRangeStart,
double);
544 vtkSetMacro(MajorRangeStart,
double);
545 vtkGetMacro(MajorRangeStart,
double);
546 vtkSetMacro(DeltaRangeMinor,
double);
547 vtkGetMacro(DeltaRangeMinor,
double);
548 vtkSetMacro(DeltaRangeMajor,
double);
549 vtkGetMacro(DeltaRangeMajor,
double);
602 vtkGetMacro(NumberOfLabelsBuilt,
int);
629 vtkSetMacro(Use2DMode,
int);
630 vtkGetMacro(Use2DMode,
int);
637 vtkSetMacro(VerticalOffsetXTitle2D,
double);
638 vtkGetMacro(VerticalOffsetXTitle2D,
double);
645 vtkSetMacro(HorizontalOffsetYTitle2D,
double);
646 vtkGetMacro(HorizontalOffsetYTitle2D,
double);
653 vtkSetMacro(SaveTitlePosition,
int);
654 vtkGetMacro(SaveTitlePosition,
int);
661 vtkSetVector3Macro(AxisBaseForX,
double);
662 vtkGetVector3Macro(AxisBaseForX,
double);
669 vtkSetVector3Macro(AxisBaseForY,
double);
670 vtkGetVector3Macro(AxisBaseForY,
double);
677 vtkSetVector3Macro(AxisBaseForZ,
double);
678 vtkGetVector3Macro(AxisBaseForZ,
double);
685 vtkSetMacro(AxisOnOrigin,
int);
686 vtkGetMacro(AxisOnOrigin,
int);
693 vtkSetMacro(LabelOffset,
double);
694 vtkGetMacro(LabelOffset,
double);
695 vtkSetMacro(TitleOffset,
double);
696 vtkGetMacro(TitleOffset,
double);
697 vtkSetMacro(ExponentOffset,
double);
698 vtkGetMacro(ExponentOffset,
double);
699 vtkSetMacro(ScreenSize,
double);
700 vtkGetMacro(ScreenSize,
double);
764 double AxisBaseForX[3];
765 double AxisBaseForY[3];
766 double AxisBaseForZ[3];
772 void TransformBounds(
vtkViewport*,
double bnds[6]);
783 void RotateActor2DFromAxisProjection(
vtkTextActor* pActor2D);
801 void BuildTitle(
bool);
807 void BuildExponent(
bool force);
809 void BuildExponent2D(
vtkViewport* viewport,
bool force);
813 void SetAxisPointsAndLines(
void);
815 bool BuildTickPoints(
double p1[3],
double p2[3],
bool force);
818 void BuildMajorTicks(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
821 void BuildMajorTicksLog(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
824 void BuildMinorTicks(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
827 void BuildMinorTicksLog(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
829 void BuildAxisGridLines(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
831 bool TickVisibilityChanged(
void);
836 bool BoundsDisplayCoordinateChanged(
vtkViewport* viewport);
841 double MajorTickSize;
842 double MinorTickSize;
845 double MajorStart[3];
846 double DeltaMajor[3];
851 double MajorRangeStart;
852 double MinorRangeStart;
857 double DeltaRangeMinor;
862 double DeltaRangeMajor;
864 int LastAxisPosition;
866 int LastTickLocation;
867 double LastLabelStart;
911 vtkActor *AxisMajorTicksActor, *AxisMinorTicksActor;
933 int AxisHasZeroLength;
947 double VerticalOffsetXTitle2D;
953 double HorizontalOffsetYTitle2D;
961 int SaveTitlePosition;
966 double TitleConstantPosition[2];
973 double LastMinDisplayCoordinate[3];
974 double LastMaxDisplayCoordinate[3];
975 double TickVector[3];
984 double ExponentOffset;
represents an object (geometry & properties) in a rendered scene
Create an axis with tick marks and labels.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int LastDrawGridlinesLocation
int LastMinorTicksVisible
void SetAxisTypeToZ(void)
Set/Get the type of this axis.
virtual void SetPoint2(double x, double y, double z)
Specify the position of the second point defining the axis.
virtual vtkCoordinate * GetPoint1Coordinate()
Specify the position of the first point defining the axis.
vtkTypeBool LabelVisibility
virtual void SetCamera(vtkCamera *)
Set/Get the camera for this axis.
void SetAxisPositionToMinMin(void)
virtual void SetPoint2(double x[3])
Specify the position of the second point defining the axis.
void SetDeltaMajor(int axis, double value)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
vtkTypeBool TitleVisibility
vtkProperty * GetAxisMajorTicksProperty()
Get/Set axis actor property (axis and its ticks)
void SetAxisMainLineProperty(vtkProperty *)
Get/Set main line axis actor property.
vtkTypeBool DrawGridpolys
void SetBounds(const double bounds[6])
Set or get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
int RenderOverlay(vtkViewport *viewport) override
Draw the axis.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Draw the axis.
vtkProp3DAxisFollower ** GetLabelProps3D()
Get label actors responsigle for drawing label text.
double ComputeMaxLabelLength(const double[3])
static vtkAxisActor * New()
Instantiate object.
void SetTickLocationToOutside(void)
double GetMajorStart(int axis)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
vtkTypeBool DrawInnerGridlines
virtual vtkCoordinate * GetPoint2Coordinate()
Specify the position of the second point defining the axis.
void SetGridlinesProperty(vtkProperty *)
Get/Set gridlines actor property (outer grid lines)
double * GetBounds(void) override
Set or get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
void SetLabelScale(int labelIndex, const double scale)
void SetTitle(const char *t)
Set/Get the title of the axis actor,.
vtkProperty * GetGridlinesProperty()
Get/Set gridlines actor property (outer grid lines)
virtual void SetLabelTextProperty(vtkTextProperty *p)
Set/Get the axis labels text property.
virtual void SetExponentLocation(int location)
Get/Set the location of the Detached Exponent related to the axis.
bool LastMajorTickPointCorrection
double GetDeltaMajor(int axis)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
vtkProperty * GetInnerGridlinesProperty()
Get/Set inner gridlines actor property.
virtual void SetPoint1(double x[3])
Specify the position of the first point defining the axis.
void SetAxisLinesProperty(vtkProperty *)
Get/Set axis actor property (axis and its ticks) (kept for compatibility)
vtkTypeBool DrawGridlines
void SetInnerGridlinesProperty(vtkProperty *)
Get/Set inner gridlines actor property.
virtual double * GetPoint1()
Specify the position of the first point defining the axis.
void SetAxisMajorTicksProperty(vtkProperty *)
Get/Set axis actor property (axis and its ticks)
void SetBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
Set or get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
int TitleAlignLocation
Hold the alignment property of the title related to the axis.
void BuildAxis(vtkViewport *viewport, bool)
void GetBounds(double bounds[6])
Set or get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
void SetAxisTypeToX(void)
Set/Get the type of this axis.
vtkTypeBool DrawGridlinesOnly
vtkTypeBool TickVisibility
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Draw the axis.
vtkProperty * GetAxisMinorTicksProperty()
Get/Set axis actor property (axis and its ticks)
vtkTypeBool AxisVisibility
int ExponentLocation
Hold the alignment property of the exponent coming from the label values.
int LastDrawInnerGridlines
void SetAxisPositionToMaxMax(void)
vtkProperty * GetGridpolysProperty()
Get/Set gridPolys actor property (grid quads)
vtkProperty * GetAxisLinesProperty()
Get/Set axis actor property (axis and its ticks) (kept for compatibility)
virtual void SetTitleAlignLocation(int location)
Get/Set the alignment of the title related to the axis.
virtual void SetTitleTextProperty(vtkTextProperty *p)
Set/Get the axis title text property.
double ComputeTitleLength(const double[3])
void SetLabelScale(const double scale)
virtual int RenderTranslucentGeometry(vtkViewport *viewport)
Draw the axis.
void SetLabels(vtkStringArray *labels)
virtual double * GetPoint2()
Specify the position of the second point defining the axis.
void SetTickLocationToInside(void)
int TickLocation
The location of the ticks.
void SetAxisPositionToMinMax(void)
vtkAxisFollower ** GetLabelActors()
Get label actors responsigle for drawing label text.
virtual void SetPoint1(double x, double y, double z)
Specify the position of the first point defining the axis.
void SetAxisMinorTicksProperty(vtkProperty *)
Get/Set axis actor property (axis and its ticks)
void SetAxisTypeToY(void)
Set/Get the type of this axis.
vtkTypeBool MinorTicksVisible
void SetMajorStart(int axis, double value)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
vtkProperty * GetAxisMainLineProperty()
Get/Set main line axis actor property.
void SetTickLocationToBoth(void)
void SetExponent(const char *t)
Set/Get the common exponent of the labels values.
void SetTitleScale(const double scale)
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Draw the axis.
int DrawGridlinesLocation
void SetGridpolysProperty(vtkProperty *)
Get/Set gridPolys actor property (grid quads)
void SetAxisPositionToMaxMin(void)
a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisA...
a virtual camera for 3D rendering
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a subclass of actor that always faces the camera
a simple class to control print indentation
represent and manipulate 3D points
map vtkPolyData to graphics primitives
concrete dataset represents vertices, lines, polygons, and triangle strips
a subclass of vtkProp3DFollower that ensures that data is always parallel to the axis defined by a vt...
represent surface properties of a 2D image
represent surface properties of a geometric object
a vtkAbstractArray subclass for strings
An actor that displays text.
An actor that displays text.
represent text properties.
record modification and/or execution time
abstract specification for Viewports
window superclass for vtkRenderWindow
auto Range(IterablePtr iterable, Options &&... opts) -> typename detail::IterableTraits< typename detail::StripPointers< IterablePtr >::type >::RangeType
Generate an iterable STL proxy object for a VTK container.
#define VTK_SIZEHINT(...)