• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed rotacja w sfml

0 głosów
101 wizyt
pytanie zadane 29 kwietnia 2017 w C i C++ przez Pajdas Mądrala (5,990 p.)
zamknięte 29 kwietnia 2017 przez Pajdas

mam pytanie dotyczące rotacji w sfml.

#include <SFML/Graphics.hpp>
#include <cmath>

int main()
{
    sf::RenderWindow window(sf::VideoMode(600, 400), "SFML works!",sf::Style::Fullscreen);
    sf::Texture t;
    t.loadFromFile("samochod.png");
    sf::Sprite samochod(t);
    samochod.setTextureRect(sf::IntRect(0,0,64,40));
    samochod.setOrigin(32,40);
    samochod.setPosition(200,300);

    sf::Clock time;
    while (window.isOpen())
    {
        double dt = time.restart().asSeconds();

        sf::Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
            if(sf::Keyboard::isKeyPressed(sf::Keyboard::Escape))
            {
                window.close();
            }
        }

        if(sf::Keyboard::isKeyPressed(sf::Keyboard::W))
        {
            if(sf::Keyboard::isKeyPressed(sf::Keyboard::A))
            {
                samochod.rotate(-90*dt);
            }
            if(sf::Keyboard::isKeyPressed(sf::Keyboard::D))
            {
                samochod.rotate(90*dt);
            }
            double angle = samochod.getRotation()*0.0174532925;
            double distance = 200*dt;
            samochod.move(distance*cos(angle),distance*sin(angle));
        }

        window.draw(samochod);
        window.display();
    }

    return 0;
}

zrobiłem program który symuluje ruch "samochodu"

w kodzie nie ma window.clear(); aby przedstawić wam z czym jest problem;

przez to że okno się nie czyści widać jakiej wielkości koła zatacza sprite.

Przy skręcaniu w lewo koło jest wyraźnie mniejsze niż przy skręcaniu w prawo. Może mi ktoś powiedzieć gdzie jest błąd, albo dlaczego tak się dzieje

komentarz zamknięcia: otrzymałem odpowiedz od 10kw10
1
komentarz 29 kwietnia 2017 przez 10kw10 Pasjonat (23,020 p.)
moze srodek jest zle ustawiony ?
komentarz 29 kwietnia 2017 przez Pajdas Mądrala (5,990 p.)
edycja 29 kwietnia 2017 przez Pajdas
Środek?
Środek czego?
Jeżeli chodzi ci o origin to nie robi to żaden różnicy

 

EDIT:

zwracam honor, źle popatrzyłem i pomyliły mi się trochę osie.

Temat zamykam :)

Podobne pytania

0 głosów
3 odpowiedzi 234 wizyt
pytanie zadane 19 lutego 2017 w C i C++ przez Munvik Dyskutant (8,290 p.)
0 głosów
2 odpowiedzi 157 wizyt
pytanie zadane 6 grudnia 2016 w C i C++ przez 10kw10 Pasjonat (23,020 p.)
0 głosów
1 odpowiedź 111 wizyt
pytanie zadane 5 czerwca 2016 w C i C++ przez Maciek123233 Gaduła (3,210 p.)
Porady nie od parady
Nie wiesz jak poprawnie zredagować pytanie lub pragniesz poznać którąś z funkcji forum? Odwiedź podstronę Pomoc (FAQ) dostępną w menu pod ikoną apteczki.FAQ

64,791 zapytań

111,250 odpowiedzi

233,951 komentarzy

46,683 pasjonatów

Przeglądających: 144
Pasjonatów: 1 Gości: 143

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...