VTK
vtkLabelSizeCalculator.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkLabelSizeCalculator.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 =========================================================================*/
15 
37 #ifndef vtkLabelSizeCalculator_h
38 #define vtkLabelSizeCalculator_h
39 
40 #include "vtkRenderingLabelModule.h" // For export macro
42 
43 class vtkIntArray;
44 class vtkTextRenderer;
45 class vtkStringArray;
46 class vtkTextProperty;
47 
48 class VTKRENDERINGLABEL_EXPORT vtkLabelSizeCalculator : public vtkPassInputTypeAlgorithm
49 {
50 public:
51  static vtkLabelSizeCalculator* New();
52  void PrintSelf( ostream& os, vtkIndent indent ) VTK_OVERRIDE;
54 
56 
62  virtual void SetFontProperty(vtkTextProperty* fontProp, int type = 0);
63  virtual vtkTextProperty* GetFontProperty(int type = 0);
65 
67 
71  vtkSetStringMacro(LabelSizeArrayName);
72  vtkGetStringMacro(LabelSizeArrayName);
74 
76 
80  vtkSetMacro(DPI, int)
81  vtkGetMacro(DPI, int)
83 
84 protected:
86  ~vtkLabelSizeCalculator() VTK_OVERRIDE;
87 
88  int FillInputPortInformation( int port, vtkInformation* info ) VTK_OVERRIDE;
89  int RequestData(
90  vtkInformation* request,
91  vtkInformationVector** inInfo,
92  vtkInformationVector* outInfo ) VTK_OVERRIDE;
93 
94  virtual vtkIntArray* LabelSizesForArray( vtkAbstractArray* labels, vtkIntArray* types );
95 
96  virtual void SetFontUtil( vtkTextRenderer* fontProp );
97  vtkGetObjectMacro(FontUtil,vtkTextRenderer);
98 
99  vtkTextRenderer* FontUtil;
100  char* LabelSizeArrayName;
101 
102  int DPI;
103 
104  class Internals;
105  Internals* Implementation;
106 
107 private:
108  vtkLabelSizeCalculator( const vtkLabelSizeCalculator& ) VTK_DELETE_FUNCTION;
109  void operator = ( const vtkLabelSizeCalculator& ) VTK_DELETE_FUNCTION;
110 };
111 
112 #endif // vtkLabelSizeCalculator_h
Superclass for algorithms that produce output of the same type as input.
Store vtkAlgorithm input/output information.
Abstract superclass for all arrays.
a vtkAbstractArray subclass for strings
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:39
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
represent text properties.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Interface for generating images and path data from string data, using multiple backends.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store zero or more vtkInformation instances.
This filter takes an input dataset, an array to process (which must be a string array), and a text property.
static vtkPassInputTypeAlgorithm * New()