Seite 1 von 1

pygame.draw mit Textur?

Verfasst: Dienstag 25. März 2008, 11:33
von jansie
Hallo Welt.
ist es möglich zum Beispiel ein mit Pygame (über pygame.draw.rect) gezeichnetes Rechteck mit einer Textur (textur.png) zu füllen statt mit einer Farbe. In der Pygame Docu steht nichts dergleichen :-(. Kann mir hier jemand helfen?

Verfasst: Dienstag 25. März 2008, 12:08
von BlackJack
Ist so nicht möglich. Du kannst aber mit der Textur ein `Surface` erstellen, dass so gross wie das grösste Rechteck ist, dass Du zeichnen möchtest und dann einen Auschnitt davon in ein anderes `Surface` "blitten".

Verfasst: Dienstag 25. März 2008, 12:10
von Hyperion
Ich wüßte nicht, dass das möglich wäre! Für mich stellt sich alleine die Frage: Wozu? Es gibt doch dafür die Surfaces und den blit-Mechanismus!
http://www.pygame.org/docs/ref/surface. ... rface.blit

Wieso brauchst Du da ein rect?

Verfasst: Samstag 5. April 2008, 13:54
von jansie
Für mich stellt sich alleine die Frage: Wozu?
Ich habe das nicht nur mit einem Rechteck sondern auch mit einem Dreieck vor, daher klappt das mit dem Blit nicht so wirklich :-(.

Verfasst: Samstag 5. April 2008, 13:57
von Hyperion
jansie hat geschrieben:
Für mich stellt sich alleine die Frage: Wozu?
Ich habe das nicht nur mit einem Rechteck sondern auch mit einem Dreieck vor, daher klappt das mit dem Blit nicht so wirklich :-(.
Dann pass doch einfach vorher die textur so an, dass sie nur noch das Dreieck füllt! Der Rest dann durchsichtig und gut ist!

Verfasst: Sonntag 6. April 2008, 09:02
von sechsrad
Dann pass doch einfach vorher die textur so an, dass sie nur noch das Dreieck füllt! Der Rest dann durchsichtig und gut ist!
oder kannste ja auch gleich die textur mit einer maske belegen(zb mit paintshop) und dann mit diesem befehl die maske unsichtbar schalten:
bild_rect.set_colorkey((255,0,255), RLEACCEL)

ich glaube wenn du mit paintshop einen alphakanal herstellst,brauchste den befehl noch nicht ein mal.

Verfasst: Mittwoch 9. April 2008, 16:08
von jansie
jupp klappt.. danke :-)