|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Nouveau Membre du Club
![]() Inscription : mars 2009 Messages : 89 ![]() |
Bonjour,
Dans mon script j'ai deux groupes de sprites. Le premier contient des sprites qui peuvent etre déplacés à la souris, le deuxième contient des sprites immobiles matérialisés par des carrés rouges . Je souhaite détecter la collision d'un sprite du premier groupe avec un de ceux du deuxième. Le but est de classer les chromosomes selon le carré dans lequel on les place. Comme il peut y en avoir beaucoup (des chromosomes ou des carrés) j'utilise: Code :
collision=pygame.sprite.groupcollide(allcategories,allsprites,False,False) Citation:
Code :
|
|||
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Inscription : avril 2004 Messages : 677 ![]() |
Je ne connias pas la class Sprite, mais ...
essayes: Code :
collision=pygame.sprite.groupcollide(allcategories,allsprites,False,None) |
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : mars 2009 Messages : 89 ![]() |
même message ...
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() Inscription : avril 2004 Messages : 677 ![]() |
RenderPlain n'est pas documenté :s
|
|
|
00
|
|
|
#5 | ||
|
Expert Confirmé
![]() Patrice BLANGARINTechnicien Help Desk, maintenance, réseau, système et + Inscription : juin 2006 Messages : 2 650 ![]() |
Bonjour,
Je ne connais pas pygame mais votre problème viens de la classe Classifier et plus précisément de self.rect = initpos*. Comme je ne connais pas pygame j'aurais utiliser votre code (#self.image.get_rect()) et écrit Code :
Pour ce qui est de la position initiale des chromosomes c'est le même souci : self.rect. En utilisant Cela fonctionne. @+ Edit: *Comprendre que vous écrasez l'objet pygame.Rect self.rect par le tuple initpos.
__________________
Merci d'utiliser le forum pour les questions techniques. |
||
|
|
10
|
|
|
#6 |
|
Membre chevronné
![]() Inscription : avril 2004 Messages : 677 ![]() |
Bien vu !
|
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Inscription : mars 2009 Messages : 89 ![]() |
Impec,
merci bien PauseKawa. Pour quelqu'un qui ne connait pas pygame ... ![]() Il y a quelque chose de bizarre avec pygame ou avec ipython (sous spyder 2): Quand je tape : Il y a une fenetre qui s'ouvre et qui indique toute les méthodes dont get_rect(). Mais si je tape: La fenêtre ne s'ouvre plus pour me montrer les méthodes/variables dispo pour cet objet. Dans le cas présent: Code :
pygame.surface.Surface.get_rect.topleft |
|
00
|
|
|
#8 | ||||
|
Expert Confirmé
![]() Patrice BLANGARINTechnicien Help Desk, maintenance, réseau, système et + Inscription : juin 2006 Messages : 2 650 ![]() |
Bonjour,
Vous m'en demandez beaucoup Et bien si je m'en réfère à votre code get_rect est une méthodes et topleft un attribut de l'objet retourné par cette méthode (qui existe sans aucun doute avant mais dont get_rect() permet d'avoir une référence). Code :
Code :
@+
__________________
Merci d'utiliser le forum pour les questions techniques. |
||||
|
|
00
|
|
|
#9 | ||
|
Expert Confirmé
![]() Patrice BLANGARINTechnicien Help Desk, maintenance, réseau, système et + Inscription : juin 2006 Messages : 2 650 ![]() |
Re,
Normal, ce n'était pas une erreur de pygame mais de Python Code :
__________________
Merci d'utiliser le forum pour les questions techniques. |
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com