Quelqu'un aurais une procedure qui permet de manipuler la saturation d'une couleur:
par exemple si la valeure de la saturation est < 120 et bien la valeur devient 120, idem si elle est > et qui renvoit la nouvelle couleur
j'ais une procedure qui permet de calculer présisement la valeur de la saturation d'une couleur de 0 à 240
Code : Tout sélectionner
ProcedureDLL Round2(Number.f)
x.f = Number-Round(Number,0)
If x>=0.5
ProcedureReturn Round(Number, 1)
Else
ProcedureReturn Round(Number, 0)
EndIf
EndProcedure
ProcedureDLL Saturation(Color)
R = Red(Color) : G = Green(Color) : B = Blue(Color)
If R < G And R < B
Min = R
If G > B
Max = G
Else
Max = B
EndIf
ElseIf G < B
Min = G
If R > B
Max = R
Else
Max = B
EndIf
Else
Min = B
If R > G
Max = R
Else
Max = G
EndIf
EndIf
If Max+Min =< 255
ProcedureReturn Round2((Max-Min)/(Max+Min)*240)
Else
ProcedureReturn Round2((Max-Min)/(510-(Max+Min))*240)
EndIf
EndProcedure
Merci pour votre aides