User Tools

Site Tools


didattici:esempio3sfml

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
didattici:esempio3sfml [2019/12/31 19:32] profprodidattici:esempio3sfml [2020/06/08 22:20] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +=====Esempio 3 con sfml (cpp)=====
  
 +**NOTA**: questo codice ha un problema: la CPU vola al 100%.... per risolvere il problema vedi [[didattici:esempio3sfml]]
 +
 +  * prima di compilare è necessario installare i pacchetti elencati nella pagina [[didattici:sfml#linguaggio_c_plus_plus|sfml]] 
 +  * poi è necessario mettere nella stessa cartella una piccola immagine **assi.png** (200x200) {{ :didattici:assi.png?direct |esempio di assi cartesiani con asse y diretto in basso}}
 +  * poi per compilare <code>  g++ esempio3.cpp -lsfml-graphics -lsfml-system -lsfml-window </code>
 +
 +<file cpp esempio3.cpp >
 +
 +#include <SFML/Graphics.hpp>
 +
 +int main()
 +{
 +    sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");    
 +    sf::View fixedView = window.getView(); 
 +    sf::Texture texture;
 +    texture.loadFromFile("assi.png");
 +    sf::Sprite spriteSfondo(texture);
 +
 +    sf::VertexArray linea(sf::Lines,2);
 +
 +    linea[0].position.x=10.f;
 +    linea[0].position.y=10.f; // x1,y1
 +    linea[0].color=sf::Color::Green;
 +    linea[1].position.x=150.f;
 +    linea[1].position.y=150.f; // x2,y2
 +    linea[1].color=sf::Color::Green;
 +
 +    while (window.isOpen())
 +    {
 +        sf::Event event;
 +        while (window.pollEvent(event))
 +        {
 +            if (event.type == sf::Event::Closed)
 +                window.close();
 +        }
 +
 +        window.clear();
 + window.setView(fixedView); 
 + window.draw(spriteSfondo);
 + window.draw(linea);  // segmento
 +        //window.draw(shape); // qualsiasi altro oggetto aggiunto sopra
 +        
 +        window.display();
 +    }
 +
 +    return 0;
 +}
 +</file>
didattici/esempio3sfml.txt · Last modified: 2020/06/08 22:20 by 127.0.0.1