[Pygame]: переместить поверхность в положение - PullRequest
0 голосов
/ 24 марта 2020

Существует ли алгоритм для изменения набора координат, чтобы он перемещался к другому набору координат? Например, если у меня есть топор, ay = (20,30) a

#fonctions 
import pygame, sys
from pygame.locals import *
pygame.init()
fpsClock = pygame.time.Clock()
windows= pygame.display.set_mode((1200,500), 0, 32)
pygame.display.set_caption('testing')

size = width, height = (32, 32)
PNGImg = pygame.Surface(size)

sob_X=575
sob_Y=250
FPS = 15 # frames per second setting
RED= (255, 0, 0)  #red color

while True:
    windows.fill((54, 141, 197))     
    pygame.draw.circle(windows, RED, (70, 80), 20, 0)
    windows.blit(PNGImg, (sob_X,sob_Y))

    dis_X=sob_X-600 #cicle X_Cordinate
    dis_Y=sob_X-870  #cicle Y_Cordinate
    if dis_X<0:
        sob_X=sob_X+ dis_X
        if sob_X==70 and dis_Y<0:
            sob_Y=sob_X+dis_Y
        elif sob_X==70 and dis_Y>0:
                sob_Y=sob_Y-dis_Y
    elif dis_X>0:
        sob_X=sob_X -dis_X
        if sob_X==70 and dis_Y<0:
            sob_Y=sob_Y+dis_Y
        elif sob_X==70 and dis_Y>0:
            sob_Y=sob_Y-dis_Y

    windows.blit(PNGImg, (sob_X,sob_Y))
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
    pygame.display.update()
    fpsClock.tick(FPS)



pygame.quit()

nd bx, by = (40,60)

Как изменить ax и ay (координату изображения "поверхность") на равные bx а мимо? (Желательно алгоритм, достижимый в python.) Я пытался сделать алгоритм, но в конце концов не работает, спасибо

1 Ответ

0 голосов
/ 24 марта 2020

Отвечаю здесь, поскольку я пока не могу комментировать, но из самого вопроса, вы хотите сделать ax, ay = bx, by? Вы можете просто сделать это, или даже отдельные, такие как ax = by.

С примером из терминала:

>>> ax,ay=(20,30)
>>> bx,by=(40,60)
>>> ax, ay = bx, by
>>> ax, ay
(40, 60)
...