VTK
vtkAxisExtended.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCellLocator.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
27 #ifndef vtkAxisExtended_h
28 #define vtkAxisExtended_h
29 #endif
30 
31 #include "vtkChartsCoreModule.h" // For export macro
32 #include "vtkObject.h"
33 #include "vtkVector.h" // Needed for vtkVector
34 
35 class VTKCHARTSCORE_EXPORT vtkAxisExtended : public vtkObject
36 {
37 public:
38  vtkTypeMacro(vtkAxisExtended, vtkObject);
39  static vtkAxisExtended *New();
40  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
41 
46  static double Simplicity(int qIndex, int qLength, int j, double lmin,
47  double lmax, double lstep);
48 
53  static double SimplicityMax(int qIndex, int qLength, int j);
54 
59  static double Coverage(double dmin, double dmax, double lmin, double lmax);
60 
64  static double CoverageMax(double dmin, double dmax, double span);
65 
70  static double Density(int k, double m, double dmin, double dmax,
71  double lmin, double lmax);
72 
77  static double DensityMax(int k, double m);
78 
82  static double FormatLegibilityScore(double n, int format);
83 
87  static int FormatStringLength(int format, double n, int precision);
88 
94  vtkVector3d GenerateExtendedTickLabels(double dmin, double dmax, double m,
95  double scaling);
96 
98 
101  vtkGetMacro(FontSize, int);
102  vtkSetMacro(FontSize, int);
104 
105  vtkGetMacro(DesiredFontSize, int);
106  vtkSetMacro(DesiredFontSize, int);
107 
108  vtkGetMacro(Precision, int);
109  vtkSetMacro(Precision, int);
110  vtkGetMacro(LabelFormat, int);
111  vtkSetMacro(LabelFormat, int);
112 
113  vtkGetMacro(Orientation, int);
114  vtkSetMacro(Orientation, int);
115 
116  vtkGetMacro(IsAxisVertical, bool);
117  vtkSetMacro(IsAxisVertical, bool);
118 
119 protected:
122 
126  double Legibility(double lmin, double lmax, double lstep, double scaling,
127  vtkVector<int, 3>& parameters);
128 
130  int FontSize;
136 
137 private:
138  vtkAxisExtended(const vtkAxisExtended&) VTK_DELETE_FUNCTION;
139  void operator=(const vtkAxisExtended&) VTK_DELETE_FUNCTION;
140 };
octree-based spatial search object to quickly locate cells
static double Coverage(double dmin, double dmax, double lmin, double lmax)
This method makes the data range approximately same as the labeling range more preferable.
static vtkAxisExtended * New()
static double SimplicityMax(int qIndex, int qLength, int j)
This method returns the maximum possible value of simplicity value given q and j.
static double FormatLegibilityScore(double n, int format)
This methods return the legibility score of different formats.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double Legibility(double lmin, double lmax, double lstep, double scaling, vtkVector< int, 3 > &parameters)
This method implements an exhaustive search of the legibilty parameters.
static double DensityMax(int k, double m)
Derives the maximum values for density given k (number of ticks) and m (user given)
static double Simplicity(int qIndex, int qLength, int j, double lmin, double lmax, double lstep)
This method return a value to make step sizes corresponding to low q and j values more preferable.
static double CoverageMax(double dmin, double dmax, double span)
This gives the maximum possible value of coverage given the step size.
static int FormatStringLength(int format, double n, int precision)
This method returns the string length of different format notations.
static double Density(int k, double m, double dmin, double dmax, double lmin, double lmax)
This method return a value to make the density of the labels close to the user given value.
vtkVector3d GenerateExtendedTickLabels(double dmin, double dmax, double m, double scaling)
This method implements the algorithm given in the paper The method return the minimum tick position,...
a simple class to control print indentation
Definition: vtkIndent.h:40
abstract base class for most VTK objects
Definition: vtkObject.h:60
templated base type for storage of vectors.
Definition: vtkVector.h:41
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.