PhoenixPNG
1.2.5
Set of tools to ease use of png file
Toggle main menu visibility
Loading...
Searching...
No Matches
PColorMap.h
Go to the documentation of this file.
1
/***************************************
2
Auteur : Pierre Aubert
3
Mail : pierre.aubert@lapp.in2p3.fr
4
Licence : CeCILL-C
5
****************************************/
6
7
#ifndef __PCOLORMAP_H__
8
#define __PCOLORMAP_H__
9
10
#include <map>
11
#include "PString.h"
12
14
typedef
unsigned
char
color_t
;
15
17
struct
PColorValue
{
19
float
value
;
21
color_t
r
;
23
color_t
g
;
25
color_t
b
;
27
color_t
a
;
28
};
29
31
typedef
std::map<float, PColorValue>
PMapColorValue
;
32
33
PColorValue
createColorValue
(
float
value,
const
PString & color);
34
PColorValue
createColorValue
(
float
value,
color_t
red,
color_t
green,
color_t
blue,
color_t
alpha = 255);
35
void
getColorValue
(
color_t
& red,
color_t
& green,
color_t
& blue,
color_t
& alpha,
const
PColorValue
& color);
36
38
class
PColorMap
{
39
public
:
40
PColorMap
();
41
PColorMap
(
const
PColorMap
& other);
42
virtual
~PColorMap
();
43
PColorMap
&
operator =
(
const
PColorMap
& other);
44
45
void
addColor
(
float
value,
const
PString & color);
46
void
addColor
(
float
value,
color_t
red,
color_t
green,
color_t
blue,
color_t
alpha = 255);
47
48
void
interpolate
(
color_t
& red,
color_t
& green,
color_t
& blue,
float
value)
const
;
49
void
interpolate
(
color_t
& red,
color_t
& green,
color_t
& blue,
color_t
& alpha,
float
value)
const
;
50
void
interpolate
(
PColorValue
& output,
float
value)
const
;
51
52
protected
:
53
void
copyPColorMap
(
const
PColorMap
& other);
54
55
private
:
56
void
initialisationPColorMap
();
58
PMapColorValue
p_mapColor
;
59
};
60
61
void
phoenix_interpolateColor
(
PColorValue
& output,
const
PColorValue
& colorMin,
const
PColorValue
& colorMax,
float
value);
62
PColorValue
phoenix_interpolateColor
(
const
PColorValue
& colorMin,
const
PColorValue
& colorMax,
float
value);
63
64
#endif
65
color_t
unsigned char color_t
Type des of a color.
Definition
PColorMap.h:14
getColorValue
void getColorValue(color_t &red, color_t &green, color_t &blue, color_t &alpha, const PColorValue &color)
Get the rgba values from PColorValue.
Definition
PColorMap.cpp:62
phoenix_interpolateColor
void phoenix_interpolateColor(PColorValue &output, const PColorValue &colorMin, const PColorValue &colorMax, float value)
Interpolate a color with a value by respect to min an max color.
Definition
PColorMap.cpp:75
createColorValue
PColorValue createColorValue(float value, const PString &color)
Create a PColorValue.
Definition
PColorMap.cpp:15
PMapColorValue
std::map< float, PColorValue > PMapColorValue
Vector of a color value.
Definition
PColorMap.h:31
PColorMap::p_mapColor
PMapColorValue p_mapColor
Vector of the value.
Definition
PColorMap.h:58
PColorMap::addColor
void addColor(float value, const PString &color)
Add a color in the PColorMap.
Definition
PColorMap.cpp:126
PColorMap::PColorMap
PColorMap()
Default constructor of PColorMap.
Definition
PColorMap.cpp:97
PColorMap::copyPColorMap
void copyPColorMap(const PColorMap &other)
Copy function of PColorMap.
Definition
PColorMap.cpp:204
PColorMap::operator=
PColorMap & operator=(const PColorMap &other)
Definition of equal operator of PColorMap.
Definition
PColorMap.cpp:117
PColorMap::initialisationPColorMap
void initialisationPColorMap()
Initialisation function of the class PColorMap.
Definition
PColorMap.cpp:209
PColorMap::interpolate
void interpolate(color_t &red, color_t &green, color_t &blue, float value) const
Interpolate color by respect to the given value.
Definition
PColorMap.cpp:149
PColorMap::~PColorMap
virtual ~PColorMap()
Destructor of PColorMap.
Definition
PColorMap.cpp:109
PColorValue
Color related to a value.
Definition
PColorMap.h:17
PColorValue::r
color_t r
Red channel.
Definition
PColorMap.h:21
PColorValue::g
color_t g
Green channel.
Definition
PColorMap.h:23
PColorValue::value
float value
Value of the color.
Definition
PColorMap.h:19
PColorValue::a
color_t a
Alpha channel.
Definition
PColorMap.h:27
PColorValue::b
color_t b
Blue channel.
Definition
PColorMap.h:25
src
PColorMap.h
Generated by
1.17.0