Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Python / Como crear un Grid en Pygame

Como crear un Grid en Pygame

Por Jesús Tepec viernes, marzo 11, 2016

Utilizando pygame para hacer gráficos en python, se muestra a continuación un sencillo ejemplo de cómo utilizar esta librería para dibujar una cuadrícula o rejilla. Lo que veremos como resultado es algo como lo que se muestra en la figura

grid python

Utilizando algunos trucos podremos elegir coordenadas donde podamos posicionar un cuadrado. Aquí no veremos cómo hacerlo, pero si estás interesado puedes consultar este tutorial Programando una cuadrícula con Pygame.

Código fuente

Se muestra el código completo para dibujar la cuadrícula, después se describe el código paso a paso y al final un vídeo para mostrar el funcionamiento.

 1 import pygame
 2 
 3 AZUL = (0, 0, 255)
 4 BLACK = (0, 0, 0)
 5 tamCuadro = 40
 6 
 7 pygame.init()
 8 size = (600, 600)
 9 screen = pygame.display.set_mode(size)
10 pygame.display.set_caption("Grid on PYGAME")
11 clock = pygame.time.Clock()
12 gameOver = False
13 while not gameOver:
14     for event in pygame.event.get():
15         if event.type == pygame.QUIT:
16             gameOver = True
17     screen.fill(BLACK)
18     for i in range(1, size[0], tamCuadro + 1):
19         for j in range(1, size[1], tamCuadro + 1):
20             pygame.draw.rect(screen, AZUL, [i, j, tamCuadro, tamCuadro], 0)
21     pygame.display.flip()
22     clock.tick(1)
23 pygame.quit()

Paso a paso

Crear colores. La forma de hacer un color es utilizando una tupla, la cual debe contener 3 elementos, uno para Rojo, otro para Verde y otro para Azul (RGB), los números que se utilicen deben estar en un rango de 0 a 255, donde 0 denota negro o sin color y 255 blanco o todo el color, así rojo sería de la siguiente forma.

ROJO = (255, 0, 0)

Tamaño de los cuadros. Usamos una variable para definir el tamaño de los cuadros, caso útil si se desea cambiar el tamaño y no tengamos que cambiar muchas líneas.

Dibujando la cuadrícula. Para llenar la pantalla de cuadrados, utilizamos dos bucles for, uno para recorrer el ancho y otro el alto de la pantalla, los iteradores i y j se irán aumentando según lo establecido previamente más uno (tamCuadro + 1), esto último para dejar un espacio entre los cuadros. Cuando se dibujan los cuadros i y j se pasan como puntos iniciales, y la variable tamCuadro definirá la longitud de los lados.

 1 for i in range(1, size[0], tamCuadro + 1):
 2     for j in range(1, size[1], tamCuadro + 1):
 3         pygame.draw.rect(screen, AZUL, [i, j, tamCuadro, tamCuadro], 0)

La parte de dibujo de formas podrás entenderla con mayor claridad en el siguiente enlace: Introducción a los gráficos en Pygame
Si variamos los valores del tamaño y color podemos obtener variaciones de la cuadrícula

python game

Funcionamiento

Tags

Artículos similares

¿Qué es y como se usa Jitsi Meet?

En estos días en los que medio mundo esta confinado en sus casas, la comunicación en tiempo real y preferentemente con v[...]

Validación XML con Esquema XSD en PHP

En este post realizaremos un pequeño ejemplo de validación de archivos XML utilizando el esquema XSD y el lenguaje PHP ([...]

Implementación de auditoría persistente en postgreSQL

La auditoría persistente de bases de datos es el proceso continuo de rastrear, registrar y almacenar de forma inmutable[...]

Lector Feed con Java/Rome

En este tutorial crearemos un lector de Feeds en Java/netbeans, pero antes debemosa saber que es un Feed, según Santa Wi[...]

Autenticación en php con MySql y POO

Autenticación en una pagina web es el proceso de confirmar que un usuario es quien dice ser, asi de simple. En el siguie[...]

Duplicación de objetos con la Interface Cloneable

En este post aprenderemos lo que es la clonación de objetos en java o lo que es lo mismo, generación de nuevas instancia[...]