Formen proportional die Größe mit Fenster in SFML 2.X

Den code aus dem tutorial auf der SFML-Website. Wenn ich kompilieren und ausführen, der Kreis, erfolgt die Skalierung proportional wie das Fenster skaliert werden, indem der Benutzer. Ich möchte den Kreis zu bleiben, eine Konstante Form.

Wenn auf dem Bildschirm die Größe neu, sowohl die richtigen Abmessungen und die richtige Kreis-radius werden auf der Konsole ausgegeben, aber die Art und Weise der Kreis ist gezogen, der Bildschirm ist definitiv nicht das, was es vorgibt zu sein. Der Kreis ist nicht optisch verzerrt in keiner Weise, sondern sieht aus, als wenn es gezeichnet wird, mit einem anderen Satz von Werten, was auf der Konsole ausgegeben.

Den antialiasingLevel macht es keinen Unterschied zu der Form von dawn, wenn das hilft.

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

int main()
{
    sf::ContextSettings settings;
    settings.antialiasingLevel = 8;

    sf::RenderWindow window(sf::VideoMode(200, 200), "Title", sf::Style::Default, settings);
    sf::CircleShape shape(100);
    shape.setFillColor(sf::Color::Green);

    while (window.isOpen())
    {
        sf::Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
            else if (event.type == sf::Event::Resized)
            {
                std::cout << "resize: ("  << event.size.width << ',' << event.size.height << ") -> " << shape.getRadius() << std::endl;
            }
        }

        window.clear();
        window.draw(shape);
        window.display();
    }

    return 0;
}
InformationsquelleAutor Morgoth | 2015-01-05
Schreibe einen Kommentar