Précédent   Forum du club des développeurs et IT Pro > Autres langages > Python & Zope > Programmation multimédia/Jeux
Programmation multimédia/Jeux Forum d'entraide sur la 2D, 3D, video, son, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 17/08/2011, 17h33   #1
Neuromancien2
Membre confirmé
 
Inscription : mai 2002
Messages : 565
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 565
Points : 279
Points : 279
Par défaut Couleur d'un pixel

Bonjour,

Avec wxPython, j'utilisais le code suivant pour récupérer la couleur d'un pixel dans une image :

Code :
1
2
3
4
5
6
hexagonfile = os.path.join('images/terrains', 'hexagon.gif')
hexagonimg = wx.Image(hexagonfile, wx.BITMAP_TYPE_ANY)
red = hexagonimg.GetRed(mouse_map_x, mouse_map_y)
green = hexagonimg.GetGreen(mouse_map_x, mouse_map_y)
blue = hexagonimg.GetBlue(mouse_map_x, mouse_map_y)
pixel_color = (red, green, blue)
1) Savez-vous s'il est possible de le faire avec Pygame ? Je n'ai pas l'impression que ce soit possible car la méthode get_at((x, y)) existe pour un objet Surface et non pour un objet Image. Cela nécessiterait donc d'afficher l'image sur une surface ce qui ne me convient pas.

2) Si ce n'est pas le cas, comment peut-on le faire en Python ?
Neuromancien2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/08/2011, 17h49   #2
fred1599
Membre Expert
 
Avatar de fred1599
 
Homme Fred
Enseignant
Inscription : juillet 2006
Messages : 1 324
Détails du profil
Informations personnelles :
Nom : Homme Fred
Localisation : France, Meurthe et Moselle (Lorraine)

Informations professionnelles :
Activité : Enseignant
Secteur : Enseignement

Informations forums :
Inscription : juillet 2006
Messages : 1 324
Points : 1 823
Points : 1 823
Lorsque tu charges une image avec pygame (format gif ou bmp) tu en ressors une surface.

Citation:
pygame.image.load
load new image from a file
pygame.image.load(filename): return Surface
pygame.image.load(fileobj, namehint=""): return Surface
__________________
Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)
fred1599 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/08/2011, 18h04   #3
Neuromancien2
Membre confirmé
 
Inscription : mai 2002
Messages : 565
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 565
Points : 279
Points : 279
Bon pour ceux que ça intéresserait on peut le faire avec la méthode Image.getpixel() de la Python Imaging Library (PIL).

[Edit] Je n'avais pas vu la réponse de Fred1599. Je vais essayer avec Pygame.

[Edit2] Ca marche très bien avec Pygame. Merci Fred1599 !
Neuromancien2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 23h12.


 
 
 
 
Partenaires

Hébergement Web