Encore une classe !!!
Celle-ci illustre les différentes conversions de couleur et d'espace couleur, comme par exemple RGB, HSL, YCbCr, Lab, ...
Source / Exemple :
#pragma once
#include <windows.h>
#define _USE_MATH_DEFINES
#include <math.h>
#include "Chaine.h"
class CPixel
{
private:
CChaine m_strNomCouleur;
double m_P0;
double m_P1;
double m_P2;
double max3(double n1, double n2, double n3);
double min3(double n1, double n2, double n3);
public:
//constructaur
CPixel(void);
//constructeur copie
CPixel(CPixel& Pixel);
//constructeur copie
CPixel(CPixel* pPixel);
//constructeur création pixel
CPixel(double P0, double P1, double P2);
//destructeur
~CPixel(void);
//créer pixel
void SetPixel(const CPixel& Pixel);
//créer pixel
void SetPixel(double P0, double P1, double P2);
//modifier pixel
void SetValeur(int iPixel, double dValeur);
//assigner un nom
void SetNomCouleur(CChaine strNomCouleur);
//retourne la composante du pixel à l'index
double GetValeur(int iPixel) const;
//retourne le nom de la couleur
CChaine GetNomCouleur(void) const;
//retourne la composante du pixel à l'index
double operator[](int iPixel) const;
//opérateur d'affectation
CPixel operator=(const CPixel& Pixel);
//routines de conversion
void RGBToHSL(void);
void HSLToRGB(void);
void RGBToHSV(void);
void HSVToRGB(void);
void RGBToXYZ(void);
void XYZToRGB(void);
void RGBToYCbCr(void);
void YCbCrToRGB(void);
void RGBToLab(void);
};
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.