cpp_drawing/primitives/circle.cpp
2025-09-26 11:00:11 +02:00

25 lines
579 B
C++

#include "circle.hpp"
#include "math/transforms.hpp"
#include "contexts/drawing_context.hpp"
void primitives::Circle::Translate(const math::Vector& offset)
{
m_center += offset;
}
void primitives::Circle::Rotate(const math::Vector& center, float angle)
{
m_center = math::RotatePoint(center, angle, m_center);
}
void primitives::Circle::Scale(const math::Vector& center, float factor)
{
m_center = math::ScalePoint(center, factor, m_center);
m_radius *= factor;
}
void primitives::Circle::Draw(DrawingContext& ctx)
{
ctx.DrawCircle(m_center, m_radius);
}