main.cpp 7.76 KiB
//#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 }); // отобразить на всём окне
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
// // 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(); }