50 #ifndef vtkAxisActor_h 51 #define vtkAxisActor_h 54 #include "vtkRenderingAnnotationModule.h" 88 virtual void SetPoint1(
double x,
double y,
double z);
89 virtual double* GetPoint1();
98 virtual void SetPoint2(
double x,
double y,
double z);
99 virtual double* GetPoint2();
107 vtkSetVector2Macro(Range,
double);
108 vtkGetVectorMacro(Range,
double, 2);
115 void SetBounds(
const double bounds[6]);
116 void SetBounds(
double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax);
125 vtkSetStringMacro(LabelFormat);
126 vtkGetStringMacro(LabelFormat);
137 vtkSetMacro(UseTextActor3D,
int);
138 vtkGetMacro(UseTextActor3D,
int);
154 void SetTitle(
const char* t);
155 vtkGetStringMacro(Title);
162 void SetExponent(
const char* t);
163 vtkGetStringMacro(Exponent);
170 vtkSetMacro(MajorTickSize,
double);
171 vtkGetMacro(MajorTickSize,
double);
178 vtkSetMacro(MinorTickSize,
double);
179 vtkGetMacro(MinorTickSize,
double);
184 VTK_TICKS_INSIDE = 0,
185 VTK_TICKS_OUTSIDE = 1,
195 vtkSetClampMacro(TickLocation,
int, VTK_TICKS_INSIDE, VTK_TICKS_BOTH);
196 vtkGetMacro(TickLocation,
int);
243 vtkSetMacro(ExponentVisibility,
bool);
244 vtkGetMacro(ExponentVisibility,
bool);
245 vtkBooleanMacro(ExponentVisibility,
bool);
252 vtkSetMacro(LastMajorTickPointCorrection,
bool);
253 vtkGetMacro(LastMajorTickPointCorrection,
bool);
254 vtkBooleanMacro(LastMajorTickPointCorrection,
bool);
260 VTK_ALIGN_BOTTOM = 1,
261 VTK_ALIGN_POINT1 = 2,
270 virtual void SetTitleAlignLocation(
int location);
271 vtkGetMacro(TitleAlignLocation,
int);
279 virtual void SetExponentLocation(
int location);
280 vtkGetMacro(ExponentLocation,
int);
375 vtkSetMacro(DrawGridlinesLocation,
int);
376 vtkGetMacro(DrawGridlinesLocation,
int);
391 vtkSetMacro(GridlineXLength,
double);
392 vtkGetMacro(GridlineXLength,
double);
393 vtkSetMacro(GridlineYLength,
double);
394 vtkGetMacro(GridlineYLength,
double);
395 vtkSetMacro(GridlineZLength,
double);
396 vtkGetMacro(GridlineZLength,
double);
419 vtkSetClampMacro(AxisType,
int, VTK_AXIS_TYPE_X, VTK_AXIS_TYPE_Z);
420 vtkGetMacro(AxisType,
int);
428 VTK_AXIS_POS_MINMIN = 0,
429 VTK_AXIS_POS_MINMAX = 1,
430 VTK_AXIS_POS_MAXMAX = 2,
431 VTK_AXIS_POS_MAXMIN = 3
438 vtkSetMacro(Log,
bool);
439 vtkGetMacro(Log,
bool);
440 vtkBooleanMacro(Log,
bool);
451 vtkSetClampMacro(AxisPosition,
int, VTK_AXIS_POS_MINMIN, VTK_AXIS_POS_MAXMIN);
452 vtkGetMacro(AxisPosition,
int);
474 virtual int RenderTranslucentGeometry(
vtkViewport* viewport);
487 double ComputeMaxLabelLength(
const double[3]);
488 double ComputeTitleLength(
const double[3]);
490 void SetLabelScale(
const double scale);
491 void SetLabelScale(
int labelIndex,
const double scale);
492 void SetTitleScale(
const double scale);
499 vtkSetMacro(MinorStart,
double);
500 vtkGetMacro(MinorStart,
double);
501 double GetMajorStart(
int axis);
502 void SetMajorStart(
int axis,
double value);
505 vtkSetMacro(DeltaMinor,
double);
506 vtkGetMacro(DeltaMinor,
double);
507 double GetDeltaMajor(
int axis);
508 void SetDeltaMajor(
int axis,
double value);
520 vtkSetMacro(MinorRangeStart,
double);
521 vtkGetMacro(MinorRangeStart,
double);
522 vtkSetMacro(MajorRangeStart,
double);
523 vtkGetMacro(MajorRangeStart,
double);
524 vtkSetMacro(DeltaRangeMinor,
double);
525 vtkGetMacro(DeltaRangeMinor,
double);
526 vtkSetMacro(DeltaRangeMajor,
double);
527 vtkGetMacro(DeltaRangeMajor,
double);
580 vtkGetMacro(NumberOfLabelsBuilt,
int);
590 vtkBooleanMacro(CalculateTitleOffset,
vtkTypeBool);
600 vtkBooleanMacro(CalculateLabelOffset,
vtkTypeBool);
607 vtkSetMacro(Use2DMode,
int);
608 vtkGetMacro(Use2DMode,
int);
615 vtkSetMacro(VerticalOffsetXTitle2D,
double);
616 vtkGetMacro(VerticalOffsetXTitle2D,
double);
623 vtkSetMacro(HorizontalOffsetYTitle2D,
double);
624 vtkGetMacro(HorizontalOffsetYTitle2D,
double);
631 vtkSetMacro(SaveTitlePosition,
int);
632 vtkGetMacro(SaveTitlePosition,
int);
639 vtkSetVector3Macro(AxisBaseForX,
double);
640 vtkGetVector3Macro(AxisBaseForX,
double);
647 vtkSetVector3Macro(AxisBaseForY,
double);
648 vtkGetVector3Macro(AxisBaseForY,
double);
655 vtkSetVector3Macro(AxisBaseForZ,
double);
656 vtkGetVector3Macro(AxisBaseForZ,
double);
663 vtkSetMacro(AxisOnOrigin,
int);
664 vtkGetMacro(AxisOnOrigin,
int);
671 vtkSetMacro(LabelOffset,
double);
672 vtkGetMacro(LabelOffset,
double);
673 vtkSetMacro(TitleOffset,
double);
674 vtkGetMacro(TitleOffset,
double);
675 vtkSetMacro(ExponentOffset,
double);
676 vtkGetMacro(ExponentOffset,
double);
677 vtkSetMacro(ScreenSize,
double);
678 vtkGetMacro(ScreenSize,
double);
742 double AxisBaseForX[3];
743 double AxisBaseForY[3];
744 double AxisBaseForZ[3];
750 void TransformBounds(
vtkViewport*,
double bnds[6]);
761 void RotateActor2DFromAxisProjection(
vtkTextActor* pActor2D);
779 void BuildTitle(
bool);
785 void BuildExponent(
bool force);
787 void BuildExponent2D(
vtkViewport* viewport,
bool force);
791 void SetAxisPointsAndLines(
void);
793 bool BuildTickPoints(
double p1[3],
double p2[3],
bool force);
796 void BuildMajorTicks(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
799 void BuildMajorTicksLog(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
802 void BuildMinorTicks(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
805 void BuildMinorTicksLog(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
807 void BuildAxisGridLines(
double p1[3],
double p2[3],
double localCoordSys[3][3]);
809 bool TickVisibilityChanged(
void);
814 bool BoundsDisplayCoordinateChanged(
vtkViewport* viewport);
819 double MajorTickSize;
820 double MinorTickSize;
823 double MajorStart[3];
824 double DeltaMajor[3];
829 double MajorRangeStart;
830 double MinorRangeStart;
835 double DeltaRangeMinor;
840 double DeltaRangeMajor;
842 int LastAxisPosition;
844 int LastTickLocation;
845 double LastLabelStart;
889 vtkActor *AxisMajorTicksActor, *AxisMinorTicksActor;
911 int AxisHasZeroLength;
925 double VerticalOffsetXTitle2D;
931 double HorizontalOffsetYTitle2D;
939 int SaveTitlePosition;
944 double TitleConstantPosition[2];
951 double LastMinDisplayCoordinate[3];
952 double LastMaxDisplayCoordinate[3];
953 double TickVector[3];
962 double ExponentOffset;
virtual void SetPoint1(double x[3])
Specify the position of the first point defining the axis.
int TickLocation
The location of the ticks.
represents an object (geometry & properties) in a rendered scene
void SetAxisTypeToY(void)
Set/Get the type of this axis.
int LastMinorTicksVisible
vtkTypeBool LabelVisibility
abstract specification for Viewports
represent surface properties of a geometric object
int LastDrawInnerGridlines
virtual void SetPoint2(double x[3])
Specify the position of the second point defining the axis.
virtual int RenderOverlay(vtkViewport *)
vtkTypeBool AxisVisibility
int HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
vtkTypeBool DrawGridlinesOnly
record modification and/or execution time
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.
vtkProp3DAxisFollower ** GetLabelProps3D()
Get label actors responsigle for drawing label text.
a vtkAbstractArray subclass for strings
vtkTypeBool DrawGridlines
void SetTickLocationToInside(void)
concrete dataset represents vertices, lines, polygons, and triangle strips
static vtkActor * New()
Creates an actor with the following defaults: origin(0,0,0) position=(0,0,0) scale=(1,...
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
int DrawGridlinesLocation
void SetAxisPositionToMaxMin(void)
window superclass for vtkRenderWindow
void SetAxisTypeToX(void)
Set/Get the type of this axis.
An actor that displays text.
bool LastMajorTickPointCorrection
a simple class to control print indentation
a virtual camera for 3D rendering
void SetAxisPositionToMaxMax(void)
vtkAxisFollower ** GetLabelActors()
Get label actors responsigle for drawing label text.
void SetTickLocationToBoth(void)
vtkTypeBool DrawInnerGridlines
vtkTypeBool TickVisibility
An actor that displays text.
#define VTK_SIZEHINT(...)
double * GetBounds() override
Return a reference to the Prop3D's composite transform.
represent text properties.
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
a subclass of vtkFollower that ensures that data is always parallel to the axis defined by a vtkAxisA...
vtkTypeBool MinorTicksVisible
void SetAxisPositionToMinMax(void)
map vtkPolyData to graphics primitives
void SetAxisPositionToMinMin(void)
a subclass of actor that always faces the camera
int TitleAlignLocation
Hold the alignment property of the title related to the axis.
vtkTypeBool TitleVisibility
a subclass of vtkProp3DFollower that ensures that data is always parallel to the axis defined by a vt...
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Support the standard render methods.
int LastDrawGridlinesLocation
represent surface properties of a 2D image
void SetAxisTypeToZ(void)
Set/Get the type of this axis.
void SetTickLocationToOutside(void)
vtkTypeBool DrawGridpolys
int RenderOpaqueGeometry(vtkViewport *viewport) override
Support the standard render methods.
represent and manipulate 3D points
int ExponentLocation
Hold the alignment property of the exponent coming from the label values.