"""
Sencilla demo grafica
Sample Python/Pygame Programs
Simpson College Computer Science
http://programarcadegames.com/
http://simpson.edu/computer-science/
"""
# Importamos la biblioteca de funciones llamada 'pygame'
import pygame
# Inicializamos el motor de juegos
pygame.init()
# Definimos algunos colores
NEGRO = (0, 0, 0)
BLANCO = (255, 255, 255)
AZUL = (0, 0, 255)
VERDE = (0, 255, 0)
ROJO = (255, 0, 0)
PI = 3.141592653
# Establecemos el alto y largo de la pantalla
dimensiones = [400, 500]
pantalla = pygame.display.set_mode(dimensiones)
pygame.display.set_caption("Rotar Texto")
# Iteramos hasta que el usuario haga click sobre el botón de salida.
hecho = False
reloj = pygame.time.Clock()
rotar_texto_grados = 0
# Iteramos mientras hecho == False
while not hecho:
for evento in pygame.event.get():
if evento.type == pygame.QUIT:
hecho = True
# Todo el código de dibujo ocurre después del bucle for pero
# dentro del bucle principal while not hecho.
# Limpiamos la pantalla y establecemos el color de fondo
pantalla.fill(BLANCO)
# Dibujamos algunos bordes
pygame.draw.line(pantalla, NEGRO, [100,50], [200, 50])
pygame.draw.line(pantalla, NEGRO, [100,50], [100, 150])
# Seleccionamos la fuente de texto a usar, su tamaño, negrita, cursiva
fuente = pygame.font.SysFont('Calibri', 25, True, False)
# Texto de lado
textoo = fuente.render("Texto de lado", True, NEGRO)
texto = pygame.transform.rotate(textoo, 90)
pantalla.blit(texto, [0, 0])
# Texto de cabeza
texto = fuente.render("Texto de cabeza", True, NEGRO)
texto = pygame.transform.rotate(texto, 180)
pantalla.blit(texto, [30, 0])
# Texto de cabeza y de lado
texto = fuente.render("Texto de cabeza y de lado", True, NEGRO)
texto = pygame.transform.flip(texto, False, True)
pantalla.blit(texto, [30, 20])
# Rotación en movimiento
texto = fuente.render("Texto rotado", True, NEGRO)
texto = pygame.transform.rotate(texto, rotar_texto_grados)
rotar_texto_grados += 1
pantalla.blit(texto, [100, 50])
# Avancemos y actualicemos la pantalla con todo lo que hemos dibujado.
# Esto DEBE suceder después de todos los demás comandos de dibujo.
pygame.display.flip()
# Esto limita el bucle while a un máximo de 60 veces por segundo
# Omitimos esto y usamos toda la CPU que podamos
reloj.tick(60)
# Se bueno con el IDLE
pygame.quit()