VTK  9.3.0
vtkImageRGBToHSV.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
24 #ifndef vtkImageRGBToHSV_h
25 #define vtkImageRGBToHSV_h
26 
27 #include "vtkImagingColorModule.h" // For export macro
29 
30 VTK_ABI_NAMESPACE_BEGIN
31 class VTKIMAGINGCOLOR_EXPORT vtkImageRGBToHSV : public vtkThreadedImageAlgorithm
32 {
33 public:
34  static vtkImageRGBToHSV* New();
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
38  // Hue is an angle. Maximum specifies when it maps back to 0. HueMaximum
39  // defaults to 255 instead of 2PI, because unsigned char is expected as
40  // input. Maximum also specifies the maximum of the Saturation.
41  vtkSetMacro(Maximum, double);
42  vtkGetMacro(Maximum, double);
43 
44 protected:
46  ~vtkImageRGBToHSV() override = default;
47 
48  double Maximum;
49 
50  void ThreadedExecute(vtkImageData* inData, vtkImageData* outData, int ext[6], int id) override;
51 
52 private:
53  vtkImageRGBToHSV(const vtkImageRGBToHSV&) = delete;
54  void operator=(const vtkImageRGBToHSV&) = delete;
55 };
56 
57 VTK_ABI_NAMESPACE_END
58 #endif
topologically and geometrically regular array of data
Definition: vtkImageData.h:52
Converts RGB components to HSV.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkImageRGBToHSV() override=default
static vtkImageRGBToHSV * New()
void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, int ext[6], int id) override
a simple class to control print indentation
Definition: vtkIndent.h:38
Generic filter that has one input.