galaxy 1.0.0
Real-Time C++23 Game Programming Framework. Built on data-driven design principles and agile software engineering.
Loading...
Searching...
No Matches
Ellipse.hpp
Go to the documentation of this file.
1
7
8#ifndef GALAXY_GRAPHICS_SHAPES_ELLIPSE_HPP_
9#define GALAXY_GRAPHICS_SHAPES_ELLIPSE_HPP_
10
12
13namespace galaxy
14{
15 namespace graphics
16 {
20 class Ellipse final : public Shape
21 {
22 public:
26 Ellipse();
27
32
37
41 virtual ~Ellipse();
42
49 void create(const float fragments, const glm::vec2& radii);
50
56 [[nodiscard]]
57 float fragments() const;
58
64 [[nodiscard]]
65 const glm::vec2& radii() const;
66
67 private:
72
76 glm::vec2 m_radii;
77 };
78 } // namespace graphics
79} // namespace galaxy
80
81#endif
An elliptical circle.
Definition Ellipse.hpp:21
Ellipse & operator=(Ellipse &&)
Move assignment operator.
Definition Ellipse.cpp:35
float fragments() const
Get fragments.
Definition Ellipse.cpp:92
glm::vec2 m_radii
Radius of ellipse.
Definition Ellipse.hpp:76
virtual ~Ellipse()
Destructor.
Definition Ellipse.cpp:48
Ellipse()
Constructor.
Definition Ellipse.cpp:20
const glm::vec2 & radii() const
Get radii.
Definition Ellipse.cpp:97
float m_fragments
Number of points used to create shape.
Definition Ellipse.hpp:71
void create(const float fragments, const glm::vec2 &radii)
Create the ellipse.
Definition Ellipse.cpp:52
A generic 2D shape.
Definition Shape.hpp:22
Animated.cpp galaxy.
Definition Animated.cpp:16