VTK  9.4.20250512
vtkAxisActor.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
63#ifndef vtkAxisActor_h
64#define vtkAxisActor_h
65
66#include "vtkActor.h"
67#include "vtkDeprecation.h" // for Deprecation macro
68#include "vtkNew.h" // For vtkNew
69#include "vtkRenderingAnnotationModule.h" // For export macro
70#include "vtkSmartPointer.h" // For vtkSmartPointer
71#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
72
73#include <memory>
74#include <string>
75
76VTK_ABI_NAMESPACE_BEGIN
77class vtkAxisFollower;
78class vtkCamera;
79class vtkCoordinate;
80class vtkPoints;
81class vtkPolyData;
84class vtkStringArray;
85class vtkTextActor;
87class vtkTextActor3D;
88class vtkTextProperty;
89class vtkVectorText;
90
91class VTKRENDERINGANNOTATION_EXPORT VTK_MARSHALAUTO vtkAxisActor : public vtkActor
92{
93public:
94 vtkTypeMacro(vtkAxisActor, vtkActor);
95 void PrintSelf(ostream& os, vtkIndent indent) override;
96
100 static vtkAxisActor* New();
101
103
107 virtual void SetPoint1(double x[3]) { this->SetPoint1(x[0], x[1], x[2]); }
108 virtual void SetPoint1(double x, double y, double z);
109 virtual double* GetPoint1();
111
113
117 virtual void SetPoint2(double x[3]) { this->SetPoint2(x[0], x[1], x[2]); }
118 virtual void SetPoint2(double x, double y, double z);
119 virtual double* GetPoint2();
121
123
128 vtkSetVector2Macro(Range, double);
129 vtkGetVectorMacro(Range, double, 2);
131
133
137 void SetBounds(const double bounds[6]);
138 void SetBounds(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
139 double* GetBounds() VTK_SIZEHINT(6) override;
140 void GetBounds(double bounds[6]);
142
144
147 vtkSetStringMacro(LabelFormat);
148 vtkGetStringMacro(LabelFormat);
150
152
159 vtkSetMacro(UseTextActor3D, bool);
160 vtkGetMacro(UseTextActor3D, bool);
162
164
168 vtkSetMacro(MinorTicksVisible, bool);
169 vtkGetMacro(MinorTicksVisible, bool);
170 vtkBooleanMacro(MinorTicksVisible, bool);
172
174
177 void SetTitle(const std::string& title);
178 vtkGetMacro(Title, std::string);
180
182
185 void SetExponent(const std::string& exp);
186 vtkGetMacro(Exponent, std::string);
188
190
194 vtkSetMacro(MajorTickSize, double);
195 vtkGetMacro(MajorTickSize, double);
197
199
203 vtkSetMacro(MinorTickSize, double);
204 vtkGetMacro(MinorTickSize, double);
206
208 {
209 VTK_TICKS_INSIDE = 0,
210 VTK_TICKS_OUTSIDE = 1,
211 VTK_TICKS_BOTH = 2
212 };
213
215
221 vtkSetClampMacro(TickLocation, int, VTK_TICKS_INSIDE, VTK_TICKS_BOTH);
222 vtkGetMacro(TickLocation, int);
224
225 void SetTickLocationToInside() { this->SetTickLocation(VTK_TICKS_INSIDE); }
226 void SetTickLocationToOutside() { this->SetTickLocation(VTK_TICKS_OUTSIDE); }
227 void SetTickLocationToBoth() { this->SetTickLocation(VTK_TICKS_BOTH); }
228
230
234 vtkSetMacro(AxisVisibility, bool);
235 vtkGetMacro(AxisVisibility, bool);
236 vtkBooleanMacro(AxisVisibility, bool);
238
240
244 vtkSetMacro(TickVisibility, bool);
245 vtkGetMacro(TickVisibility, bool);
246 vtkBooleanMacro(TickVisibility, bool);
248
250
254 vtkSetMacro(LabelVisibility, bool);
255 vtkGetMacro(LabelVisibility, bool);
256 vtkBooleanMacro(LabelVisibility, bool);
258
260
264 vtkSetMacro(TitleVisibility, bool);
265 vtkGetMacro(TitleVisibility, bool);
266 vtkBooleanMacro(TitleVisibility, bool);
268
270
274 vtkSetMacro(ExponentVisibility, bool);
275 vtkGetMacro(ExponentVisibility, bool);
276 vtkBooleanMacro(ExponentVisibility, bool);
278
280
284 vtkSetMacro(LastMajorTickPointCorrection, bool);
285 vtkGetMacro(LastMajorTickPointCorrection, bool);
286 vtkBooleanMacro(LastMajorTickPointCorrection, bool);
288
290 {
291 VTK_ALIGN_TOP = 0,
292 VTK_ALIGN_BOTTOM = 1,
293 VTK_ALIGN_POINT1 = 2,
294 VTK_ALIGN_POINT2 = 3
295 };
296
298
303 virtual void SetTitleAlignLocation(int location);
304 vtkGetMacro(TitleAlignLocation, int);
306
308
313 virtual void SetExponentLocation(int location);
314 vtkGetMacro(ExponentLocation, int);
316
318
324
326
332
334
340
342
348
350
356
358
364
366
372
374
380
382
388
390
394 vtkSetMacro(DrawGridlines, bool);
395 vtkGetMacro(DrawGridlines, bool);
396 vtkBooleanMacro(DrawGridlines, bool);
398
400
406 vtkSetMacro(DrawGridlinesOnly, bool);
407 vtkGetMacro(DrawGridlinesOnly, bool);
408 vtkBooleanMacro(DrawGridlinesOnly, bool);
410
411 vtkSetMacro(DrawGridlinesLocation, int);
412 vtkGetMacro(DrawGridlinesLocation, int);
413
415
419 vtkSetMacro(DrawInnerGridlines, bool);
420 vtkGetMacro(DrawInnerGridlines, bool);
421 vtkBooleanMacro(DrawInnerGridlines, bool);
423
425
429 vtkSetMacro(GridlineXLength, double);
430 vtkGetMacro(GridlineXLength, double);
431 vtkSetMacro(GridlineYLength, double);
432 vtkGetMacro(GridlineYLength, double);
433 vtkSetMacro(GridlineZLength, double);
434 vtkGetMacro(GridlineZLength, double);
436
438
442 vtkSetMacro(DrawGridpolys, bool);
443 vtkGetMacro(DrawGridpolys, bool);
444 vtkBooleanMacro(DrawGridpolys, bool);
446
448 {
449 VTK_AXIS_TYPE_X = 0,
450 VTK_AXIS_TYPE_Y = 1,
451 VTK_AXIS_TYPE_Z = 2
452 };
453
455
459 vtkSetClampMacro(AxisType, int, VTK_AXIS_TYPE_X, VTK_AXIS_TYPE_Z);
460 vtkGetMacro(AxisType, int);
461 void SetAxisTypeToX() { this->SetAxisType(VTK_AXIS_TYPE_X); }
462 void SetAxisTypeToY() { this->SetAxisType(VTK_AXIS_TYPE_Y); }
463 void SetAxisTypeToZ() { this->SetAxisType(VTK_AXIS_TYPE_Z); }
465
467 {
468 VTK_AXIS_POS_MINMIN = 0,
469 VTK_AXIS_POS_MINMAX = 1,
470 VTK_AXIS_POS_MAXMAX = 2,
471 VTK_AXIS_POS_MAXMIN = 3
472 };
473
475
479 vtkSetMacro(Log, bool);
480 vtkGetMacro(Log, bool);
481 vtkBooleanMacro(Log, bool);
483
485
493 vtkSetClampMacro(AxisPosition, int, VTK_AXIS_POS_MINMIN, VTK_AXIS_POS_MAXMIN);
494 vtkGetMacro(AxisPosition, int);
496
497 void SetAxisPositionToMinMin() { this->SetAxisPosition(VTK_AXIS_POS_MINMIN); }
498 void SetAxisPositionToMinMax() { this->SetAxisPosition(VTK_AXIS_POS_MINMAX); }
499 void SetAxisPositionToMaxMax() { this->SetAxisPosition(VTK_AXIS_POS_MAXMAX); }
500 void SetAxisPositionToMaxMin() { this->SetAxisPosition(VTK_AXIS_POS_MAXMIN); }
501
503
507 virtual void SetCamera(vtkCamera*);
510
512
515 int RenderOpaqueGeometry(vtkViewport* viewport) override;
518 int RenderOverlay(vtkViewport* viewport) override;
521
528
530
534 VTK_DEPRECATED_IN_9_5_0("Argument is not used anymore, please use the variant without argument")
535 double ComputeMaxLabelLength(const double[3]) { return this->ComputeMaxLabelLength(); }
538
540
544 VTK_DEPRECATED_IN_9_5_0("Argument is not used anymore, please use the variant without argument")
545 double ComputeTitleLength(const double[3]) { return this->ComputeTitleLength(); }
548
550
553 void SetLabelScale(double scale);
554 void SetLabelScale(int labelIndex, double scale);
555 void SetTitleScale(double scale);
556 void SetExponentScale(double scale);
558
560
566 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void SetMinorStart(double){};
567 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") double GetMinorStart() { return 0.; };
568
569 double GetMajorStart(int axis);
570 void SetMajorStart(int axis, double value);
571
572 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void SetDeltaMinor(double){};
573 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") double GetDeltaMinor() { return 1.; };
574
575 double GetDeltaMajor(int axis);
576 void SetDeltaMajor(int axis, double value);
578
580
586 vtkSetMacro(MinorRangeStart, double);
587 vtkGetMacro(MinorRangeStart, double);
588 vtkSetMacro(MajorRangeStart, double);
589 vtkGetMacro(MajorRangeStart, double);
591
593
597 vtkSetMacro(DeltaRangeMinor, double);
598 vtkGetMacro(DeltaRangeMinor, double);
599 vtkSetMacro(DeltaRangeMajor, double);
600 vtkGetMacro(DeltaRangeMajor, double);
602
604
605 void BuildAxis(vtkViewport* viewport, bool);
606
612
617
619
622 VTK_DEPRECATED_IN_9_5_0("This is not safe. Use GetLabelFollower instead.")
623 vtkAxisFollower** GetLabelActors();
624 vtkAxisFollower* GetLabelFollower(int index);
625 int GetNumberOfLabelFollowers() { return this->GetNumberOfLabelsBuilt(); }
627
629
635
637
640 VTK_DEPRECATED_IN_9_5_0("This is not safe. Use GetLabelFollower3D instead.")
641 vtkProp3DAxisFollower** GetLabelProps3D();
642 vtkProp3DAxisFollower* GetLabelFollower3D(int index);
643 int GetNumberOfLabelFollower3D() { return this->GetNumberOfLabelsBuilt(); }
645
647
653
655
659 vtkGetMacro(NumberOfLabelsBuilt, int);
661
663
667 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") vtkSetMacro(CalculateTitleOffset, bool);
668 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") vtkGetMacro(CalculateTitleOffset, bool);
669 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void CalculateTitleOffsetOn() {}
670 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void CalculateTitleOffsetOff() {}
672
674
678 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") vtkSetMacro(CalculateLabelOffset, bool);
679 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") vtkGetMacro(CalculateLabelOffset, bool);
680 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void CalculateLabelOffsetOn() {}
681 VTK_DEPRECATED_IN_9_5_0("Member is not used anymore") void CalculateLabelOffsetOff() {}
683
685
689 vtkSetMacro(Use2DMode, bool);
690 vtkGetMacro(Use2DMode, bool);
692
694
698 vtkSetMacro(VerticalOffsetXTitle2D, double);
699 vtkGetMacro(VerticalOffsetXTitle2D, double);
701
703
707 vtkSetMacro(HorizontalOffsetYTitle2D, double);
708 vtkGetMacro(HorizontalOffsetYTitle2D, double);
710
712
716 vtkSetMacro(SaveTitlePosition, int);
717 vtkGetMacro(SaveTitlePosition, int);
719
721
725 vtkSetVector3Macro(AxisBaseForX, double);
726 vtkGetVector3Macro(AxisBaseForX, double);
728
730
734 vtkSetVector3Macro(AxisBaseForY, double);
735 vtkGetVector3Macro(AxisBaseForY, double);
737
739
743 vtkSetVector3Macro(AxisBaseForZ, double);
744 vtkGetVector3Macro(AxisBaseForZ, double);
746
748
752 vtkSetMacro(AxisOnOrigin, bool);
753 vtkGetMacro(AxisOnOrigin, bool);
755
757
761 vtkSetMacro(ScreenSize, double);
762 vtkGetMacro(ScreenSize, double);
764
766
770 vtkSetMacro(LabelOffset, double);
771 vtkGetMacro(LabelOffset, double);
773
775
779 vtkSetMacro(ExponentOffset, double);
780 vtkGetMacro(ExponentOffset, double);
782
784
791 vtkSetVector2Macro(TitleOffset, double);
792 vtkGetVector2Macro(TitleOffset, double);
794
795protected:
797 ~vtkAxisActor() override;
798
799private:
800 vtkAxisActor(const vtkAxisActor&) = delete;
801 void operator=(const vtkAxisActor&) = delete;
802
803 void TransformBounds(vtkViewport*, double bnds[6]);
804
805 void BuildLabels(vtkViewport*, bool);
806 void BuildLabels2D(vtkViewport*, bool);
807 void SetLabelPositions(vtkViewport*, bool);
808 void SetLabelPositions2D(vtkViewport*, bool);
809
816 void BuildTitle(bool);
817
822 void BuildExponent(bool force);
823
824 void BuildExponent2D(vtkViewport* viewport, bool force);
825
826 void BuildTitle2D(vtkViewport* viewport, bool);
827
831 void Get2DPosition(
832 vtkViewport* viewport, double multiplier, double scenepos[3], double displayPos[2]);
833
834 void SetAxisPointsAndLines();
835
836 bool BuildTickPoints(double p1[3], double p2[3], bool force);
837
838 // Build major ticks for linear scale.
839 void BuildMajorTicks(double p1[3], double p2[3], double localCoordSys[3][3]);
840
841 // Build major ticks for logarithmic scale.
842 void BuildMajorTicksLog(double p1[3], double p2[3], double localCoordSys[3][3]);
843
844 // Build minor ticks for linear scale.
845 void BuildMinorTicks(double p1[3], double p2[3], double localCoordSys[3][3]);
846
847 // Build minor ticks for logarithmic scale enabled
848 void BuildMinorTicksLog(double p1[3], double p2[3], double localCoordSys[3][3]);
849
850 void BuildAxisGridLines(double p1[3], double p2[3], double localCoordSys[3][3]);
851
852 bool TickVisibilityChanged();
853
854 vtkProperty* NewTitleProperty();
855 vtkProperty* NewLabelProperty();
856
857 bool BoundsDisplayCoordinateChanged(vtkViewport* viewport);
858
860
863 vtkProp* GetTitleActorInternal();
864 vtkProp* GetLabelActorInternal(int index);
865 vtkProp* GetExponentActorInternal();
867
877 void UpdateTitleActorProperty();
878 void UpdateLabelActorProperty(int idx);
879 void UpdateExponentActorProperty();
881
882 std::string Title;
883 std::string Exponent;
884 char* LabelFormat = nullptr;
885 double Range[2] = { 0.0, 1.0 };
886 double LastRange[2] = { -1.0, -1.0 };
887 bool UseTextActor3D = false;
888 int NumberOfLabelsBuilt = 0;
889 bool MinorTicksVisible = true;
890 bool LastMinorTicksVisible = true;
891
897 int TickLocation = VTK_TICKS_INSIDE;
898
903 int TitleAlignLocation = VTK_ALIGN_BOTTOM;
904
909 int ExponentLocation = VTK_ALIGN_POINT2;
910
911 bool DrawGridlines = false;
912 bool DrawGridlinesOnly = false;
913 bool LastDrawGridlines = false;
914 int DrawGridlinesLocation = 0; // 0: all | 1: closest | 2: furthest
915 int LastDrawGridlinesLocation = 0; // 0: all | 1: closest | 2: furthest
916 double GridlineXLength = 1.0;
917 double GridlineYLength = 1.0;
918 double GridlineZLength = 1.0;
919
920 bool DrawInnerGridlines = false;
921
922 bool DrawGridpolys = false;
923
924 bool AxisVisibility = true;
925 bool TickVisibility = true;
926 bool LastTickVisibility = true;
927 bool LabelVisibility = true;
928 bool TitleVisibility = true;
929 bool ExponentVisibility = false;
930 bool LastMajorTickPointCorrection = false;
931
932 bool Log = false;
933 int AxisType = VTK_AXIS_TYPE_X;
934 int AxisPosition = VTK_AXIS_POS_MINMIN;
935
936 // coordinate system for axisAxtor, relative to world coordinates
937 double AxisBaseForX[3] = { 1.0, 0.0, 0.0 };
938 double AxisBaseForY[3] = { 0.0, 1.0, 0.0 };
939 double AxisBaseForZ[3] = { 0.0, 0.0, 1.0 };
940
941 vtkNew<vtkCoordinate> Point1Coordinate;
942 vtkNew<vtkCoordinate> Point2Coordinate;
943
944 double MajorTickSize = 1.0;
945 double MinorTickSize = 0.5;
946
947 // For each axis (for the inner gridline generation)
948 double MajorStart[3] = { 0.0, 0.0, 0.0 };
949 double DeltaMajor[3] = { 1.0, 1.0, 1.0 };
950
951 // For the ticks, w.r.t to the set range
952 double MajorRangeStart = 0.0;
953 double MinorRangeStart = 0.0;
954
958 double DeltaRangeMinor = 1.0;
959
963 double DeltaRangeMajor = 1.0;
964
965 int LastAxisPosition = -1;
966 int LastTickLocation = -1;
967
968 vtkNew<vtkPoints> MinorTickPts;
969 vtkNew<vtkPoints> MajorTickPts;
970 vtkNew<vtkPoints> GridlinePts;
971 vtkNew<vtkPoints> InnerGridlinePts;
972 vtkNew<vtkPoints> GridpolyPts;
973
974 std::unique_ptr<vtkTextActorInterfaceInternal> TitleProp;
975 vtkSmartPointer<vtkTextProperty> TitleTextProperty;
976
978
981 std::unique_ptr<vtkTextActorInterfaceInternal> ExponentProp;
983
984 std::vector<std::shared_ptr<vtkTextActorInterfaceInternal>> LabelProps;
985 vtkSmartPointer<vtkTextProperty> LabelTextProperty;
986
987 // VTK_DEPRECATED_IN_9_5_0
988 std::vector<vtkAxisFollower*> LabelActors;
989 // VTK_DEPRECATED_IN_9_5_0
990 std::vector<vtkProp3DAxisFollower*> LabelProps3D;
991
992 // Main line axis
993 vtkNew<vtkPolyData> AxisLines;
994 vtkNew<vtkActor> AxisLinesActor;
995
996 // Ticks of the axis
997 vtkNew<vtkPolyData> AxisMajorTicks, AxisMinorTicks;
998 vtkNew<vtkActor> AxisMajorTicksActor, AxisMinorTicksActor;
999
1000 vtkNew<vtkPolyData> Gridlines;
1001 vtkNew<vtkActor> GridlinesActor;
1002 vtkNew<vtkPolyData> InnerGridlines;
1003 vtkNew<vtkActor> InnerGridlinesActor;
1004 vtkNew<vtkPolyData> Gridpolys;
1005 vtkNew<vtkActor> GridpolysActor;
1006
1008 vtkTimeStamp BuildTime;
1009 vtkTimeStamp BuildTickPointsTime;
1010 vtkTimeStamp BoundsTime;
1011 vtkTimeStamp LabelBuildTime;
1012 vtkTimeStamp TitleTextTime;
1013 vtkTimeStamp ExponentTextTime;
1014
1015 bool AxisOnOrigin = false;
1016
1017 bool AxisHasZeroLength = false;
1018
1019 bool CalculateTitleOffset = false; // VTK_DEPRECATED_IN_9_5_0
1020 bool CalculateLabelOffset = false; // VTK_DEPRECATED_IN_9_5_0
1021
1025 bool Use2DMode = false;
1026
1031 double VerticalOffsetXTitle2D = -40;
1032
1037 double HorizontalOffsetYTitle2D = -50;
1038
1045 int SaveTitlePosition = 0;
1046
1050 double TitleConstantPosition[2] = { 0.0, 0.0 };
1051
1055 bool NeedBuild2D = false;
1056
1057 double LastMinDisplayCoordinate[3] = { 0.0, 0.0, 0.0 };
1058 double LastMaxDisplayCoordinate[3] = { 0.0, 0.0, 0.0 };
1059 double TickVector[3] = { 0.0, 0.0, 0.0 };
1060
1064 double ScreenSize = 10.0;
1065
1067
1070 double LabelOffset = 30.0;
1071 double TitleOffset[2] = { 20.0, 20.0 };
1072 double ExponentOffset = 20.0;
1074};
1075
1076VTK_ABI_NAMESPACE_END
1077#endif
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:151
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.
void SetTickLocationToBoth()
void SetAxisPositionToMinMax()
virtual void SetPoint2(double x, double y, double z)
Specify the position of the second point defining the axis.
virtual void SetCamera(vtkCamera *)
Set/Get the camera for this axis.
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...
void SetAxisMainLineProperty(vtkProperty *)
Get/Set main line axis actor property.
virtual double * GetPoint1()
Specify the position of the first point defining the axis.
double ComputeTitleLength()
Compute the diagonal length of the Title text.
vtkProperty * GetGridlinesProperty()
Get/Set gridlines actor property (outer grid lines)
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.
~vtkAxisActor() override
double ComputeMaxLabelLength(const double[3])
Compute the max diagonal lentgh of the labels.
double GetMajorStart(int axis)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
void SetGridlinesProperty(vtkProperty *)
Get/Set gridlines actor property (outer grid lines)
void SetAxisTypeToZ()
Set/Get the type of this axis.
double ComputeMaxLabelLength()
Compute the max diagonal lentgh of the labels.
vtkProperty * GetGridpolysProperty()
Get/Set gridPolys actor property (grid quads)
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.
vtkCamera * GetCamera()
Set/Get the camera for this axis.
virtual vtkCoordinate * GetPoint2Coordinate()
Specify the position of the second point defining the axis.
vtkProperty * GetInnerGridlinesProperty()
Get/Set inner gridlines actor property.
void SetAxisPositionToMinMin()
double GetDeltaMajor(int axis)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
double * GetBounds() override
Set or get the bounds for this Actor as (Xmin,Xmax,Ymin,Ymax,Zmin,Zmax).
vtkTextProperty * GetLabelTextProperty()
Set/Get the axis labels text property.
void SetLabelScale(int labelIndex, double scale)
Set scale on underlying actor.
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)
void SetInnerGridlinesProperty(vtkProperty *)
Get/Set inner gridlines actor property.
vtkProperty * GetAxisMajorTicksProperty()
Get/Set axis actor property (axis and its ticks)
void SetAxisMajorTicksProperty(vtkProperty *)
Get/Set axis actor property (axis and its ticks)
void SetLabelScale(double scale)
Set scale on underlying actor.
void SetTickLocationToOutside()
void SetExponentScale(double scale)
Set scale on underlying actor.
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).
void BuildAxis(vtkViewport *viewport, bool)
virtual double * GetPoint2()
Specify the position of the second point defining the axis.
void SetAxisTypeToY()
Set/Get the type of this axis.
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
vtkAxisFollower * GetExponentActor()
Get exponent follower actor.
int RenderOpaqueGeometry(vtkViewport *viewport) override
Draw the axis.
void SetAxisTypeToX()
Set/Get the type of this axis.
void SetTitleScale(double scale)
Set scale on underlying actor.
virtual void SetTitleAlignLocation(int location)
Get/Set the alignment of the title related to the axis.
vtkProperty * GetAxisMainLineProperty()
Get/Set main line axis actor property.
vtkAxisFollower * GetTitleActor()
Get title actor and it is responsible for drawing title text.
virtual void SetTitleTextProperty(vtkTextProperty *p)
Set/Get the axis title text property.
double ComputeTitleLength(const double[3])
Compute the diagonal length of the Title text.
void SetAxisPositionToMaxMin()
virtual vtkCoordinate * GetPoint1Coordinate()
Specify the position of the first point defining the axis.
virtual int RenderTranslucentGeometry(vtkViewport *viewport)
Draw the axis.
void SetTickLocationToInside()
void SetLabels(vtkStringArray *labels)
vtkProperty * GetAxisMinorTicksProperty()
Get/Set axis actor property (axis and its ticks)
vtkProp3DAxisFollower * GetExponentProp3D()
Get title actor and it is responsible for drawing title text.
vtkTextProperty * GetTitleTextProperty()
Set/Get the axis title text property.
void SetAxisPositionToMaxMax()
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)
static vtkAxisActor * New()
Instantiate object.
void SetMajorStart(int axis, double value)
Set/Get the starting position for minor and major tick points, and the delta values that determine th...
vtkProp3DAxisFollower * GetTitleProp3D()
Get title actor and it is responsible for drawing title text.
vtkProperty * GetAxisLinesProperty()
Get/Set axis actor property (axis and its ticks) (kept for compatibility)
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Draw the axis.
void SetGridpolysProperty(vtkProperty *)
Get/Set gridPolys actor property (grid quads)
a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisA...
a virtual camera for 3D rendering
Definition vtkCamera.h:151
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a simple class to control print indentation
Definition vtkIndent.h:108
Allocate and hold a VTK object.
Definition vtkNew.h:167
represent and manipulate 3D points
Definition vtkPoints.h:139
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...
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:66
represent surface properties of a geometric object
Hold a reference to a vtkObjectBase instance.
a vtkAbstractArray subclass for strings
An actor that displays text.
VTK Internal interface to manipulate text actors from vtkAxisActor.
An actor that displays text.
represent text properties.
record modification and/or execution time
create polygonal text
abstract specification for Viewports
Definition vtkViewport.h:66
window superclass for vtkRenderWindow
Definition vtkWindow.h:48
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_DEPRECATED_IN_9_5_0(reason)
#define VTK_SIZEHINT(...)
#define VTK_MARSHALAUTO