Você está aqui: Python ::: Pygame ::: Círculos, Ovais e Elípses |
Como desenhar um círculo nas coordenadas do clique do mouse no Pygame do PythonQuantidade de visualizações: 976 vezes |
Nesta dica mostrarei como podemos tirar proveito da função pygame.draw.circle() da biblioteca Pygame para desenhar círculos nas coordenadas do clique do mouse na tela de desenho. Note que os círculos desenhados terão cores de preenchimento aleatório, assim o valor para o seu raio. Veja como usamos a função pygame.mouse.get_pos() para retornar as coordenadas x e y do mouse e usá-la para definir o local exato que o círculo será desenhado. Neste exemplo você aprenderá ainda como criar um vetor de cores e sortear uma cor para preencher o círculo sendo desenhado. Veja o código Pygame completo para o exemplo: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- # vamos importar as bibliotecas necessárias import pygame, sys from pygame.locals import * # vamos importar o módulo Random import random # inicializa a biblioteca pygame.init() # obtém a superfície do jogo e define o tamanho da tela DISPLAYSURF = pygame.display.set_mode((600, 450)) # vamos definir o título da janela do jogo pygame.display.set_caption('Meu jogo Pygame') # vamos definir o branco como cor de fundo cor_fundo = (255, 255, 255) # primeiro criamos uma cor (branca) DISPLAYSURF.fill(cor_fundo) # e definimos a cor para a superfície da janela # agora vamos criar algumas cores VERMELHO = (255, 0, 0) AZUL = (0, 0, 255) VERDE = (0, 128, 0) AMARELO = (255, 255, 0) ROXO = (128, 0, 128) MAGENTA = (255, 0, 255) # e um vetor de cores cores = [VERMELHO, AZUL, VERDE, AMARELO, ROXO, MAGENTA] # e aqui nós entramos no loop do game while True: # monitoramos os eventos for evento in pygame.event.get(): # se o evento foi um pedido para sair if evento.type == QUIT: # fechamos a tela do jogo pygame.quit() # e saimos do programa sys.exit() # é um evento de pressionamento do botão do mouse? if evento.type == MOUSEBUTTONDOWN: # vamos obter as coordenadas do mouse posicao_mouse = pygame.mouse.get_pos() # agora vamos desenhar um círculo de cor aleatória e raio # aleatório, com x e y de acordo com as coordenadas do mouse cor_preenchimento = cores[random.randint(0, len(cores) - 1)] # vamos sortear o raio do círculo raio = random.randint(10, 120) # e finalmente desenhamos o círculo pygame.draw.circle(DISPLAYSURF, cor_preenchimento, (posicao_mouse[0], posicao_mouse[1]), raio, 0) # redesenha a tela continuamente pygame.display.update() Execute a aplicação Pygame e clique em pontos aleatórios na tela. Você terá um resultado parecido com o mostrado na imagem abaixo: ![]() |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Delphi - Como obter a quantidade de registros em um TClientDataSet do Delphi usando a propriedade RecordCount |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |