#pragma once #ifndef DISPLAY_H // make sure sfml is installed: // linux - sudo apt-get install libsfml-dev // windows - manual dl from https://www.sfml-dev.org/download.php #include #include "Line.h" //class Point; //class Line; #define OFFSET 10.f #define WIDTH 800 #define HEIGHT 600 class Display { private: int m_stepSize; sf::Font m_font; sf::Text m_textStatus; //std::vector m_points; std::vector m_points; std::vector m_labels; //sf::VertexArray m_points; //sf::VertexArray m_labels; //std::vector m_hull; sf::VertexArray m_hull; sf::ConvexShape m_convex; //std::map > m_pointsForLine; std::vector m_lines; Line *m_curLine = nullptr; unsigned int m_step = 0; void update(); void render(sf::RenderWindow &); public: Display(const std::vector &, int stepSize = 0); void show(); }; #endif // DISPLAY_H