37 static_assert(std::is_arithmetic_v<T>,
"T must be arithmetic !");
41 Rect(Vector2<T>
const& position, Vector2<T>
const& size);
44 explicit Rect(Rect<U>
const& rectangle);
46 [[nodiscard]]
bool operator==(Rect<T>
const& right)
const;
47 [[nodiscard]]
bool operator!=(Rect<T>
const& right)
const;
49 [[nodiscard]]
bool contains(Vector2<T>
const& point)
const;
50 [[nodiscard]]
bool contains(Rect<T>
const& rectangle)
const;
51 [[nodiscard]] std::optional<Rect<T>> findIntersection(Rect<T>
const& rectangle)
const;
53 [[nodiscard]] Vector2<T> getPosition()
const;
54 [[nodiscard]] Vector2<T> getSize()
const;