8
votes

getRandomcolor mais éviter les couleurs sombres: aidez mon algorithme

J'essaie d'obtenir une couleur aléatoire. Je l'ai fait à l'aide de la force brute, mais cette méthode semble trop laborieuse (bien que la distribution soit jolie): xxx

Comment peut-on être améliorée? Je veux une répartition uniforme de rouge, de vert et de bleu et rien de trop sombre (sinon je saisirais trois nombres aléatoires et être fait avec elle).


0 commentaires

3 Réponses :


1
votes

Cette méthode pourrait vous aider à générer rapidement des couleurs vives au hasard: xxx


0 commentaires

2
votes

J'aurais probablement générer des nombres aléatoires (pseudo-) pour la teinte, la saturation et la légèreté (ou HSB), avec la légèreté (ou la luminosité) limitée à la plage que vous trouvez raisonnable, puis Convertissez-le à RVB .


0 commentaires

15
votes
+ (UIColor *)colorWithHue:(CGFloat)hue saturation:(CGFloat)saturation brightness:(CGFloat)brightness alpha:(CGFloat)alpha;

CGFloat hue = ( arc4random() % 256 / 256.0 );  //  0.0 to 1.0
CGFloat saturation = ( arc4random() % 128 / 256.0 ) + 0.5;  //  0.5 to 1.0, away from white
CGFloat brightness = ( arc4random() % 128 / 256.0 ) + 0.5;  //  0.5 to 1.0, away from black
If white is ok then do saturation like hue instead of brightness.

0 commentaires