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

Código Único de Factura en C Sharp

En este post implementamos el «Código Único de Factura» según la documentación otorgada por Impuestos Bolivia en su siti[...]

Instalación de Netbeans en Ubuntu

Netbeans es uno de los entornos de desarrollo integrado (Integrated Development Environment – IDE)  más conocidos[...]

Gestión de Stock – La Vista (Parte 3)

En esta tercera parte del tutorial crearemos la interfaz de usuario GUI (VISTA) para el sistema de gestión de stock. Tom[...]

Procesamiento de imágenes en java con ImageMagick

im4java es una interfaz pura de Java para la línea de comandos de ImageMagick. La interfaz de la línea de comandos de IM[...]

Imprimir imagen con Print

La siguiente clase hace uso de PRINT para imprimir una imagen que se encuentra en un variable de tipo FileInputStream, e[...]

Conectar java con Firebird

En este tutorial veremos la forma de conectarse a una base de datos de Firebird utilizando el lenguaje Java y el IDE Net[...]