13Circle::Circle(int32_t radius,
const Border* border) : m_Radius(radius)
18int32_t Circle::getRadius()
const {
return m_Radius; }
19void Circle::setRadius(int32_t radius) { m_Radius = radius; }
21void Circle::render(
const Sml::Rectangle<int32_t>& targetRegion)
23 renderShadow(targetRegion);
25 Sml::Circle circlePrimitive = Sml::Circle(targetRegion.pos + getLayoutPos() + m_Radius* Sml::Vec2i(1, 1),
28 Sml::Renderer::getInstance().setColor(getFillColor());
29 Sml::renderFilledCircle(circlePrimitive);
31 if (getBorder() !=
nullptr)
33 Sml::Renderer::getInstance().setColor(getBorder()->getColor());
34 Sml::renderCircle(circlePrimitive);
38int32_t Circle::computePrefWidth(int32_t height)
const {
return 2 * m_Radius + 1; }
39int32_t Circle::computePrefHeight(int32_t width)
const {
return 2 * m_Radius + 1; }