Module fonctionsrvb

Description

Divers fonctions pour traiter une couleur RVB :
Plus claire plus, plus foncée,niveau de rouge de vert ou de bleu de la couleur,niveau de gris...

Source / Exemple :


'FonctionsRVB

'renvoi le niveau de Rouge contenu dans le Rvb
Public Function Rouge(Rvb As Long) As Long
Rouge = Rvb And &HFF&
End Function

'renvoi le niveau de Vert contenu dans le Rvb
Public Function Vert(Rvb As Long) As Long
Vert = Rvb And &HFF00&
End Function

'renvoi le niveau de Bleu contenu dans le Rvb
Public Function Bleu(Rvb As Long) As Long
Bleu = Rvb And &HFF0000
End Function

'renvoi l'inverse du Rvb
Public Function Inverse(Rvb As Long) As Long
Inverse = Rvb Xor &HFFFFFF
End Function

'renvoi le niveau de gris du Rvb
Public Function Gris(Rvb As Long) As Long
Dim Moyenne As Long
Moyenne = (Rouge(Rvb) + (Vert(Rvb) / 256) + (Bleu(Rvb) / 65536)) / 3
Gris = RGB(Moyenne, Moyenne, Moyenne)
End Function

'renvoi le Rvb en plus clair (+1 par couleurs)
Public Function PlusClair(Rvb As Long) As Long

Dim R As Long, V As Long, B As Long
Dim Limite As Boolean

R = Rouge(Rvb)
R = R + 1
If R > &HFF& Then R = &HFF&: Limite = True

V = Vert(Rvb)
V = V + &H100&
If V > &HFF00& Then V = &HFF00&: Limite = True

B = Bleu(Rvb)
B = B + &H10000
If B > &HFF0000 Then B = &HFF0000: Limite = True

If Limite = False Then PlusClair = R + V + B Else PlusClair = Rvb

End Function

'renvoi le Rvb en plus foncé(-1 par couleurs)
Public Function PlusFoncé(Rvb As Long) As Long

Dim R As Long, V As Long, B As Long
Dim Limite As Boolean

R = Rouge(Rvb)
R = R - 1
If R < 0 Then R = 0: Limite = True

V = Vert(Rvb)
V = V - &H100&
If V < 0 Then V = 0:: Limite = True

B = Bleu(Rvb)
B = B - &H10000
If B < 0 Then B = 0:: Limite = True

If Limite = False Then PlusFoncé = R + V + B Else PlusFoncé = Rvb

End Function

Codes Sources

A voir également

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.