OUJOOD.COM
Rotation d'une image en utilisant la souri
Pour effectuer la rotation de l'image en fonction du mouvement horizontal de la souris. Assurez-vous d'avoir une image valide à l'emplacement spécifié dans votre code. et executer le code suivant :
Exemple : 📋 Copier le code
import pygame
import sys
from pygame.locals import *
pygame.init()
# Initialisez la fenêtre
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption('Pygame - Rotate Image')
# Chargez l'image
image = pygame.image.load('exemple_image.png')
original_image = image # Conservez une copie de l'image originale
# Position initiale de l'image
image_rect = image.get_rect(center=(width // 2, height // 2))
# Paramètre initial de rotation
rotation_angle = 0.0
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
elif event.type == MOUSEMOTION:
if pygame.mouse.get_pressed()[0]: # Bouton gauche enfoncé
x, _ = event.rel
rotation_angle += x # Faites pivoter l'image en fonction du mouvement horizontal
# Rotation de l'image
rotated_image = pygame.transform.rotate(original_image, rotation_angle)
# Mettez à jour la position de l'image rectangulaire
image_rect = rotated_image.get_rect(center=image_rect.center)
# Effacez l'écran
screen.fill((255, 255, 255))
# Dessinez l'image sur l'écran
screen.blit(rotated_image, image_rect)
# Mettez à jour l'affichage
pygame.display.flip()
Voici un rappel des fonctionnalités de ce code :
- Il initialise Pygame et la fenêtre avec les dimensions spécifiées.
- Charge l'image et conserve une copie originale.
- Définit la position initiale de l'image au centre de la fenêtre.
- Utilise l'événement MOUSEMOTION pour détecter le mouvement horizontal de la souris lorsque le bouton gauche est enfoncé.
- Fait pivoter l'image en fonction du mouvement horizontal.
- Met à jour la position de l'image rectangulaire.
- Efface l'écran, dessine l'image rotative, et met à jour l'affichage.
Vous pouvez également ajouter une pause ou une limite de rafraîchissement pour rendre l'animation plus lente et plus facile à contrôler. Par exemple, ajouter pygame.time.delay(10) à la fin de la boucle principale pour une pause de 10 millisecondes entre les trames.
effectuer un scale (mise à l'échelle) en utilisant la souri
Pour effectuer la mise à l'échelle de l'image en fonction du mouvement de la molette de la souris. Assurez-vous d'avoir une image valide à l'emplacement spécifié.
Voici le code
Exemple : 📋 Copier le code
import pygame
import sys
from pygame.locals import *
pygame.init()
# Initialisez la fenêtre
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption('Pygame - Scale Image')
# Chargez l'image
image = pygame.image.load('exemple_image.png')
original_image = image # Conservez une copie de l'image originale
# Position initiale de l'image
image_rect = image.get_rect(center=(width // 2, height // 2))
# Paramètre initial de mise à l'échelle
scale_factor = 1.0
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
elif event.type == MOUSEBUTTONDOWN:
if event.button == 4: # Molette vers le haut
scale_factor += 0.1
elif event.button == 5: # Molette vers le bas
scale_factor -= 0.1
# Mise à l'échelle de l'image
scaled_image = pygame.transform.scale(original_image, (int(image.get_width() * scale_factor), int(image.get_height() * scale_factor)))
# Mettez à jour la position de l'image rectangulaire
image_rect = scaled_image.get_rect(center=image_rect.center)
# Effacez l'écran
screen.fill((255, 255, 255))
# Dessinez l'image sur l'écran
screen.blit(scaled_image, image_rect)
# Mettez à jour l'affichage
pygame.display.flip()
Voici les fonctionnalités de votre code :
- Il initialise Pygame et la fenêtre avec les dimensions spécifiées.
- Charge l'image et conserve une copie originale.
- Définit la position initiale de l'image au centre de la fenêtre.
- Utilise l'événement MOUSEBUTTONDOWN pour détecter les mouvements de la molette de la souris.
- Met à jour le facteur d'échelle en fonction de la direction de la molette (haut ou bas).
- Mise à l'échelle de l'image en fonction du facteur d'échelle.
- Met à jour la position de l'image rectangulaire.
- Efface l'écran, dessine l'image mise à l'échelle, et met à jour l'affichage.
Assurez-vous que Pygame est correctement installé et que l'image spécifiée existe à l'emplacement spécifié. Vous pouvez également ajuster le facteur d'échelle pour répondre à vos besoins spécifiques.