объект движется в направлении, к которому он обращен - PullRequest
0 голосов
/ 15 марта 2020

Я работаю над гонкой по автомобильным гонкам, и сейчас пытаюсь заставить машину двигаться. Мне не нужно, чтобы физика машины была реалистичной c, мне просто нужна машина (в данном случае прямоугольник), чтобы двигаться в направлении, в котором она стоит. Поэтому, если бы я должен был повернуть машину примерно на 20 градусов, я бы хотел, чтобы она двигалась в этом направлении. Но я не уверен в том, как бы я это сделал (я провел небольшое исследование векторов, но многого не понял). В настоящее время коробка движется во всех направлениях, но не вращается.

import java.awt.*;

public class Box {

    public boolean[] KeyHold;
    public double posx, posy, angle;

    public Box() {
        posx = 1280/2;
        posy = 720/2;
    }

    public void update() {
        KeyHold = Inputs.getKeyHold();
        if(KeyHold[39]) {
            posx++;
        } else if (KeyHold[37]) {
            posx--;
        }

        if(KeyHold[40]) {
            posy++;
        } else if (KeyHold[38]) {
            posy--;
        }
    }

    public void draw(Graphics g) {
        Graphics2D g2d = (Graphics2D) g;
        g2d.clearRect(0, 0, 1280, 720);
        g2d.setColor(Color.black);
        g2d.fillRect((int) posx, (int) posy, 30, 60);
    }

}
...