VTK  9.3.20240329
vtkXYPlotRepresentation.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3 
21 #ifndef vtkXYPlotRepresentation_h
22 #define vtkXYPlotRepresentation_h
23 
25 #include "vtkInteractionWidgetsModule.h" // For export macro
26 
27 VTK_ABI_NAMESPACE_BEGIN
28 class vtkXYPlotActor;
29 
30 class VTKINTERACTIONWIDGETS_EXPORT vtkXYPlotRepresentation : public vtkBorderRepresentation
31 {
32 public:
34  virtual void PrintSelf(ostream& os, vtkIndent indent);
36 
38 
41  vtkGetObjectMacro(XYPlotActor, vtkXYPlotActor);
44 
46 
49  void BuildRepresentation() override;
50  void WidgetInteraction(double eventPos[2]) override;
51  void GetSize(double size[2]) override
52  {
53  size[0] = 2.0;
54  size[1] = 2.0;
55  }
57 
59 
63  virtual int GetVisibility();
64  virtual void SetVisibility(int);
65  virtual void GetActors2D(vtkPropCollection* collection);
66  virtual void ReleaseGraphicsResources(vtkWindow* window);
67  virtual int RenderOverlay(vtkViewport*);
72 
74 
77  void SetGlyphSize(double x);
78  void SetPlotGlyphType(int curve, int glyph);
80 
82 
85  void SetTitle(const char* title);
86  void SetTitleColor(double r, double g, double b);
87  void SetTitleFontFamily(int x);
88  void SetTitleBold(int x);
89  void SetTitleItalic(int x);
90  void SetTitleShadow(int x);
91  void SetTitleFontSize(int x);
92  void SetTitleJustification(int x);
95  void SetTitlePosition(double x, double y);
97 
99 
102  void SetXAxisColor(double r, double g, double b);
103  void SetYAxisColor(double r, double g, double b);
104  void SetXTitle(const char* ytitle);
105  char* GetXTitle();
106  void SetXRange(double min, double max);
107  void SetYTitle(const char* ytitle);
108  char* GetYTitle();
109  void SetYRange(double min, double max);
110  void SetYTitlePosition(int pos);
111  int GetYTitlePosition() const;
112  void SetXValues(int x);
114 
116 
119  void SetAxisTitleColor(double r, double g, double b);
121  void SetAxisTitleBold(int x);
122  void SetAxisTitleItalic(int x);
123  void SetAxisTitleShadow(int x);
124  void SetAxisTitleFontSize(int x);
128 
130 
133  void SetAxisLabelColor(double r, double g, double b);
135  void SetAxisLabelBold(int x);
136  void SetAxisLabelItalic(int x);
137  void SetAxisLabelShadow(int x);
138  void SetAxisLabelFontSize(int x);
141  void SetXLabelFormat(const char* _arg);
142  void SetYLabelFormat(const char* _arg);
144 
146 
149  void SetBorder(int x);
151  void AddUserCurvesPoint(double c, double x, double y);
152  void SetLegend(int x);
153  void SetLegendBorder(int b);
154  void SetLegendBox(int b);
155  void SetLegendBoxColor(double r, double g, double b);
156  void SetLegendPosition(double x, double y);
157  void SetLegendPosition2(double x, double y);
158  void SetLineWidth(double w);
159  void SetPlotColor(int i, int r, int g, int b);
160  void SetPlotLines(int i);
161  void SetPlotPoints(int i);
162  void SetPlotLabel(int i, const char* label);
164 
165 protected:
168 
170 
171 private:
173  void operator=(const vtkXYPlotRepresentation&) = delete;
174 };
175 
176 VTK_ABI_NAMESPACE_END
177 #endif // vtkXYPlotRepresentation_h
represent a vtkBorderWidget
a simple class to control print indentation
Definition: vtkIndent.h:108
an ordered list of Props
abstract specification for Viewports
Definition: vtkViewport.h:65
window superclass for vtkRenderWindow
Definition: vtkWindow.h:48
generate an x-y plot from input dataset(s) or field data
represent XY plot for vtkXYPlotWidget
char * GetXTitle()
Set/Get axis properties.
void SetLegendBox(int b)
Set various properties.
virtual void ReleaseGraphicsResources(vtkWindow *window)
These methods are necessary to make this representation behave as a vtkProp.
void SetTitle(const char *title)
Set title properties.
void SetLegendBorder(int b)
Set various properties.
virtual int GetVisibility()
These methods are necessary to make this representation behave as a vtkProp.
void SetAxisTitleShadow(int x)
Set axis title properties.
void SetLineWidth(double w)
Set various properties.
void SetAxisLabelFontSize(int x)
Set axis label properties.
void SetXAxisColor(double r, double g, double b)
Set/Get axis properties.
virtual void GetActors2D(vtkPropCollection *collection)
These methods are necessary to make this representation behave as a vtkProp.
char * GetYTitle()
Set/Get axis properties.
void SetTitleFontSize(int x)
Set title properties.
void SetTitleColor(double r, double g, double b)
Set title properties.
~vtkXYPlotRepresentation() override
void SetYTitlePosition(int pos)
Set/Get axis properties.
void SetLegendPosition2(double x, double y)
Set various properties.
virtual int RenderOpaqueGeometry(vtkViewport *)
These methods are necessary to make this representation behave as a vtkProp.
void SetAxisLabelJustification(int x)
Set axis label properties.
void SetAxisLabelFontFamily(int x)
Set axis label properties.
virtual int RenderOverlay(vtkViewport *)
These methods are necessary to make this representation behave as a vtkProp.
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *)
These methods are necessary to make this representation behave as a vtkProp.
void SetTitleJustification(int x)
Set title properties.
void SetBorder(int x)
Set various properties.
void SetPlotGlyphType(int curve, int glyph)
Set glyph properties.
void BuildRepresentation() override
Satisfy the superclass' API.
static vtkXYPlotRepresentation * New()
void SetAxisLabelItalic(int x)
Set axis label properties.
void SetGlyphSize(double x)
Set glyph properties.
void AddUserCurvesPoint(double c, double x, double y)
Set various properties.
void SetAdjustTitlePosition(int x)
Set title properties.
virtual vtkTypeBool HasTranslucentPolygonalGeometry()
These methods are necessary to make this representation behave as a vtkProp.
void SetTitleVerticalJustification(int x)
Set title properties.
void SetPlotLines(int i)
Set various properties.
void SetTitlePosition(double x, double y)
Set title properties.
void SetPlotLabel(int i, const char *label)
Set various properties.
virtual void PrintSelf(ostream &os, vtkIndent indent)
Define standard methods.
void SetTitleFontFamily(int x)
Set title properties.
void SetLegendBoxColor(double r, double g, double b)
Set various properties.
virtual void SetVisibility(int)
These methods are necessary to make this representation behave as a vtkProp.
void SetAxisLabelBold(int x)
Set axis label properties.
void SetAxisTitleJustification(int x)
Set axis title properties.
void SetAxisTitleFontFamily(int x)
Set axis title properties.
void SetAxisLabelVerticalJustification(int x)
Set axis label properties.
void SetAxisLabelShadow(int x)
Set axis label properties.
void SetXTitle(const char *ytitle)
Set/Get axis properties.
int GetYTitlePosition() const
Set/Get axis properties.
void SetPlotColor(int i, int r, int g, int b)
Set various properties.
void SetTitleItalic(int x)
Set title properties.
void SetLegendPosition(double x, double y)
Set various properties.
void SetAxisTitleColor(double r, double g, double b)
Set axis title properties.
void SetYRange(double min, double max)
Set/Get axis properties.
void SetAxisLabelColor(double r, double g, double b)
Set axis label properties.
void SetXValues(int x)
Set/Get axis properties.
virtual void SetXYPlotActor(vtkXYPlotActor *)
The prop that is placed in the renderer.
void SetYAxisColor(double r, double g, double b)
Set/Get axis properties.
void SetTitleBold(int x)
Set title properties.
void SetYLabelFormat(const char *_arg)
Set axis label properties.
void WidgetInteraction(double eventPos[2]) override
Satisfy the superclass' API.
void SetXRange(double min, double max)
Set/Get axis properties.
void SetAxisTitleBold(int x)
Set axis title properties.
void SetTitleShadow(int x)
Set title properties.
void SetAxisTitleItalic(int x)
Set axis title properties.
void SetXLabelFormat(const char *_arg)
Set axis label properties.
void RemoveAllActiveCurves()
Set various properties.
void SetLegend(int x)
Set various properties.
void SetPlotPoints(int i)
Set various properties.
void SetYTitle(const char *ytitle)
Set/Get axis properties.
void SetAxisTitleVerticalJustification(int x)
Set axis title properties.
void SetAxisTitleFontSize(int x)
Set axis title properties.
void GetSize(double size[2]) override
Satisfy the superclass' API.
@ size
Definition: vtkX3D.h:253
@ title
Definition: vtkX3D.h:500
int vtkTypeBool
Definition: vtkABI.h:64
#define max(a, b)