2009-07-02 4 views
0

J'ai une application écrite en python qui est fondamentalement un etch-a-sketch, vous déplacez des pixels autour avec WASD et les touches fléchées et il laisse une trace. Cependant, je veux ajouter un compteur pour la quantité de pixels sur l'écran. Comment est-ce que j'ai la mise à jour de compteur sans mettre à jour toute la surface et pwning les dessins de pixel?Mise à jour d'un aspect d'une surface de Pygame

Répondre

1

utilisation Surface .blit (source, dest, zone = None, special_flags = 0): return Rect

dest peut être une paire de coordonnées représentant l'angle supérieur gauche de la source.

Vous souhaitez probablement effacer l'ancienne valeur de votre compteur avant de la remplacer. Pour cela, vous pouvez capturer l'arrière-plan avant de commencer à vider votre compteur pour la première fois. Puis blittez cette image à chaque fois avant de mettre à jour la valeur du compteur.

En outre, vous devez faire l'arrière-plan de la surface que votre blitting transparent. En supposant que vous avez une police noire sur fond blanc, vous pouvez utiliser:

source.set_colorkey((255,255,255))