//#include "SFML/Graphics.hpp" #include "Application.h" //int main() { // sf::RenderWindow window(sf::VideoMode(500, 500), "SFML works!"); // создаем окно 500 на 500 пикселей // window.setKeyRepeatEnabled(false); // оключил дублирование событий, чтобы цвет менялся лишь при нажании (2-ой пункт) // window.setFramerateLimit(25); // ограничиваем количество кадров в секунду 25-ью // sf::CircleShape circle{ 250 }; // создал кружок радиусом 250 // // 4-ый пункт // //задаем точку origin в правом верхнем углу круга // sf::Vector2f pos_circle = circle.getOrigin(); // pos_circle.x += 2 * circle.getRadius(); // circle.setOrigin(pos_circle); // // задаем изначальную позицию круга в правом верхнем углу экрана // circle.setPosition(window.getSize().x, 0); // //#include <iostream> // //#include "SFML/Graphics.hpp" // // // //int main() { // // sf::RenderWindow window(sf::VideoMode(500, 500), "SFML works!"); // создаем окно 500 на 500 пикселей // // window.setKeyRepeatEnabled(false); // оключил дублирование событий, чтобы цвет менялся лишь при нажании (2-ой пункт) // // window.setFramerateLimit(25); // ограничиваем количество кадров в секунду 25-ью // // sf::CircleShape circle{ 250 }; // создал кружок радиусом 250 // // // 4-ый пункт // // //задаем точку origin в правом верхнем углу круга // // sf::Vector2f pos_circle = circle.getOrigin(); // // pos_circle.x += 2 * circle.getRadius(); // // circle.setOrigin(pos_circle); // // // задаем изначальную позицию круга в правом верхнем углу экрана // // circle.setPosition(window.getSize().x, 0); // // // // // sf::Event event; // // while (window.isOpen()) { // запускаем цикл, который каждый кадр будет обрабатывать наше окно // // while (window.pollEvent(event)) { // обрабатываю все накопившиеся за кадр события // // if (event.type == sf::Event::Closed) // обрабатываю закрытие окна // // window.close(); // // if (event.type == sf::Event::KeyPressed) { // обрабатываю нажатие клавиши (2-ой пукнт) // // switch (event.key.code) { // // case sf::Keyboard::Space: // если нажат пробел - меняю цвет // // circle.setFillColor(sf::Color{sf::Uint8(rand() % 256u), sf::Uint8(rand() % 256u), sf::Uint8(rand() % 256u)}); // закрашиваем круг случайным цветом из всей палитры // // break; // // } // // } // // // 5-ый пункт // // if (event.type == sf::Event::Resized) { // если изменился размер окна // // sf::View view = window.getView(); // возьмём текущий View // // view.setSize(event.size.width, event.size.height); // изменим его // // window.setView(view); // зададим изменённый View окну // // } // // // // // } // // // // if (sf::Keyboard::isKeyPressed(sf::Keyboard::Enter)) // real time input (отслеживаем длительное нажатие) (3-ий пункт) // // circle.scale({ 0.99, 0.99 }); // уменьшаем круг на 1% // // // // // 6-ой пункт // // // Рисуем в основном виде // // sf::View view = window.getView(); // // view.setViewport({ 0.0, 0.0, 1.0, 1.0 }); // отобразить на всём окне // // window.setView(view); // // window.draw(circle); // // // // // Рисуем в левой нижней четверти // // view.setViewport({ 0., 0.8, 0.2, 0.2 }); // отобразить снизу слева мини // // window.setView(view); // // window.draw(circle); // // // // window.display(); // // view.setViewport({ 0.0, 0.0, 1.0, 1.0 }); // отобразить на всём окне // // window.setView(view); // // window.draw(circle); // // // // // Рисуем в левой нижней четверти // // view.setViewport({ 0., 0.8, 0.2, 0.2 }); // отобразить снизу слева мини // // window.setView(view); // // window.draw(circle); // // } // //} // sf::Event event; // while (window.isOpen()) { // запускаем цикл, который каждый кадр будет обрабатывать наше окно // while (window.pollEvent(event)) { // обрабатываю все накопившиеся за кадр события // if (event.type == sf::Event::Closed) // обрабатываю закрытие окна // window.close(); // if (event.type == sf::Event::KeyPressed) { // обрабатываю нажатие клавиши (2-ой пукнт) // switch (event.key.code) { // case sf::Keyboard::Space: // если нажат пробел - меняю цвет // circle.setFillColor(sf::Color{sf::Uint8(rand() % 256u), sf::Uint8(rand() % 256u), sf::Uint8(rand() % 256u)}); // закрашиваем круг случайным цветом из всей палитры // break; // } // } // // 5-ый пункт // if (event.type == sf::Event::Resized) { // если изменился размер окна // sf::View view = window.getView(); // возьмём текущий View // view.setSize(event.size.width, event.size.height); // изменим его // window.setView(view); // зададим изменённый View окну // } // // // } // // if (sf::Keyboard::isKeyPressed(sf::Keyboard::Enter)) // real time input (отслеживаем длительное нажатие) (3-ий пункт) // circle.scale({ 0.99, 0.99 }); // уменьшаем круг на 1% // // // 6-ой пункт // // Рисуем в основном виде // sf::View view = window.getView(); // view.setViewport({ 0.0, 0.0, 1.0, 1.0 }); // отобразить на всём окне // window.setView(view); // window.draw(circle); // // // Рисуем в левой нижней четверти // view.setViewport({ 0., 0.8, 0.2, 0.2 }); // отобразить снизу слева мини // window.setView(view); // window.draw(circle); // // window.display(); // view.setViewport({ 0.0, 0.0, 1.0, 1.0 }); // отобразить на всём окне // window.setView(view); // window.draw(circle); // // // Рисуем в левой нижней четверти // view.setViewport({ 0., 0.8, 0.2, 0.2 }); // отобразить снизу слева мини // window.setView(view); // window.draw(circle); // } //} int main() { Application app; return app.run(); }