57 #include "vtkChartsCoreModule.h" 91 TICK_WILKINSON_EXTENDED
103 virtual void SetPosition(
int position);
104 vtkGetMacro(Position,
int);
112 void SetPoint1(
float x,
float y);
119 vtkGetVector2Macro(Point1,
float);
128 void SetPoint2(
float x,
float y);
135 vtkGetVector2Macro(Point2,
float);
143 virtual void SetNumberOfTicks(
int numberOfTicks);
149 vtkGetMacro(NumberOfTicks,
int);
165 virtual void SetMinimum(
double minimum);
173 vtkGetMacro(Minimum,
double);
181 virtual void SetMaximum(
double maximum);
189 vtkGetMacro(Maximum,
double);
197 virtual void SetUnscaledMinimum(
double minimum);
203 vtkGetMacro(UnscaledMinimum,
double);
209 virtual void SetUnscaledMaximum(
double maximum);
215 vtkGetMacro(UnscaledMaximum,
double);
228 virtual void SetRange(
double minimum,
double maximum);
229 virtual void SetRange(
double range[2]);
230 virtual void SetUnscaledRange(
double minimum,
double maximum);
231 virtual void SetUnscaledRange(
double range[2]);
242 virtual void GetRange(
double *
range);
243 virtual void GetUnscaledRange(
double *
range);
249 virtual void SetMinimumLimit(
double lowest);
255 vtkGetMacro(MinimumLimit,
double);
261 virtual void SetMaximumLimit(
double highest);
267 vtkGetMacro(MaximumLimit,
double);
273 virtual void SetUnscaledMinimumLimit(
double lowest);
279 vtkGetMacro(UnscaledMinimumLimit,
double);
285 virtual void SetUnscaledMaximumLimit(
double highest);
291 vtkGetMacro(UnscaledMaximumLimit,
double);
298 vtkGetVector2Macro(Margins,
int);
305 vtkSetVector2Macro(Margins,
int);
336 vtkGetMacro(LogScaleActive,
bool);
346 vtkGetMacro(LogScale,
bool);
347 virtual void SetLogScale(
bool logScale);
356 vtkGetMacro(GridVisible,
bool);
364 vtkGetMacro(LabelsVisible,
bool);
372 vtkGetMacro(RangeLabelsVisible,
bool);
380 vtkGetMacro(LabelOffset,
float);
388 vtkGetMacro(TicksVisible,
bool);
396 vtkGetMacro(AxisVisible,
bool);
404 virtual void SetPrecision(
int precision);
405 vtkGetMacro(Precision,
int);
412 STANDARD_NOTATION = 0,
423 virtual void SetLabelFormat(
const std::string &fmt);
443 virtual void SetNotation(
int notation);
444 vtkGetMacro(Notation,
int);
461 vtkGetMacro(Behavior,
int);
468 vtkGetObjectMacro(Pen,
vtkPen);
475 vtkGetObjectMacro(GridPen,
vtkPen);
487 vtkGetMacro(TickLabelAlgorithm,
int)
496 vtkGetMacro(ScalingFactor,
double)
498 vtkGetMacro(Shift,
double)
518 virtual void AutoScale();
524 virtual void RecalculateTickSpacing();
566 static double NiceNumber(
double number,
bool roundUp);
572 static double NiceMinMax(
double &min,
double &
max,
float pixelRange,
573 float tickPixelSpacing);
593 void UpdateLogScaleActive(
bool updateMinMaxFromUnscaled);
598 void GenerateTickLabels(
double min,
double max);
603 void GenerateTickLabels();
605 void GenerateLabelFormat(
int notation,
double n);
616 double CalculateNiceMinMax(
double &min,
double &
max);
627 double LogScaleTickMark(
double number,
643 void GenerateLogSpacedLinearTicks(
int order,
double min,
double max);
655 void GenerateLogScaleTickMarks(
int order,
658 bool detailLabels =
true);
765 void operator=(
const vtkAxis &) VTK_DELETE_FUNCTION;
770 bool InRange(
double value);
vtkTextProperty * LabelProperties
Location
Enumeration of the axis locations in a conventional XY chart.
Wrapper around std::string to keep symbols short.
double NonLogUnscaledMinLimit
vtkPen * Pen
This object stores the vtkPen that controls how the axis is drawn.
base class for items that are part of a vtkContextScene.
virtual bool Paint(vtkContext2D *painter)
Paint event for the item, called whenever the item needs to be drawn.
std::string RangeLabelFormat
double Shift
Scaling factor used on this axis, this is used to accurately render very small/large numbers accurate...
record modification and/or execution time
dynamic, self-adjusting array of float
a vtkAbstractArray subclass for strings
int TickLabelAlgorithm
The algorithm being used to tick label placement.
dynamic, self-adjusting array of double
vtkTimeStamp BuildTime
The point cache is marked dirty until it has been initialized.
double UnscaledMinimumLimit
double UnscaledMaximumLimit
bool Resized
Flag to indicate that the axis has been resized.
Class for drawing 2D primitives to a graphical context.
takes care of drawing 2D axes
a simple class to control print indentation
vtkSmartPointer< vtkStringArray > TickLabels
The labels for the tick marks.
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
represent text properties.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkPen * GridPen
This object stores the vtkPen that controls how the grid lines are drawn.
double ScalingFactor
Scaling factor used on this axis, this is used to accurately render very small/large numbers accurate...
vtkTextProperty * TitleProperties
bool CustomTickLabels
Are we using custom tick labels, or should the axis generate them?
vtkSmartPointer< vtkDoubleArray > TickPositions
Position of tick marks in screen coordinates.
bool UsingNiceMinMax
Hint as to whether a nice min/max was set, otherwise labels may not be present at the top/bottom of t...
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
double NonLogUnscaledMaxLimit
virtual void Update()
Perform any updates to the item that may be necessary before rendering.
vtkSmartPointer< vtkFloatArray > TickScenePositions
Position of tick marks in screen coordinates.
bool TickMarksDirty
Mark the tick labels as dirty when the min/max value is changed.