Engauge Digitizer  2
 All Classes Functions Variables Typedefs Enumerations Friends Pages
ColorFilterSettingsStrategyIntensity.cpp
1 /******************************************************************************************************
2  * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3  * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4  * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5  ******************************************************************************************************/
6 
7 #include "ColorConstants.h"
8 #include "ColorFilterSettings.h"
9 #include "ColorFilterSettingsStrategyIntensity.h"
10 #include <QTextStream>
11 
13 {
14 }
15 
16 ColorFilterSettingsStrategyIntensity::~ColorFilterSettingsStrategyIntensity ()
17 {
18 }
19 
20 double ColorFilterSettingsStrategyIntensity::high (const ColorFilterSettings &colorFilterSettings) const
21 {
22  return (double) (colorFilterSettings.intensityHigh () - INTENSITY_MIN) /
23  (double) (INTENSITY_MAX - INTENSITY_MIN);
24 }
25 
26 double ColorFilterSettingsStrategyIntensity::low (const ColorFilterSettings &colorFilterSettings) const
27 {
28  return (double) (colorFilterSettings.intensityLow () - INTENSITY_MIN) /
29  (double) (INTENSITY_MAX - INTENSITY_MIN);
30 }
31 
33  QString indentation,
34  QTextStream &str) const
35 {
36  str << indentation << "intensityLow=" << colorFilterSettings.intensityLow () << "\n";
37  str << indentation << "intensityHigh=" << colorFilterSettings.intensityHigh () << "\n";
38 }
39 
41  double s0To1)
42 {
43  colorFilterSettings.setIntensityHigh (INTENSITY_MIN + s0To1 * (INTENSITY_MAX - INTENSITY_MIN));
44 }
45 
47  double s0To1)
48 {
49  colorFilterSettings.setIntensityLow (INTENSITY_MIN + s0To1 * (INTENSITY_MAX - INTENSITY_MIN));
50 }
virtual void printStream(const ColorFilterSettings &colorFilterSettings, QString indentation, QTextStream &str) const
Print the low and high values.
Color filter parameters for one curve. For a class, this is handled the same as LineStyle and PointSt...
virtual void setHigh(ColorFilterSettings &colorFilterSettings, double s0To1)
Set the high value given the normalized value.
virtual void setLow(ColorFilterSettings &colorFilterSettings, double s0To1)
Set the low value given the normalized value.
virtual double low(const ColorFilterSettings &colorFilterSettings) const
Return the low value normalized to 0 to 1.
void setIntensityHigh(int intensityHigh)
Set method for intensity higher bound.
virtual double high(const ColorFilterSettings &colorFilterSettings) const
Return the high value normalized to 0 to 1.
int intensityHigh() const
Get method for intensity higher bound.
void setIntensityLow(int intensityLow)
Set method for intensity lower bound.
int intensityLow() const
Get method for intensity lower bound.