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
15 #ifndef vtkImageRGBToHSV_h
16 #define vtkImageRGBToHSV_h
17 
18 #include "vtkImagingColorModule.h" // For export macro
20 
21 VTK_ABI_NAMESPACE_BEGIN
22 class VTKIMAGINGCOLOR_EXPORT vtkImageRGBToHSV : public vtkThreadedImageAlgorithm
23 {
24 public:
25  static vtkImageRGBToHSV* New();
27  void PrintSelf(ostream& os, vtkIndent indent) override;
28 
29  // Hue is an angle. Maximum specifies when it maps back to 0. HueMaximum
30  // defaults to 255 instead of 2PI, because unsigned char is expected as
31  // input. Maximum also specifies the maximum of the Saturation.
32  vtkSetMacro(Maximum, double);
33  vtkGetMacro(Maximum, double);
34 
35 protected:
37  ~vtkImageRGBToHSV() override = default;
38 
39  double Maximum;
40 
41  void ThreadedExecute(vtkImageData* inData, vtkImageData* outData, int ext[6], int id) override;
42 
43 private:
44  vtkImageRGBToHSV(const vtkImageRGBToHSV&) = delete;
45  void operator=(const vtkImageRGBToHSV&) = delete;
46 };
47 
48 VTK_ABI_NAMESPACE_END
49 #endif
topologically and geometrically regular array of data
Definition: vtkImageData.h:43
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:29
Generic filter that has one input.