VTK  9.2.6
vtkCubeAxesActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCubeAxesActor.h
5  Language: C++
6 
7 Copyright (c) 1993-2001 Ken Martin, Will Schroeder, Bill Lorensen
8 All rights reserve
9  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
10 
11  This software is distributed WITHOUT ANY WARRANTY; without even
12  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13  PURPOSE. See the above copyright notice for more information.
14 =========================================================================*/
59 #ifndef vtkCubeAxesActor_h
60 #define vtkCubeAxesActor_h
61 
62 #include "vtkActor.h"
63 #include "vtkRenderingAnnotationModule.h" // For export macro
64 
65 class vtkAxisActor;
66 class vtkCamera;
67 class vtkTextProperty;
68 class vtkStringArray;
69 
70 class VTKRENDERINGANNOTATION_EXPORT vtkCubeAxesActor : public vtkActor
71 {
72 public:
73  vtkTypeMacro(vtkCubeAxesActor, vtkActor);
74  void PrintSelf(ostream& os, vtkIndent indent) override;
75 
80  static vtkCubeAxesActor* New();
81 
83 
86  int RenderOpaqueGeometry(vtkViewport*) override;
87  virtual int RenderTranslucentGeometry(vtkViewport*);
89  int RenderOverlay(vtkViewport*) override;
92 
94 
97  vtkSetMacro(RebuildAxes, bool);
98  vtkGetMacro(RebuildAxes, bool);
100 
102 
108  vtkSetVector6Macro(Bounds, double);
109  using Superclass::GetBounds;
110  double* GetBounds() VTK_SIZEHINT(6) override { return this->Bounds; }
112 
114 
118  virtual void GetRenderedBounds(double rBounds[6]);
119  virtual double* GetRenderedBounds();
121 
123 
131  vtkSetVector2Macro(XAxisRange, double);
132  vtkSetVector2Macro(YAxisRange, double);
133  vtkSetVector2Macro(ZAxisRange, double);
134  vtkGetVector2Macro(XAxisRange, double);
135  vtkGetVector2Macro(YAxisRange, double);
138 
142  vtkStringArray* GetAxisLabels(int axis);
143  void SetAxisLabels(int axis, vtkStringArray* value);
145 
146  vtkGetVector2Macro(ZAxisRange, double);
147 
149 
154  void SetScreenSize(double screenSize);
155  vtkGetMacro(ScreenSize, double);
157 
159 
163  void SetLabelOffset(double offset);
164  vtkGetMacro(LabelOffset, double);
166 
168 
172  void SetTitleOffset(double offset);
173  vtkGetMacro(TitleOffset, double);
175 
177 
181  virtual void SetCamera(vtkCamera*);
182  vtkGetObjectMacro(Camera, vtkCamera);
184 
185  enum FlyMode
186  {
187  VTK_FLY_OUTER_EDGES = 0,
188  VTK_FLY_CLOSEST_TRIAD = 1,
189  VTK_FLY_FURTHEST_TRIAD = 2,
190  VTK_FLY_STATIC_TRIAD = 3,
191  VTK_FLY_STATIC_EDGES = 4
192  };
193 
195 
200  vtkSetClampMacro(FlyMode, int, VTK_FLY_OUTER_EDGES, VTK_FLY_STATIC_EDGES);
201  vtkGetMacro(FlyMode, int);
202  void SetFlyModeToOuterEdges() { this->SetFlyMode(VTK_FLY_OUTER_EDGES); }
203  void SetFlyModeToClosestTriad() { this->SetFlyMode(VTK_FLY_CLOSEST_TRIAD); }
204  void SetFlyModeToFurthestTriad() { this->SetFlyMode(VTK_FLY_FURTHEST_TRIAD); }
205  void SetFlyModeToStaticTriad() { this->SetFlyMode(VTK_FLY_STATIC_TRIAD); }
206  void SetFlyModeToStaticEdges() { this->SetFlyMode(VTK_FLY_STATIC_EDGES); }
208 
210 
214  vtkSetStringMacro(XTitle);
215  vtkGetStringMacro(XTitle);
216  vtkSetStringMacro(XUnits);
217  vtkGetStringMacro(XUnits);
218  vtkSetStringMacro(YTitle);
219  vtkGetStringMacro(YTitle);
220  vtkSetStringMacro(YUnits);
221  vtkGetStringMacro(YUnits);
222  vtkSetStringMacro(ZTitle);
223  vtkGetStringMacro(ZTitle);
224  vtkSetStringMacro(ZUnits);
225  vtkGetStringMacro(ZUnits);
227 
229 
233  vtkSetStringMacro(XLabelFormat);
234  vtkGetStringMacro(XLabelFormat);
235  vtkSetStringMacro(YLabelFormat);
236  vtkGetStringMacro(YLabelFormat);
237  vtkSetStringMacro(ZLabelFormat);
238  vtkGetStringMacro(ZLabelFormat);
240 
242 
247  vtkSetClampMacro(Inertia, int, 1, VTK_INT_MAX);
248  vtkGetMacro(Inertia, int);
250 
252 
257  vtkSetMacro(CornerOffset, double);
258  vtkGetMacro(CornerOffset, double);
260 
266  void ReleaseGraphicsResources(vtkWindow*) override;
267 
269 
272  vtkSetMacro(EnableDistanceLOD, int);
273  vtkGetMacro(EnableDistanceLOD, int);
275 
277 
280  vtkSetClampMacro(DistanceLODThreshold, double, 0.0, 1.0);
281  vtkGetMacro(DistanceLODThreshold, double);
283 
285 
288  vtkSetMacro(EnableViewAngleLOD, int);
289  vtkGetMacro(EnableViewAngleLOD, int);
291 
293 
296  vtkSetClampMacro(ViewAngleLODThreshold, double, 0., 1.);
297  vtkGetMacro(ViewAngleLODThreshold, double);
299 
301 
304  vtkSetMacro(XAxisVisibility, vtkTypeBool);
305  vtkGetMacro(XAxisVisibility, vtkTypeBool);
306  vtkBooleanMacro(XAxisVisibility, vtkTypeBool);
307  vtkSetMacro(YAxisVisibility, vtkTypeBool);
308  vtkGetMacro(YAxisVisibility, vtkTypeBool);
309  vtkBooleanMacro(YAxisVisibility, vtkTypeBool);
310  vtkSetMacro(ZAxisVisibility, vtkTypeBool);
311  vtkGetMacro(ZAxisVisibility, vtkTypeBool);
312  vtkBooleanMacro(ZAxisVisibility, vtkTypeBool);
314 
316 
319  vtkSetMacro(XAxisLabelVisibility, vtkTypeBool);
320  vtkGetMacro(XAxisLabelVisibility, vtkTypeBool);
321  vtkBooleanMacro(XAxisLabelVisibility, vtkTypeBool);
323 
324  vtkSetMacro(YAxisLabelVisibility, vtkTypeBool);
325  vtkGetMacro(YAxisLabelVisibility, vtkTypeBool);
326  vtkBooleanMacro(YAxisLabelVisibility, vtkTypeBool);
327 
328  vtkSetMacro(ZAxisLabelVisibility, vtkTypeBool);
329  vtkGetMacro(ZAxisLabelVisibility, vtkTypeBool);
330  vtkBooleanMacro(ZAxisLabelVisibility, vtkTypeBool);
331 
333 
336  vtkSetMacro(XAxisTickVisibility, vtkTypeBool);
337  vtkGetMacro(XAxisTickVisibility, vtkTypeBool);
338  vtkBooleanMacro(XAxisTickVisibility, vtkTypeBool);
340 
341  vtkSetMacro(YAxisTickVisibility, vtkTypeBool);
342  vtkGetMacro(YAxisTickVisibility, vtkTypeBool);
343  vtkBooleanMacro(YAxisTickVisibility, vtkTypeBool);
344 
345  vtkSetMacro(ZAxisTickVisibility, vtkTypeBool);
346  vtkGetMacro(ZAxisTickVisibility, vtkTypeBool);
347  vtkBooleanMacro(ZAxisTickVisibility, vtkTypeBool);
348 
350 
353  vtkSetMacro(XAxisMinorTickVisibility, vtkTypeBool);
354  vtkGetMacro(XAxisMinorTickVisibility, vtkTypeBool);
355  vtkBooleanMacro(XAxisMinorTickVisibility, vtkTypeBool);
357 
358  vtkSetMacro(YAxisMinorTickVisibility, vtkTypeBool);
359  vtkGetMacro(YAxisMinorTickVisibility, vtkTypeBool);
360  vtkBooleanMacro(YAxisMinorTickVisibility, vtkTypeBool);
361 
362  vtkSetMacro(ZAxisMinorTickVisibility, vtkTypeBool);
363  vtkGetMacro(ZAxisMinorTickVisibility, vtkTypeBool);
364  vtkBooleanMacro(ZAxisMinorTickVisibility, vtkTypeBool);
365 
366  vtkSetMacro(DrawXGridlines, vtkTypeBool);
367  vtkGetMacro(DrawXGridlines, vtkTypeBool);
368  vtkBooleanMacro(DrawXGridlines, vtkTypeBool);
369 
370  vtkSetMacro(DrawYGridlines, vtkTypeBool);
371  vtkGetMacro(DrawYGridlines, vtkTypeBool);
372  vtkBooleanMacro(DrawYGridlines, vtkTypeBool);
373 
374  vtkSetMacro(DrawZGridlines, vtkTypeBool);
375  vtkGetMacro(DrawZGridlines, vtkTypeBool);
376  vtkBooleanMacro(DrawZGridlines, vtkTypeBool);
377 
378  vtkSetMacro(DrawXInnerGridlines, vtkTypeBool);
379  vtkGetMacro(DrawXInnerGridlines, vtkTypeBool);
380  vtkBooleanMacro(DrawXInnerGridlines, vtkTypeBool);
381 
382  vtkSetMacro(DrawYInnerGridlines, vtkTypeBool);
383  vtkGetMacro(DrawYInnerGridlines, vtkTypeBool);
384  vtkBooleanMacro(DrawYInnerGridlines, vtkTypeBool);
385 
386  vtkSetMacro(DrawZInnerGridlines, vtkTypeBool);
387  vtkGetMacro(DrawZInnerGridlines, vtkTypeBool);
388  vtkBooleanMacro(DrawZInnerGridlines, vtkTypeBool);
389 
390  vtkSetMacro(DrawXGridpolys, vtkTypeBool);
391  vtkGetMacro(DrawXGridpolys, vtkTypeBool);
392  vtkBooleanMacro(DrawXGridpolys, vtkTypeBool);
393 
394  vtkSetMacro(DrawYGridpolys, vtkTypeBool);
395  vtkGetMacro(DrawYGridpolys, vtkTypeBool);
396  vtkBooleanMacro(DrawYGridpolys, vtkTypeBool);
397 
398  vtkSetMacro(DrawZGridpolys, vtkTypeBool);
399  vtkGetMacro(DrawZGridpolys, vtkTypeBool);
400  vtkBooleanMacro(DrawZGridpolys, vtkTypeBool);
401 
405  vtkTextProperty* GetTitleTextProperty(int);
406 
410  vtkTextProperty* GetLabelTextProperty(int);
411 
413 
416  void SetXAxesLinesProperty(vtkProperty*);
417  vtkProperty* GetXAxesLinesProperty();
418  void SetYAxesLinesProperty(vtkProperty*);
419  vtkProperty* GetYAxesLinesProperty();
420  void SetZAxesLinesProperty(vtkProperty*);
421  vtkProperty* GetZAxesLinesProperty();
423 
425 
428  void SetXAxesGridlinesProperty(vtkProperty*);
429  vtkProperty* GetXAxesGridlinesProperty();
430  void SetYAxesGridlinesProperty(vtkProperty*);
431  vtkProperty* GetYAxesGridlinesProperty();
432  void SetZAxesGridlinesProperty(vtkProperty*);
433  vtkProperty* GetZAxesGridlinesProperty();
435 
437 
440  void SetXAxesInnerGridlinesProperty(vtkProperty*);
441  vtkProperty* GetXAxesInnerGridlinesProperty();
442  void SetYAxesInnerGridlinesProperty(vtkProperty*);
443  vtkProperty* GetYAxesInnerGridlinesProperty();
444  void SetZAxesInnerGridlinesProperty(vtkProperty*);
445  vtkProperty* GetZAxesInnerGridlinesProperty();
447 
449 
452  void SetXAxesGridpolysProperty(vtkProperty*);
453  vtkProperty* GetXAxesGridpolysProperty();
454  void SetYAxesGridpolysProperty(vtkProperty*);
455  vtkProperty* GetYAxesGridpolysProperty();
456  void SetZAxesGridpolysProperty(vtkProperty*);
457  vtkProperty* GetZAxesGridpolysProperty();
459 
461  {
462  VTK_TICKS_INSIDE = 0,
463  VTK_TICKS_OUTSIDE = 1,
464  VTK_TICKS_BOTH = 2
465  };
466 
468 
471  vtkSetClampMacro(TickLocation, int, VTK_TICKS_INSIDE, VTK_TICKS_BOTH);
472  vtkGetMacro(TickLocation, int);
474 
475  void SetTickLocationToInside(void) { this->SetTickLocation(VTK_TICKS_INSIDE); }
476  void SetTickLocationToOutside(void) { this->SetTickLocation(VTK_TICKS_OUTSIDE); }
477  void SetTickLocationToBoth(void) { this->SetTickLocation(VTK_TICKS_BOTH); }
478 
479  void SetLabelScaling(bool, int, int, int);
480 
482 
487  void SetUseTextActor3D(int val);
488  int GetUseTextActor3D();
490 
492 
496  void SetUse2DMode(int val);
497  int GetUse2DMode();
499 
503  void SetSaveTitlePosition(int val);
504 
506 
509  vtkSetVector6Macro(OrientedBounds, double);
510  vtkGetVector6Macro(OrientedBounds, double);
512 
514 
517  vtkSetMacro(UseOrientedBounds, int);
518  vtkGetMacro(UseOrientedBounds, int);
520 
522 
525  vtkSetVector3Macro(AxisBaseForX, double);
526  vtkGetVector3Macro(AxisBaseForX, double);
528 
530 
533  vtkSetVector3Macro(AxisBaseForY, double);
534  vtkGetVector3Macro(AxisBaseForY, double);
536 
538 
541  vtkSetVector3Macro(AxisBaseForZ, double);
542  vtkGetVector3Macro(AxisBaseForZ, double);
544 
546 
550  vtkSetVector3Macro(AxisOrigin, double);
551  vtkGetVector3Macro(AxisOrigin, double);
553 
555 
558  vtkSetMacro(UseAxisOrigin, int);
559  vtkGetMacro(UseAxisOrigin, int);
561 
563 
566  vtkSetMacro(GridLineLocation, int);
567  vtkGetMacro(GridLineLocation, int);
569 
571 
576  vtkSetMacro(StickyAxes, vtkTypeBool);
577  vtkGetMacro(StickyAxes, vtkTypeBool);
578  vtkBooleanMacro(StickyAxes, vtkTypeBool);
580 
582 
589  vtkSetMacro(CenterStickyAxes, vtkTypeBool);
590  vtkGetMacro(CenterStickyAxes, vtkTypeBool);
591  vtkBooleanMacro(CenterStickyAxes, vtkTypeBool);
593 
595  {
596  VTK_GRID_LINES_ALL = 0,
597  VTK_GRID_LINES_CLOSEST = 1,
598  VTK_GRID_LINES_FURTHEST = 2
599  };
600 
601 protected:
603  ~vtkCubeAxesActor() override;
604 
610  void ComputeStickyAxesBoundingSphere(
611  vtkViewport* viewport, const double bounds[6], double sphereCenter[3], double& sphereRadius);
612 
616  void GetViewportLimitedBounds(vtkViewport* viewport, double bounds[6]);
617 
622  static void GetBoundsPointBits(
623  unsigned int pointIndex, unsigned int& xBit, unsigned int& yBit, unsigned int& zBit);
624 
628  static void GetBoundsPoint(unsigned int pointIndex, const double bounds[6], double point[3]);
629 
630  int LabelExponent(double min, double max);
631 
632  int Digits(double min, double max);
633 
634  double MaxOf(double, double);
635  double MaxOf(double, double, double, double);
636 
637  double FFix(double);
638  double FSign(double, double);
639  int FRound(double fnt);
640  int GetNumTicks(double range, double fxt);
641 
642  void UpdateLabels(vtkAxisActor** axis, int index);
643 
645 
646  int FlyMode;
647 
648  // Expose internally closest axis index computation
649  int FindClosestAxisIndex(double pts[8][3]);
650 
651  // Expose internally furthest axis index computation
652  int FindFurtherstAxisIndex(double pts[8][3]);
653 
654  // Expose internally the boundary edge fly mode axis index computation
655  void FindBoundaryEdge(int& indexOfAxisX, int& indexOfAxisY, int& indexOfAxisZ, double pts[8][3]);
656 
662  void UpdateGridLineVisibility(int axisIndex);
663 
664  // VTK_ALL_GRID_LINES 0
665  // VTK_CLOSEST_GRID_LINES 1
666  // VTK_FURTHEST_GRID_LINES 2
668 
673 
678 
684 
690 
696 
702 
704  {
705  NUMBER_OF_ALIGNED_AXIS = 4
706  };
707 
709 
713  vtkAxisActor* XAxes[NUMBER_OF_ALIGNED_AXIS];
714  vtkAxisActor* YAxes[NUMBER_OF_ALIGNED_AXIS];
715  vtkAxisActor* ZAxes[NUMBER_OF_ALIGNED_AXIS];
717 
719 
720  char* XTitle;
721  char* XUnits;
722  char* YTitle;
723  char* YUnits;
724  char* ZTitle;
725  char* ZUnits;
726 
730 
732 
736 
740 
744 
748 
752 
756 
760 
764 
765  double CornerOffset;
766 
767  int Inertia;
768 
770 
771  int InertiaLocs[3];
772 
774 
775  vtkTextProperty* TitleTextProperty[3];
776  vtkStringArray* AxisLabels[3];
777 
778  vtkTextProperty* LabelTextProperty[3];
779 
792 
793  double RenderedBounds[6];
794  double OrientedBounds[6];
796 
797  double AxisOrigin[3];
799 
800  double AxisBaseForX[3];
801  double AxisBaseForY[3];
802  double AxisBaseForZ[3];
803 
804 private:
805  vtkCubeAxesActor(const vtkCubeAxesActor&) = delete;
806  void operator=(const vtkCubeAxesActor&) = delete;
807 
808  vtkSetStringMacro(ActualXLabel);
809  vtkSetStringMacro(ActualYLabel);
810  vtkSetStringMacro(ActualZLabel);
811 
812  vtkTimeStamp BuildTime;
813  int LastUseOrientedBounds;
814  int LastXPow;
815  int LastYPow;
816  int LastZPow;
817 
818  int UserXPow;
819  int UserYPow;
820  int UserZPow;
821 
822  bool AutoLabelScaling;
823 
824  int LastXAxisDigits;
825  int LastYAxisDigits;
826  int LastZAxisDigits;
827 
828  double LastXRange[2];
829  double LastYRange[2];
830  double LastZRange[2];
831  double LastBounds[6];
832 
833  int LastFlyMode;
834 
835  int RenderAxesX[NUMBER_OF_ALIGNED_AXIS];
836  int RenderAxesY[NUMBER_OF_ALIGNED_AXIS];
837  int RenderAxesZ[NUMBER_OF_ALIGNED_AXIS];
838 
839  int NumberOfAxesX;
840  int NumberOfAxesY;
841  int NumberOfAxesZ;
842 
843  bool MustAdjustXValue;
844  bool MustAdjustYValue;
845  bool MustAdjustZValue;
846 
847  bool ForceXLabelReset;
848  bool ForceYLabelReset;
849  bool ForceZLabelReset;
850 
851  double XAxisRange[2];
852  double YAxisRange[2];
853  double ZAxisRange[2];
854 
855  double LabelScale;
856  double TitleScale;
857 
858  double ScreenSize;
859  double LabelOffset;
860  double TitleOffset;
861 
863 
867  double MajorStart[3];
868  double DeltaMajor[3];
870 
871  int RenderGeometry(bool& initialRender, vtkViewport* viewport, bool checkAxisVisibility,
872  int (vtkAxisActor::*renderMethod)(vtkViewport*));
873 
874  void TransformBounds(vtkViewport* viewport, const double bounds[6], double pts[8][3]);
875  void AdjustAxes(double bounds[6], double xCoords[NUMBER_OF_ALIGNED_AXIS][6],
876  double yCoords[NUMBER_OF_ALIGNED_AXIS][6], double zCoords[NUMBER_OF_ALIGNED_AXIS][6],
877  double xRange[2], double yRange[2], double zRange[2]);
878 
879  bool ComputeTickSize(double bounds[6]);
880  void AdjustValues(const double xRange[2], const double yRange[2], const double zRange[2]);
881  void AdjustRange(const double bounds[6]);
882  void BuildAxes(vtkViewport*);
883  void DetermineRenderAxes(vtkViewport*);
884  void SetNonDependentAttributes(void);
885  void BuildLabels(vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS]);
886  void AdjustTicksComputeRange(
887  vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS], double rangeMin, double rangeMax);
888 
889  void AutoScale(vtkViewport* viewport);
890  void AutoScale(vtkViewport* viewport, vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS]);
891  double AutoScale(vtkViewport* viewport, double screenSize, double position[3]);
892 };
893 
894 #endif
vtkTypeBool YAxisTickVisibility
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:51
void SetFlyModeToStaticEdges()
Specify a mode to control how the axes are drawn: either static, closest triad, furthest triad or out...
vtkTypeBool XAxisLabelVisibility
vtkTypeBool DrawZInnerGridlines
double * GetBounds() override=0
Return a reference to the Prop3D's composite transform.
vtkTypeBool YAxisLabelVisibility
vtkTypeBool DrawZGridlines
abstract specification for Viewports
Definition: vtkViewport.h:55
represent surface properties of a geometric object
Definition: vtkProperty.h:67
double ViewAngleLODThreshold
This determines at what view angle to geometry will make the geometry not visible.
virtual int RenderOverlay(vtkViewport *)
Definition: vtkProp.h:227
#define VTK_INT_MAX
Definition: vtkType.h:155
record modification and/or execution time
Definition: vtkTimeStamp.h:35
Create an axis with tick marks and labels.
Definition: vtkAxisActor.h:74
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkProperty * YAxesGridlinesProperty
vtkProperty * ZAxesLinesProperty
vtkTypeBool DrawYGridlines
int EnableViewAngleLOD
If enabled the actor will not be visible at a certain view angle.
double * GetBounds() override
Explicitly specify the region in space around which to draw the bounds.
a vtkAbstractArray subclass for strings
vtkTypeBool CenterStickyAxes
Flag for centering sticky axes.
void SetTickLocationToInside(void)
void SetFlyModeToFurthestTriad()
Specify a mode to control how the axes are drawn: either static, closest triad, furthest triad or out...
static vtkActor * New()
Creates an actor with the following defaults: origin(0,0,0) position=(0,0,0) scale=(1,1,1) visibility=1 pickable=1 dragable=1 orientation=(0,0,0).
vtkProperty * XAxesGridpolysProperty
vtkProperty * YAxesLinesProperty
vtkTypeBool DrawZGridpolys
vtkTypeBool XAxisVisibility
void SetFlyModeToOuterEdges()
Specify a mode to control how the axes are drawn: either static, closest triad, furthest triad or out...
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
double DistanceLODThreshold
Default is 0.80 This determines at what fraction of camera far clip range, actor is not visible...
create a plot of a bounding box edges - used for navigation
int vtkTypeBool
Definition: vtkABI.h:69
window superclass for vtkRenderWindow
Definition: vtkWindow.h:38
vtkProperty * XAxesLinesProperty
vtkProperty * ZAxesInnerGridlinesProperty
vtkTypeBool DrawYInnerGridlines
vtkTypeBool DrawXGridpolys
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkProperty * ZAxesGridpolysProperty
a virtual camera for 3D rendering
Definition: vtkCamera.h:51
double Bounds[6]
Definition: vtkProp3D.h:408
vtkTypeBool ZAxisLabelVisibility
vtkTypeBool ZAxisTickVisibility
vtkProperty * ZAxesGridlinesProperty
#define VTK_SIZEHINT(...)
vtkTypeBool DrawYGridpolys
represent text properties.
vtkTypeBool XAxisMinorTickVisibility
void SetTickLocationToOutside(void)
vtkTypeBool YAxisVisibility
void SetTickLocationToBoth(void)
vtkTypeBool XAxisTickVisibility
vtkProperty * YAxesGridpolysProperty
vtkTypeBool StickyAxes
Flag for axes stickiness.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some opaque/translucent polygonal geometry?
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Support the standard render methods.
void SetFlyModeToStaticTriad()
Specify a mode to control how the axes are drawn: either static, closest triad, furthest triad or out...
vtkProperty * YAxesInnerGridlinesProperty
vtkTypeBool DrawXGridlines
vtkProperty * XAxesGridlinesProperty
void SetFlyModeToClosestTriad()
Specify a mode to control how the axes are drawn: either static, closest triad, furthest triad or out...
vtkTypeBool ZAxisMinorTickVisibility
vtkTypeBool DrawXInnerGridlines
vtkTypeBool YAxisMinorTickVisibility
int RenderOpaqueGeometry(vtkViewport *viewport) override
Support the standard render methods.
int EnableDistanceLOD
If enabled the actor will not be visible at a certain distance from the camera.
#define max(a, b)
vtkProperty * XAxesInnerGridlinesProperty
vtkTypeBool ZAxisVisibility