Bagaimanakah cara saya memutarkan imej di sekeliling pusatnya menggunakan Pygame?
Anda boleh memutarkan imej di sekeliling pusatnya menggunakan pygame.transform.rotate () fungsi. Walau bagaimanapun, imej yang diputar akan lebih besar daripada imej asal dan bahagian tengah imej yang diputar tidak akan sama dengan bahagian tengah imej asal.
Untuk menyelesaikan masalah ini, anda perlu mengira offset antara pusat imej asal dan tengah imej diputar. Anda kemudiannya boleh menggunakan ofset ini untuk mengalihkan imej yang diputar supaya pusatnya berada pada kedudukan yang sama dengan tengah imej asal.
Berikut ialah contoh kod yang menunjukkan cara memutar imej di sekeliling pusatnya:
def rotate_image(image, angle): """Rotates an image around its center. Args: image: The image to be rotated. angle: The angle of rotation in degrees. Returns: The rotated image. """ # Calculate the offset between the center of the original image and the center of the rotated image. offset = (image.get_width() / 2, image.get_height() / 2) # Rotate the image around its center. rotated_image = pygame.transform.rotate(image, angle) # Move the rotated image so that its center is in the same position as the center of the original image. rotated_image = rotated_image.subsurface(pygame.Rect(-offset, -offset, image.get_width(), image.get_height())) # Return the rotated image. return rotated_image
Atas ialah kandungan terperinci Bagaimana untuk Memutar Imej Sekitar Pusatnya dalam Pygame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!