namespace Developpez.Dotnet.Drawing
{
///
/// Représente une couleur dans l'espace colorimétrique HSL (teinte, saturation, luminosité)
///
public struct HslColor
{
private readonly double _h;
private readonly double _s;
private readonly double _l;
///
/// Initialise une nouvelle isntance de HslColor
///
/// Teinte (hue), valeur comprise entre 0° et 360°
/// Saturation, valeur comprise entre 0 et 1
/// Luminosité, valeur comprise entre 0 et 1
public HslColor(double h, double s, double l)
{
_h = h;
_s = s;
_l = l;
}
///
/// Obtient la teinte (hue) de cette couleur
///
public double H
{
get { return _h; }
}
///
/// Obtient la saturation de cette couleur
///
public double S
{
get { return _s; }
}
///
/// Obtient la luminosité de cette couleur
///
public double L
{
get { return _l; }
}
///
/// Convertit cette structure HslColor en chaîne lisible par l'utilisateur.
///
/// Chaîne composée des noms des composants HSL et de leurs valeurs.
public override string ToString()
{
return string.Format("HsvColor [H={0}, S={1}, L={2}]", _h, _s, _l);
}
}
}