IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Mixage de Couleurs


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut Mixage de Couleurs
    J'ai deux couleurs RGBA, et j'aimerais les mixer (trouver la couleur resultat),comment faire???
    J'ai deja trouve pour le alpha resultat: a1+(1.-a1)*a2

  2. #2
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    La nuit ma portee conseil :

    pour la couleur resultat:

    on calcule l'alpha resultat vu precedemment, puis on calcule le pourcentage de a1 de cet alpha resultat a3=(a1/a2)

    puis res=a3*rgb1+(1-a3)*rgb2

    Voila, en esperant que cela serve a qqun d'autre

  3. #3
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 10
    Points : 135
    Points
    135
    Par défaut
    Pour moi, c'est simple, voilà ce que je fais :

    -j'ai un index de couleur.
    -j'extrais les nuances RGBA des deux couleurs
    -je fais la moyenne entre les deux R, les deux G les deux B. Les Alpha ne servent à rien.
    @+

    Saïd LANKRI, lankri_said at yahoo.fr

    Billou : "TUEZ-LES TOUS ! DIEU RECONNAITRA LES SIENS !"

  4. #4
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    Justement c parceque tu n'utilise pas les alphas que tu doit faire une moyenne (mais tu remarquera qu'avec des alphas = 0,5 ca marche)

  5. #5
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 10
    Points : 135
    Points
    135
    Par défaut
    Je ne comprends pas. Que tu mette alpha à 0 ou à 255, à l'écran, ça ne change rien non ?
    @+

    Saïd LANKRI, lankri_said at yahoo.fr

    Billou : "TUEZ-LES TOUS ! DIEU RECONNAITRA LES SIENS !"

  6. #6
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    Qui a dit que je voulais afficher l'image ?????

    En fait je suis entrain de faire un logiciel genre photoshop. et tu admetteras qu'il faut que je m'occupe du canal alpha.

    Bien sur qu'a l'ecran on ne le voit pas, mais ca c'est un autre pb.

  7. #7
    Membre habitué

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 10
    Points : 135
    Points
    135
    Par défaut
    Bon. Espère t'avoir aidé quand même.
    @+

    Saïd LANKRI, lankri_said at yahoo.fr

    Billou : "TUEZ-LES TOUS ! DIEU RECONNAITRA LES SIENS !"

  8. #8
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    Je viens de comprendre ce que tu me proposait, mais cela ne marche pas, regarde avec ton logiciel favoris, cree un calque gris avec un alpha de 0,2 et un autre calque d'un gris plus fonce avec alpha 0.5, combine les deux (le sens a de l'importance contrairemant a ta methode)et tu verra que la valeur resultat n'est pas une simple moyenne (j'ai fais ca avec GIMP)

  9. #9
    DrQ
    DrQ est déconnecté
    Membre expérimenté
    Avatar de DrQ
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 388
    Points : 1 515
    Points
    1 515
    Par défaut
    Pour les les alpha je pense pas que l'ordre est un sens par contre sa valeur oui, et heureusement sinon ça sert à rien de mettre des alpha

    Si tu mets du rouge (255,0,0) avec un alpha de 99% et du vert (0,255,0) avec un alpha de 1%, ton jaune risque d'être bizarre.
    1)http://www.developpez.com/cours/
    2)Recherche
    3)Posez votre question en suivant les règles
    _oOo-DrQ-oOo_

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Bonjour exxos.

    J'ai updater ma libraire CLbmp. Je devrait modifier mes tutoriaux OpenGL d'ici peu. La libraire permet de mélanger autant de texture que tu le désires. Pour ce je mélange les couleur des bitmaps. Voilà

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Function MelangerCouleur( Const C1, C2 :TRGBQuad;
                              Const Intensite :Byte ) :TRGBQuad;
    Begin
         Result.rgbRed := (C1.rgbRed * (256 - Intensite) + C2.rgbRed *
                            Intensite) Div 256;
         Result.rgbGreen := (C1.rgbGreen * (256 - Intensite) + C2.rgbGreen *
                            Intensite) Div 256;
         Result.rgbBlue := (C1.rgbBlue * (256 - Intensite) + C2.rgbBlue *
                            Intensite) Div 256;
         Result.rgbReserved := (C1.rgbReserved * (256 - Intensite) + C2.rgbReserved *
                            Intensite) Div 256;
    End;
    Bonne journée

  11. #11
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    DRQ:
    si le sens a de l'importance:
    tu as une image d'alpha 1, tu veux lui ajouter ue autre image d'alpha 0.5 alors il y aura un mixage des couleurs. Maintenant prenont l'image avec l'alpha de 0.5, tu lui ajoute une image d'alpha 1 et la et bien y a plus de melange mais un ecrasement des couleurs. L'ordre a donc de l'importance.

    Martin:

    Il faut prendre en compte les alphas de tes couples rgb, et non pas que l'intensite exterieurs.


    Aux deux: Verifiers mes dires avec un logiciel de dessin.

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Mais c'est ce que je tiens compte ?

    Cette valeur-ci "Result.rgbReserved", n'es pas utilisé en temps normale mais moi je l'utilise pour stocker la valeur alpha. Alors si tu aimes mieux :

    Result.AlphaValue := ....

    Anyway, j'aurai essayé
    Bonne journée

  13. #13
    DrQ
    DrQ est déconnecté
    Membre expérimenté
    Avatar de DrQ
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 388
    Points : 1 515
    Points
    1 515
    Par défaut
    Je te crois exxos puisque tu le dis
    1)http://www.developpez.com/cours/
    2)Recherche
    3)Posez votre question en suivant les règles
    _oOo-DrQ-oOo_

  14. #14
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    Martin :

    non, excuse moi mais je te parle du mixage des couleurs qui elles ne prennent pas en compte leur propre alpha. Le calcul du rouge final ne se fait pas en fonction de l'alpha de la meme couleur

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Oups... Désolé exxos.
    Je n'avais peut-être pas compris exacement ta question
    Si tu trouves, fais-nous le savoir

  16. #16
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89
    Par défaut
    justement j 'ai trouve et c'est ecris au deuxieme post.

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. Couleur d'une JComboBox disabled
    Par ced dans le forum Composants
    Réponses: 6
    Dernier message: 06/01/2004, 15h33
  3. Couleur de ProgressBar
    Par benj63 dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/07/2002, 17h33
  4. Couleur des lignes dans DBGrid
    Par eddie dans le forum C++Builder
    Réponses: 5
    Dernier message: 21/06/2002, 18h15
  5. String Grid et choix d'une couleur pour une ligne
    Par Gigottine dans le forum C++Builder
    Réponses: 12
    Dernier message: 17/05/2002, 15h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo