Difference between revisions of "Drawing shapes"
(→Rectangle) |
(→Rectangle) |
||
Line 62: | Line 62: | ||
<syntaxhighlight lang=python> | <syntaxhighlight lang=python> | ||
pygame.display.update() | pygame.display.update() | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ==Full Example== | ||
+ | <syntaxhighlight lang=python> | ||
+ | #Import statements are to enable the code to use the functions from the library | ||
+ | import pygame | ||
+ | import sys | ||
+ | import os | ||
+ | |||
+ | #initialize pygame & window | ||
+ | os.environ["SDL_VIDEO_CENTERED"] = "1" | ||
+ | pygame.init() | ||
+ | SCREENWIDTH = 500 | ||
+ | SCREENHEIGHT = 500 | ||
+ | SCREENSIZE = [SCREENWIDTH, SCREENHEIGHT] | ||
+ | SCREEN = pygame.display.set_mode(SCREENSIZE) | ||
+ | |||
+ | #caption for the game | ||
+ | pygame.display.set_caption("My first game in pygame") | ||
+ | |||
+ | rect1 = pygame.Rect([100,100,20,20]) | ||
+ | |||
+ | COLOR = (255, 0, 200) | ||
+ | |||
+ | pygame.draw.rect(SCREEN, COLOR, rect1, 1) | ||
+ | |||
+ | #game loop | ||
+ | while True: | ||
+ | pygame.display.update() | ||
+ | for events in pygame.event.get(): #get all pygame events | ||
+ | if events.type == pygame.QUIT: #if event is quit then shutdown window and program | ||
+ | pygame.quit() | ||
+ | sys.exit() | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 20:40, 21 February 2018
Make sure you are starting with a working pygame project, this will require you to install pygame and copy the code from the page below to make a start:
Rectangle
You can declare some variables to use for your rectangle, they require the x coordinate, the y coordinate, the width and the height:
LEFT = 100
TOP = 100
LENGTH = 20
WIDTH = 20
RECTCOORD = [LEFT, TOP, LENGTH, WIDTH]
rect1 = pygame.Rect(RECTCOORD)
This is the same as writing:
rect1 = pygame.Rect([100,100,20,20])
Colour
Before we can draw your rectangle to the screen we will need to define a colour to use:
RED = 255
YELLOW = 230
BLUE = 200
COLOR = (RED, YELLOW, BLUE)
Again this is the same as writing just:
COLOR = (255, 230, 200)
Draw the Rectangle
We can now draw the rectangle to the screen:
pygame.draw.rect(SCREEN, COLOR, rect1, 0)
The 0 will cause the shape to be filled with colour, a value above 0 will draw the outline only and use the number for the line thickness. For example:
pygame.draw.rect(SCREEN, COLOR, rect1, 1)
Update the screen
Now you have drawn something new to the screen we need to update it. We can just update a single object:
pygame.display.update(rect1)
or we can update everything:
pygame.display.update()
Full Example
#Import statements are to enable the code to use the functions from the library
import pygame
import sys
import os
#initialize pygame & window
os.environ["SDL_VIDEO_CENTERED"] = "1"
pygame.init()
SCREENWIDTH = 500
SCREENHEIGHT = 500
SCREENSIZE = [SCREENWIDTH, SCREENHEIGHT]
SCREEN = pygame.display.set_mode(SCREENSIZE)
#caption for the game
pygame.display.set_caption("My first game in pygame")
rect1 = pygame.Rect([100,100,20,20])
COLOR = (255, 0, 200)
pygame.draw.rect(SCREEN, COLOR, rect1, 1)
#game loop
while True:
pygame.display.update()
for events in pygame.event.get(): #get all pygame events
if events.type == pygame.QUIT: #if event is quit then shutdown window and program
pygame.quit()
sys.exit()