mirror of
https://github.com/NoelFB/blah.git
synced 2025-04-14 01:56:05 +08:00
26 lines
526 B
C++
26 lines
526 B
C++
#pragma once
|
|
#include <blah/numerics/vec2.h>
|
|
|
|
namespace Blah
|
|
{
|
|
struct Circle
|
|
{
|
|
Vec2 center;
|
|
float radius;
|
|
|
|
constexpr Circle()
|
|
: center(), radius(0) {}
|
|
|
|
constexpr Circle(Vec2 center, float radius)
|
|
: center(center), radius(radius) {}
|
|
|
|
constexpr Circle(float x, float y, float radius)
|
|
: center(x, y), radius(radius) {}
|
|
|
|
constexpr void project(const Vec2& axis, float* min, float* max) const
|
|
{
|
|
*min = Vec2::dot(center - axis * radius, axis);
|
|
*max = Vec2::dot(center + axis * radius, axis);
|
|
}
|
|
};
|
|
} |