Engauge Digitizer  2
Public Member Functions | List of all members
ColorFilterStrategyIntensity Class Reference

Leaf class for intensity strategy for ColorFilter. More...

#include <ColorFilterStrategyIntensity.h>

Inheritance diagram for ColorFilterStrategyIntensity:
Inheritance graph
Collaboration diagram for ColorFilterStrategyIntensity:
Collaboration graph

Public Member Functions

 ColorFilterStrategyIntensity ()
 Single constructor. More...
 
virtual ~ColorFilterStrategyIntensity ()
 
virtual double pixelToZeroToOne (const QColor &pixel, QRgb rgbBackground) const
 Return a normalized value of 0 to 1 given input pixel. More...
 
virtual int zeroToOneToValue (double s) const
 Return the low value normalized to 0 to 1. More...
 
- Public Member Functions inherited from ColorFilterStrategyAbstractBase
 ColorFilterStrategyAbstractBase ()
 Single constructor. More...
 
virtual ~ColorFilterStrategyAbstractBase ()
 

Detailed Description

Leaf class for intensity strategy for ColorFilter.

Definition at line 13 of file ColorFilterStrategyIntensity.h.

Constructor & Destructor Documentation

◆ ColorFilterStrategyIntensity()

ColorFilterStrategyIntensity::ColorFilterStrategyIntensity ( )

Single constructor.

Definition at line 12 of file ColorFilterStrategyIntensity.cpp.

13 {
14 }

◆ ~ColorFilterStrategyIntensity()

ColorFilterStrategyIntensity::~ColorFilterStrategyIntensity ( )
virtual

Definition at line 16 of file ColorFilterStrategyIntensity.cpp.

17 {
18 }

Member Function Documentation

◆ pixelToZeroToOne()

double ColorFilterStrategyIntensity::pixelToZeroToOne ( const QColor &  pixel,
QRgb  rgbBackground 
) const
virtual

Return a normalized value of 0 to 1 given input pixel.

Implements ColorFilterStrategyAbstractBase.

Definition at line 20 of file ColorFilterStrategyIntensity.cpp.

22 {
23  double distance = qSqrt (pow (double (pixel.red()) , 2) +
24  pow (double (pixel.green()), 2) +
25  pow (double (pixel.blue()) , 2));
26  return distance / qSqrt (255.0 * 255.0 + 255.0 * 255.0 + 255.0 * 255.0);
27 }

◆ zeroToOneToValue()

int ColorFilterStrategyIntensity::zeroToOneToValue ( double  s) const
virtual

Return the low value normalized to 0 to 1.

Implements ColorFilterStrategyAbstractBase.

Definition at line 29 of file ColorFilterStrategyIntensity.cpp.

30 {
31  return qFloor (INTENSITY_MIN + s * (INTENSITY_MAX - INTENSITY_MIN));
32 }
const int INTENSITY_MIN
Constants for use by CurveFilter and other curve-related classes.
const int INTENSITY_MAX

The documentation for this class was generated from the following files: