26 lines
615 B
C++
26 lines
615 B
C++
#include "rectangle.hpp"
|
|
#include "math/transforms.hpp"
|
|
#include "renderers/renderer.hpp"
|
|
|
|
void shapes::Rectangle::Translate(const math::Vector& offset)
|
|
{
|
|
m_pos += offset;
|
|
}
|
|
|
|
void shapes::Rectangle::Rotate(const math::Vector& center, float angle)
|
|
{
|
|
m_pos = math::RotatePoint(center, angle, m_pos);
|
|
m_angle = math::RotateAngle(m_angle, angle);
|
|
}
|
|
|
|
void shapes::Rectangle::Scale(const math::Vector& center, float factor)
|
|
{
|
|
m_pos = math::ScalePoint(center, factor, m_pos);
|
|
m_size *= factor;
|
|
}
|
|
|
|
void shapes::Rectangle::Draw(Renderer& renderer)
|
|
{
|
|
renderer.DrawRectangle(m_pos, m_size, m_angle);
|
|
}
|