36 , radius_(std::abs(radius))
77 radius_ = std::abs(radius);
88 auto delta = point - center_;
89 return delta.
Length() <= radius_;
101 auto delta = point - center_;
102 return std::abs(delta.Length() - radius_) < epsilon;
115 return (center_ == circle.center_
116 && radius_ == circle.radius_);
128 return !(*
this == circle);
134 double radius_ = 0.0;
Class representing a circle.
Definition: circle.hpp:19
Point2D< double > Center() const noexcept
Gets the center of the circle.
Definition: circle.hpp:45
bool IsOnRadius(Point2D< double > point, double epsilon) const noexcept
Check whether a point is on the radius of a circle.
Definition: circle.hpp:99
double Radius() const noexcept
Gets the radius of the circle.
Definition: circle.hpp:65
Circle() noexcept=default
Create default circle.
bool operator==(const Circle &circle) const noexcept
Compares to an other circle.
Definition: circle.hpp:113
void SetRadius(double radius) noexcept
Sets the radius of the circle.
Definition: circle.hpp:75
bool Contains(Point2D< double > point) const noexcept
Check whether a point is inside or outside a circle.
Definition: circle.hpp:86
void SetCenter(Point2D< double > center) noexcept
Sets the center of the circle.
Definition: circle.hpp:55
bool operator!=(const Circle &circle) const noexcept
Compares to an other circle.
Definition: circle.hpp:126
Multi-purpose 2D vector class.
Definition: point_2d.hpp:20
T Length() const noexcept
Gets the length of the vector represented by this point object.
Definition: point_2d.hpp:128
Root namespace for the Image Manager interface.
Definition: c_barcode.h:15