14031Fermer14033
GodzilLe 23/05/2017 à 20:28
La solution que j'ai pour l'instant, mais elle chie pour les nombres ayant une partie decimale en dessous de ~40:

def A2BG(a): if a == 100: return 0,0 divisor = 100 numerator = a B = 0 G = 0 if ( int(numerator) != numerator ): numerator = int(numerator * 100.) divisor = divisor * 100 while numerator > 255. or (numerator - divisor) > 255.: numerator = numerator / 2 divisor = divisor / 2 B = numerator - 1 G = divisor - B - 1 return max(0,min(255,int(B))), max(0,min(255,int(G)))
Comme j'ai toujours mal a la tete je laisse pour l'instant mais je pense etre sur la bonne voie