VTK  9.0.1
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 =========================================================================*/
56 #ifndef vtkCubeAxesActor_h
57 #define vtkCubeAxesActor_h
58 
59 #include "vtkActor.h"
60 #include "vtkRenderingAnnotationModule.h" // For export macro
61 
62 class vtkAxisActor;
63 class vtkCamera;
64 class vtkTextProperty;
65 class vtkStringArray;
66 
67 class VTKRENDERINGANNOTATION_EXPORT vtkCubeAxesActor : public vtkActor
68 {
69 public:
70  vtkTypeMacro(vtkCubeAxesActor, vtkActor);
71  void PrintSelf(ostream& os, vtkIndent indent) override;
72 
77  static vtkCubeAxesActor* New();
78 
80 
83  int RenderOpaqueGeometry(vtkViewport*) override;
84  virtual int RenderTranslucentGeometry(vtkViewport*);
86  int RenderOverlay(vtkViewport*) override;
89 
91 
94  vtkSetMacro(RebuildAxes, bool);
95  vtkGetMacro(RebuildAxes, bool);
97 
99 
105  vtkSetVector6Macro(Bounds, double);
106  using Superclass::GetBounds;
107  double* GetBounds() VTK_SIZEHINT(6) override { return this->Bounds; }
109 
111 
115  virtual void GetRenderedBounds(double rBounds[6]);
116  virtual double* GetRenderedBounds();
118 
120 
128  vtkSetVector2Macro(XAxisRange, double);
129  vtkSetVector2Macro(YAxisRange, double);
130  vtkSetVector2Macro(ZAxisRange, double);
131  vtkGetVector2Macro(XAxisRange, double);
132  vtkGetVector2Macro(YAxisRange, double);
134 
135 
139  vtkStringArray* GetAxisLabels(int axis);
140  void SetAxisLabels(int axis, vtkStringArray* value);
142 
143  vtkGetVector2Macro(ZAxisRange, double);
144 
146 
151  void SetScreenSize(double screenSize);
152  vtkGetMacro(ScreenSize, double);
154 
156 
160  void SetLabelOffset(double offset);
161  vtkGetMacro(LabelOffset, double);
163 
165 
169  void SetTitleOffset(double offset);
170  vtkGetMacro(TitleOffset, double);
172 
174 
178  virtual void SetCamera(vtkCamera*);
179  vtkGetObjectMacro(Camera, vtkCamera);
181 
182  enum FlyMode
183  {
184  VTK_FLY_OUTER_EDGES = 0,
185  VTK_FLY_CLOSEST_TRIAD = 1,
186  VTK_FLY_FURTHEST_TRIAD = 2,
187  VTK_FLY_STATIC_TRIAD = 3,
188  VTK_FLY_STATIC_EDGES = 4
189  };
190 
192 
197  vtkSetClampMacro(FlyMode, int, VTK_FLY_OUTER_EDGES, VTK_FLY_STATIC_EDGES);
198  vtkGetMacro(FlyMode, int);
199  void SetFlyModeToOuterEdges() { this->SetFlyMode(VTK_FLY_OUTER_EDGES); }
200  void SetFlyModeToClosestTriad() { this->SetFlyMode(VTK_FLY_CLOSEST_TRIAD); }
201  void SetFlyModeToFurthestTriad() { this->SetFlyMode(VTK_FLY_FURTHEST_TRIAD); }
202  void SetFlyModeToStaticTriad() { this->SetFlyMode(VTK_FLY_STATIC_TRIAD); }
203  void SetFlyModeToStaticEdges() { this->SetFlyMode(VTK_FLY_STATIC_EDGES); }
205 
207 
211  vtkSetStringMacro(XTitle);
212  vtkGetStringMacro(XTitle);
213  vtkSetStringMacro(XUnits);
214  vtkGetStringMacro(XUnits);
215  vtkSetStringMacro(YTitle);
216  vtkGetStringMacro(YTitle);
217  vtkSetStringMacro(YUnits);
218  vtkGetStringMacro(YUnits);
219  vtkSetStringMacro(ZTitle);
220  vtkGetStringMacro(ZTitle);
221  vtkSetStringMacro(ZUnits);
222  vtkGetStringMacro(ZUnits);
224 
226 
230  vtkSetStringMacro(XLabelFormat);
231  vtkGetStringMacro(XLabelFormat);
232  vtkSetStringMacro(YLabelFormat);
233  vtkGetStringMacro(YLabelFormat);
234  vtkSetStringMacro(ZLabelFormat);
235  vtkGetStringMacro(ZLabelFormat);
237 
239 
244  vtkSetClampMacro(Inertia, int, 1, VTK_INT_MAX);
245  vtkGetMacro(Inertia, int);
247 
249 
254  vtkSetMacro(CornerOffset, double);
255  vtkGetMacro(CornerOffset, double);
257 
263  void ReleaseGraphicsResources(vtkWindow*) override;
264 
266 
269  vtkSetMacro(EnableDistanceLOD, int);
270  vtkGetMacro(EnableDistanceLOD, int);
272 
274 
277  vtkSetClampMacro(DistanceLODThreshold, double, 0.0, 1.0);
278  vtkGetMacro(DistanceLODThreshold, double);
280 
282 
285  vtkSetMacro(EnableViewAngleLOD, int);
286  vtkGetMacro(EnableViewAngleLOD, int);
288 
290 
293  vtkSetClampMacro(ViewAngleLODThreshold, double, 0., 1.);
294  vtkGetMacro(ViewAngleLODThreshold, double);
296 
298 
301  vtkSetMacro(XAxisVisibility, vtkTypeBool);
302  vtkGetMacro(XAxisVisibility, vtkTypeBool);
303  vtkBooleanMacro(XAxisVisibility, vtkTypeBool);
304  vtkSetMacro(YAxisVisibility, vtkTypeBool);
305  vtkGetMacro(YAxisVisibility, vtkTypeBool);
306  vtkBooleanMacro(YAxisVisibility, vtkTypeBool);
307  vtkSetMacro(ZAxisVisibility, vtkTypeBool);
308  vtkGetMacro(ZAxisVisibility, vtkTypeBool);
309  vtkBooleanMacro(ZAxisVisibility, vtkTypeBool);
311 
313 
316  vtkSetMacro(XAxisLabelVisibility, vtkTypeBool);
317  vtkGetMacro(XAxisLabelVisibility, vtkTypeBool);
318  vtkBooleanMacro(XAxisLabelVisibility, vtkTypeBool);
320 
321  vtkSetMacro(YAxisLabelVisibility, vtkTypeBool);
322  vtkGetMacro(YAxisLabelVisibility, vtkTypeBool);
323  vtkBooleanMacro(YAxisLabelVisibility, vtkTypeBool);
324 
325  vtkSetMacro(ZAxisLabelVisibility, vtkTypeBool);
326  vtkGetMacro(ZAxisLabelVisibility, vtkTypeBool);
327  vtkBooleanMacro(ZAxisLabelVisibility, vtkTypeBool);
328 
330 
333  vtkSetMacro(XAxisTickVisibility, vtkTypeBool);
334  vtkGetMacro(XAxisTickVisibility, vtkTypeBool);
335  vtkBooleanMacro(XAxisTickVisibility, vtkTypeBool);
337 
338  vtkSetMacro(YAxisTickVisibility, vtkTypeBool);
339  vtkGetMacro(YAxisTickVisibility, vtkTypeBool);
340  vtkBooleanMacro(YAxisTickVisibility, vtkTypeBool);
341 
342  vtkSetMacro(ZAxisTickVisibility, vtkTypeBool);
343  vtkGetMacro(ZAxisTickVisibility, vtkTypeBool);
344  vtkBooleanMacro(ZAxisTickVisibility, vtkTypeBool);
345 
347 
350  vtkSetMacro(XAxisMinorTickVisibility, vtkTypeBool);
351  vtkGetMacro(XAxisMinorTickVisibility, vtkTypeBool);
352  vtkBooleanMacro(XAxisMinorTickVisibility, vtkTypeBool);
354 
355  vtkSetMacro(YAxisMinorTickVisibility, vtkTypeBool);
356  vtkGetMacro(YAxisMinorTickVisibility, vtkTypeBool);
357  vtkBooleanMacro(YAxisMinorTickVisibility, vtkTypeBool);
358 
359  vtkSetMacro(ZAxisMinorTickVisibility, vtkTypeBool);
360  vtkGetMacro(ZAxisMinorTickVisibility, vtkTypeBool);
361  vtkBooleanMacro(ZAxisMinorTickVisibility, vtkTypeBool);
362 
363  vtkSetMacro(DrawXGridlines, vtkTypeBool);
364  vtkGetMacro(DrawXGridlines, vtkTypeBool);
365  vtkBooleanMacro(DrawXGridlines, vtkTypeBool);
366 
367  vtkSetMacro(DrawYGridlines, vtkTypeBool);
368  vtkGetMacro(DrawYGridlines, vtkTypeBool);
369  vtkBooleanMacro(DrawYGridlines, vtkTypeBool);
370 
371  vtkSetMacro(DrawZGridlines, vtkTypeBool);
372  vtkGetMacro(DrawZGridlines, vtkTypeBool);
373  vtkBooleanMacro(DrawZGridlines, vtkTypeBool);
374 
375  vtkSetMacro(DrawXInnerGridlines, vtkTypeBool);
376  vtkGetMacro(DrawXInnerGridlines, vtkTypeBool);
377  vtkBooleanMacro(DrawXInnerGridlines, vtkTypeBool);
378 
379  vtkSetMacro(DrawYInnerGridlines, vtkTypeBool);
380  vtkGetMacro(DrawYInnerGridlines, vtkTypeBool);
381  vtkBooleanMacro(DrawYInnerGridlines, vtkTypeBool);
382 
383  vtkSetMacro(DrawZInnerGridlines, vtkTypeBool);
384  vtkGetMacro(DrawZInnerGridlines, vtkTypeBool);
385  vtkBooleanMacro(DrawZInnerGridlines, vtkTypeBool);
386 
387  vtkSetMacro(DrawXGridpolys, vtkTypeBool);
388  vtkGetMacro(DrawXGridpolys, vtkTypeBool);
389  vtkBooleanMacro(DrawXGridpolys, vtkTypeBool);
390 
391  vtkSetMacro(DrawYGridpolys, vtkTypeBool);
392  vtkGetMacro(DrawYGridpolys, vtkTypeBool);
393  vtkBooleanMacro(DrawYGridpolys, vtkTypeBool);
394 
395  vtkSetMacro(DrawZGridpolys, vtkTypeBool);
396  vtkGetMacro(DrawZGridpolys, vtkTypeBool);
397  vtkBooleanMacro(DrawZGridpolys, vtkTypeBool);
398 
402  vtkTextProperty* GetTitleTextProperty(int);
403 
407  vtkTextProperty* GetLabelTextProperty(int);
408 
410 
413  void SetXAxesLinesProperty(vtkProperty*);
414  vtkProperty* GetXAxesLinesProperty();
415  void SetYAxesLinesProperty(vtkProperty*);
416  vtkProperty* GetYAxesLinesProperty();
417  void SetZAxesLinesProperty(vtkProperty*);
418  vtkProperty* GetZAxesLinesProperty();
420 
422 
425  void SetXAxesGridlinesProperty(vtkProperty*);
426  vtkProperty* GetXAxesGridlinesProperty();
427  void SetYAxesGridlinesProperty(vtkProperty*);
428  vtkProperty* GetYAxesGridlinesProperty();
429  void SetZAxesGridlinesProperty(vtkProperty*);
430  vtkProperty* GetZAxesGridlinesProperty();
432 
434 
437  void SetXAxesInnerGridlinesProperty(vtkProperty*);
438  vtkProperty* GetXAxesInnerGridlinesProperty();
439  void SetYAxesInnerGridlinesProperty(vtkProperty*);
440  vtkProperty* GetYAxesInnerGridlinesProperty();
441  void SetZAxesInnerGridlinesProperty(vtkProperty*);
442  vtkProperty* GetZAxesInnerGridlinesProperty();
444 
446 
449  void SetXAxesGridpolysProperty(vtkProperty*);
450  vtkProperty* GetXAxesGridpolysProperty();
451  void SetYAxesGridpolysProperty(vtkProperty*);
452  vtkProperty* GetYAxesGridpolysProperty();
453  void SetZAxesGridpolysProperty(vtkProperty*);
454  vtkProperty* GetZAxesGridpolysProperty();
456 
458  {
459  VTK_TICKS_INSIDE = 0,
460  VTK_TICKS_OUTSIDE = 1,
461  VTK_TICKS_BOTH = 2
462  };
463 
465 
468  vtkSetClampMacro(TickLocation, int, VTK_TICKS_INSIDE, VTK_TICKS_BOTH);
469  vtkGetMacro(TickLocation, int);
471 
472  void SetTickLocationToInside(void) { this->SetTickLocation(VTK_TICKS_INSIDE); }
473  void SetTickLocationToOutside(void) { this->SetTickLocation(VTK_TICKS_OUTSIDE); }
474  void SetTickLocationToBoth(void) { this->SetTickLocation(VTK_TICKS_BOTH); }
475 
476  void SetLabelScaling(bool, int, int, int);
477 
479 
484  void SetUseTextActor3D(int val);
485  int GetUseTextActor3D();
487 
489 
493  void SetUse2DMode(int val);
494  int GetUse2DMode();
496 
500  void SetSaveTitlePosition(int val);
501 
503 
506  vtkSetVector6Macro(OrientedBounds, double);
507  vtkGetVector6Macro(OrientedBounds, double);
509 
511 
514  vtkSetMacro(UseOrientedBounds, int);
515  vtkGetMacro(UseOrientedBounds, int);
517 
519 
522  vtkSetVector3Macro(AxisBaseForX, double);
523  vtkGetVector3Macro(AxisBaseForX, double);
525 
527 
530  vtkSetVector3Macro(AxisBaseForY, double);
531  vtkGetVector3Macro(AxisBaseForY, double);
533 
535 
538  vtkSetVector3Macro(AxisBaseForZ, double);
539  vtkGetVector3Macro(AxisBaseForZ, double);
541 
543 
547  vtkSetVector3Macro(AxisOrigin, double);
548  vtkGetVector3Macro(AxisOrigin, double);
550 
552 
555  vtkSetMacro(UseAxisOrigin, int);
556  vtkGetMacro(UseAxisOrigin, int);
558 
560 
563  vtkSetMacro(GridLineLocation, int);
564  vtkGetMacro(GridLineLocation, int);
566 
568 
573  vtkSetMacro(StickyAxes, vtkTypeBool);
574  vtkGetMacro(StickyAxes, vtkTypeBool);
575  vtkBooleanMacro(StickyAxes, vtkTypeBool);
577 
579 
586  vtkSetMacro(CenterStickyAxes, vtkTypeBool);
587  vtkGetMacro(CenterStickyAxes, vtkTypeBool);
588  vtkBooleanMacro(CenterStickyAxes, vtkTypeBool);
590 
592  {
593  VTK_GRID_LINES_ALL = 0,
594  VTK_GRID_LINES_CLOSEST = 1,
595  VTK_GRID_LINES_FURTHEST = 2
596  };
597 
598 protected:
600  ~vtkCubeAxesActor() override;
601 
607  void ComputeStickyAxesBoundingSphere(
608  vtkViewport* viewport, const double bounds[6], double sphereCenter[3], double& sphereRadius);
609 
613  void GetViewportLimitedBounds(vtkViewport* viewport, double bounds[6]);
614 
619  static void GetBoundsPointBits(
620  unsigned int pointIndex, unsigned int& xBit, unsigned int& yBit, unsigned int& zBit);
621 
625  static void GetBoundsPoint(unsigned int pointIndex, const double bounds[6], double point[3]);
626 
627  int LabelExponent(double min, double max);
628 
629  int Digits(double min, double max);
630 
631  double MaxOf(double, double);
632  double MaxOf(double, double, double, double);
633 
634  double FFix(double);
635  double FSign(double, double);
636  int FRound(double fnt);
637  int GetNumTicks(double range, double fxt);
638 
639  void UpdateLabels(vtkAxisActor** axis, int index);
640 
642 
643  int FlyMode;
644 
645  // Expose internally closest axis index computation
646  int FindClosestAxisIndex(double pts[8][3]);
647 
648  // Expose internally furthest axis index computation
649  int FindFurtherstAxisIndex(double pts[8][3]);
650 
651  // Expose internally the boundary edge fly mode axis index computation
652  void FindBoundaryEdge(int& indexOfAxisX, int& indexOfAxisY, int& indexOfAxisZ, double pts[8][3]);
653 
659  void UpdateGridLineVisibility(int axisIndex);
660 
661  // VTK_ALL_GRID_LINES 0
662  // VTK_CLOSEST_GRID_LINES 1
663  // VTK_FURTHEST_GRID_LINES 2
665 
670 
675 
681 
687 
693 
699 
701  {
702  NUMBER_OF_ALIGNED_AXIS = 4
703  };
704 
706 
710  vtkAxisActor* XAxes[NUMBER_OF_ALIGNED_AXIS];
711  vtkAxisActor* YAxes[NUMBER_OF_ALIGNED_AXIS];
712  vtkAxisActor* ZAxes[NUMBER_OF_ALIGNED_AXIS];
714 
716 
717  char* XTitle;
718  char* XUnits;
719  char* YTitle;
720  char* YUnits;
721  char* ZTitle;
722  char* ZUnits;
723 
727 
729 
733 
737 
741 
745 
749 
753 
757 
761 
762  double CornerOffset;
763 
764  int Inertia;
765 
767 
768  int InertiaLocs[3];
769 
771 
772  vtkTextProperty* TitleTextProperty[3];
773  vtkStringArray* AxisLabels[3];
774 
775  vtkTextProperty* LabelTextProperty[3];
776 
789 
790  double RenderedBounds[6];
791  double OrientedBounds[6];
793 
794  double AxisOrigin[3];
796 
797  double AxisBaseForX[3];
798  double AxisBaseForY[3];
799  double AxisBaseForZ[3];
800 
801 private:
802  vtkCubeAxesActor(const vtkCubeAxesActor&) = delete;
803  void operator=(const vtkCubeAxesActor&) = delete;
804 
805  vtkSetStringMacro(ActualXLabel);
806  vtkSetStringMacro(ActualYLabel);
807  vtkSetStringMacro(ActualZLabel);
808 
809  vtkTimeStamp BuildTime;
810  int LastUseOrientedBounds;
811  int LastXPow;
812  int LastYPow;
813  int LastZPow;
814 
815  int UserXPow;
816  int UserYPow;
817  int UserZPow;
818 
819  bool AutoLabelScaling;
820 
821  int LastXAxisDigits;
822  int LastYAxisDigits;
823  int LastZAxisDigits;
824 
825  double LastXRange[2];
826  double LastYRange[2];
827  double LastZRange[2];
828  double LastBounds[6];
829 
830  int LastFlyMode;
831 
832  int RenderAxesX[NUMBER_OF_ALIGNED_AXIS];
833  int RenderAxesY[NUMBER_OF_ALIGNED_AXIS];
834  int RenderAxesZ[NUMBER_OF_ALIGNED_AXIS];
835 
836  int NumberOfAxesX;
837  int NumberOfAxesY;
838  int NumberOfAxesZ;
839 
840  bool MustAdjustXValue;
841  bool MustAdjustYValue;
842  bool MustAdjustZValue;
843 
844  bool ForceXLabelReset;
845  bool ForceYLabelReset;
846  bool ForceZLabelReset;
847 
848  double XAxisRange[2];
849  double YAxisRange[2];
850  double ZAxisRange[2];
851 
852  double LabelScale;
853  double TitleScale;
854 
855  double ScreenSize;
856  double LabelOffset;
857  double TitleOffset;
858 
860 
864  double MajorStart[3];
865  double DeltaMajor[3];
867 
868  int RenderGeometry(bool& initialRender, vtkViewport* viewport, bool checkAxisVisibility,
869  int (vtkAxisActor::*renderMethod)(vtkViewport*));
870 
871  void TransformBounds(vtkViewport* viewport, const double bounds[6], double pts[8][3]);
872  void AdjustAxes(double bounds[6], double xCoords[NUMBER_OF_ALIGNED_AXIS][6],
873  double yCoords[NUMBER_OF_ALIGNED_AXIS][6], double zCoords[NUMBER_OF_ALIGNED_AXIS][6],
874  double xRange[2], double yRange[2], double zRange[2]);
875 
876  bool ComputeTickSize(double bounds[6]);
877  void AdjustValues(const double xRange[2], const double yRange[2], const double zRange[2]);
878  void AdjustRange(const double bounds[6]);
879  void BuildAxes(vtkViewport*);
880  void DetermineRenderAxes(vtkViewport*);
881  void SetNonDependentAttributes(void);
882  void BuildLabels(vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS]);
883  void AdjustTicksComputeRange(
884  vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS], double rangeMin, double rangeMax);
885 
886  void AutoScale(vtkViewport* viewport);
887  void AutoScale(vtkViewport* viewport, vtkAxisActor* axes[NUMBER_OF_ALIGNED_AXIS]);
888  double AutoScale(vtkViewport* viewport, double screenSize, double position[3]);
889 };
890 
891 #endif
vtkTypeBool YAxisTickVisibility
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:45
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:44
represent surface properties of a geometric object
Definition: vtkProperty.h:61
double ViewAngleLODThreshold
This determines at what view angle to geometry will make the geometry not visible.
virtual int RenderOverlay(vtkViewport *)
Definition: vtkProp.h:224
#define VTK_INT_MAX
Definition: vtkType.h:155
record modification and/or execution time
Definition: vtkTimeStamp.h:32
Create an axis with tick marks and labels.
Definition: vtkAxisActor.h:71
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:37
vtkProperty * XAxesLinesProperty
vtkProperty * ZAxesInnerGridlinesProperty
vtkTypeBool DrawYInnerGridlines
vtkTypeBool DrawXGridpolys
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkProperty * ZAxesGridpolysProperty
a virtual camera for 3D rendering
Definition: vtkCamera.h:45
double Bounds[6]
Definition: vtkProp3D.h:345
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