Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2773 connectés 

 


Dernière réponse
Sujet : [C++ Builder] Comment convertir un TColor vers du RGB ?
antp

*Syl* a écrit a écrit :

ColorToRGB()




 
arf je me disais bien que j'avais vu une fonction du genre mais je ne la trouvais plus :D


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
antp

*Syl* a écrit a écrit :

ColorToRGB()




 
arf je me disais bien que j'avais vu une fonction du genre mais je ne la trouvais plus :D

*Syl* a écrit a écrit :

TColor(ta valeur en RGB);
 
Ça te vas pas ça ? Après y'a l'histoire du poids fort qu'y n'est pas pris en compte ici mais pour ça regarde l'aide, c'est bien expliqué.




 
ok je vais essayer voir, merci

*syl* TColor(ta valeur en RGB);
 
Ça te vas pas ça ? Après y'a l'histoire du poids fort qu'y n'est pas pris en compte ici mais pour ça regarde l'aide, c'est bien expliqué.
:hello:  :hello:  :sweat:

*Syl* a écrit a écrit :

ColorToRGB()




 
 
Ah voila, merci c'est exactement ce que je recherchais, impossible de la retrouver cette fonction, merci beaucoup... :hello:
 
 
Au fait pendant qu'on y est, tu saurais pas comment on fait la manipulation inverse (rgb -> hexa type TColor)  ???

LetoII

antp a écrit a écrit :

pourquoi bancal :heink:




 
 
je vois pas, perso c comme ça que je fais (j'ai pas vérifié si ct juste d'un point de vu calcul, masi la méthode me parrait bonne)

*syl* ColorToRGB()
antp pourquoi bancal :heink:

antp a écrit a écrit :

rouge = (couleur & 0x00FF0000) << 4;
vert = (couleur & 0x0000FF00) << 2;
bleu = (couleur & 0x000000FF);
 
ça devrait être un truc comme ça... je pense :D




 
 
Ouais je suis pas sur, ca me semble plus que bancal ton truc, personne d'autre ne se sers de c++ builder et sais comment faire ?

antp rouge = (couleur & 0x00FF0000) << 4;
vert = (couleur & 0x0000FF00) << 2;
bleu = (couleur & 0x000000FF);
 
ça devrait être un truc comme ça... je pense :D
Heu comment te dire.... non c pas tres clair, et ca me simple pas tres correct comme methode pour simplement recuperer la couleur d'un pixel, d'autant plus qu'il me semble qu'il existait un autre moyen de faire ca mais que je ne retrouve plus.
farib ben c pourtaint *clair* la description non  ???
 
t'as juste un ptit peut d'arithmétique a fiare pour extraire les codes rgb de la valeur hea..
 
bizarre...
:cry:  meme pas une ptite reponse... jsais bien c les vacances et l'heure de manger mais quand meme  :(  
 
 
(up deguise)
En fait je scan les pixels d'une image, et je veux obtenir les valeurs rgb de chacun des pixels, mais le probleme c que les pixels renvoient une valeur TColor qui est sur 4 octets, en hexadecimal....
 
Alors je cherche comment convertir ca en rgb mais je vois pas comment faire, ou s'il y a une autre maniere dans c++ builder de recuperer les valeurs des pixels ???
 
 
 
Pour infos:
 
enum TColor {clMin=-0x7fffffff-1, clMax=0x7fffffff};
 
Description
 
Le type TColor est utilisé pour spécifier la couleur d'un objet. Il est utilisé par la propriété Color de nombreux composants et par bien d'autres propriétés qui spécifient des valeurs de couleurs.
 
L'unité Graphics contient la définition de constantes TColor utiles. Ces constantes renvoient soit directement à la couleur la plus approchante dans la palette système (par exemple, clBlue renvoie au bleu), soit à la couleur de l'élément écran du système telle qu'elle est définie dans la section Couleur du Panneau de configuration Windows (par exemple, clBtnFace renvoie à la couleur système des faces de boutons).
 
Si vous spécifiez une valeur TColor en tant que valeur hexadécimale de 4 octets au lieu d'utiliser les constantes définies dans l'unité Graphics, les trois premiers octets représentent respectivement l'intensité RGB des couleurs bleu, vert et rouge. La valeur 00FF0000 représente un bleu pur de pleine intensité, 0000FF00, un vert pur de pleine intensité et 000000FF, un rouge pur de pleine intensité. 00000000 représente le noir et 00FFFFFF, le blanc.
 
Si l'octet de poids fort vaut zéro (00), la couleur obtenue est celle la plus approchante dans la palette système. Si l'octet de poids fort vaut un (01), la couleur obtenue est celle la plus approchante dans la palette actuellement réalisée. Si l'octet de poids fort vaut deux (02), la couleur obtenue est celle la plus approchante dans la palette logique du contexte de périphérique en cours.
 
Les tableaux suivants énumèrent les constantes de couleur de l'unité Graphics. Les deux premières colonnes sont les couleurs correspondant aux couleurs les plus proches dans la palette système, alors que les deux dernières sont les couleurs définies dans le panneau de configuration de Windows.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)