VTK  9.4.20250123
vtkScalarsToColorsItem.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
18#ifndef vtkScalarsToColorsItem_h
19#define vtkScalarsToColorsItem_h
20
21#include "vtkChartsCoreModule.h" // For export macro
22#include "vtkNew.h" // For vtkNew
23#include "vtkPlot.h"
24#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
25
26VTK_ABI_NAMESPACE_BEGIN
28class vtkImageData;
29class vtkPlotBar;
30class vtkPoints2D;
31
32class VTKCHARTSCORE_EXPORT VTK_MARSHALAUTO vtkScalarsToColorsItem : public vtkPlot
33{
34public:
36 void PrintSelf(ostream& os, vtkIndent indent) override;
37
42 void GetBounds(double bounds[4]) override;
43
45
50 vtkSetVector4Macro(UserBounds, double);
51 vtkGetVector4Macro(UserBounds, double);
53
59 bool Paint(vtkContext2D* painter) override;
60
62
67 vtkGetObjectMacro(PolyLinePen, vtkPen);
69
71
74 void SetHistogramTable(vtkTable* histogramTable);
75 vtkGetObjectMacro(HistogramTable, vtkTable);
77
79
86 vtkSetMacro(MaskAboveCurve, bool);
87 vtkGetMacro(MaskAboveCurve, bool);
89
98 vtkIdType* segmentIndex) override;
100
106 const vtkVector2d& plotPos, vtkIdType seriesIndex, vtkIdType segmentIndex) override;
107
108protected:
111
117 virtual void ComputeBounds(double* bounds);
118
124 virtual void ComputeTexture() = 0;
125
126 vtkGetMacro(TextureWidth, int);
127
133 virtual bool ConfigurePlotBar();
134
136
140 virtual void ScalarsToColorsModified(vtkObject* caller, unsigned long eid, void* calldata);
142 vtkObject* caller, unsigned long eid, void* clientdata, void* calldata);
144
145 double UserBounds[4];
146
147 bool Interpolate = true;
149 vtkImageData* Texture = nullptr;
150 vtkTable* HistogramTable = nullptr;
151
157
158private:
160 void operator=(const vtkScalarsToColorsItem&) = delete;
161};
162
163VTK_ABI_NAMESPACE_END
164#endif
supports function callbacks
Class for drawing 2D primitives to a graphical context.
topologically and geometrically regular array of data
a simple class to control print indentation
Definition vtkIndent.h:108
Allocate and hold a VTK object.
Definition vtkNew.h:167
abstract base class for most VTK objects
Definition vtkObject.h:162
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
Definition vtkPen.h:79
Class for drawing an XY plot given two columns from a vtkTable.
Definition vtkPlotBar.h:55
Abstract class for 2D plots.
Definition vtkPlot.h:153
virtual vtkIdType GetNearestPoint(const vtkVector2f &point, const vtkVector2f &tolerance, vtkVector2f *location, vtkIdType *segmentId)
Function to query a plot for the nearest point to the specified coordinate.
represent and manipulate 2D points
Definition vtkPoints2D.h:27
Abstract class for ScalarsToColors items.
static void OnScalarsToColorsModified(vtkObject *caller, unsigned long eid, void *clientdata, void *calldata)
Called whenever the ScalarsToColors function(s) is modified.
virtual void ComputeBounds(double *bounds)
Bounds of the item, by default (0, 1, 0, 1) but it depends on the range of the ScalarsToColors functi...
virtual void ComputeTexture()=0
Need to be reimplemented by subclasses, ComputeTexture() is called at paint time if the texture is no...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void GetBounds(double bounds[4]) override
Bounds of the item, use the UserBounds if valid otherwise compute the bounds of the item (based on th...
vtkIdType GetNearestPoint(const vtkVector2f &point, const vtkVector2f &, vtkVector2f *location, vtkIdType *segmentIndex) override
Function to query a plot for the nearest point to the specified coordinate.
~vtkScalarsToColorsItem() override
void SetHistogramTable(vtkTable *histogramTable)
Set/Get the vtkTable displayed as an histogram using a vtkPlotBar.
bool Paint(vtkContext2D *painter) override
Paint the texture into a rectangle defined by the bounds.
virtual void ScalarsToColorsModified(vtkObject *caller, unsigned long eid, void *calldata)
Called whenever the ScalarsToColors function(s) is modified.
vtkNew< vtkCallbackCommand > Callback
vtkStdString GetTooltipLabel(const vtkVector2d &plotPos, vtkIdType seriesIndex, vtkIdType segmentIndex) override
Generate and return the tooltip label string for this plot The segmentIndex is implemented here.
virtual bool ConfigurePlotBar()
Method to configure the plotbar histogram before painting it can be reimplemented by subclasses.
vtkNew< vtkPoints2D > Shape
Wrapper around std::string to keep symbols short.
A table, which contains similar-typed columns of data.
Definition vtkTable.h:169
int vtkIdType
Definition vtkType.h:315
#define VTK_MARSHALAUTO