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