5 #ifndef FLUTTER_IMPELLER_GEOMETRY_ROUNDING_RADII_H_
6 #define FLUTTER_IMPELLER_GEOMETRY_ROUNDING_RADII_H_
25 return {radii, radii, radii, radii};
34 .top_right =
Size{right, top},
35 .bottom_left =
Size(left, bottom),
36 .bottom_right =
Size(right, bottom),
89 return !(*
this == rr);
constexpr float kEhCloseEnough
constexpr bool ScalarNearlyEqual(Scalar x, Scalar y, Scalar tolerance=kEhCloseEnough)
std::ostream & operator<<(std::ostream &out, const impeller::Arc &a)
constexpr static RoundingRadii MakeNinePatch(Scalar left, Scalar top, Scalar right, Scalar bottom)
constexpr bool operator==(const RoundingRadii &rr) const
constexpr bool AreAllCornersEmpty() const
constexpr static RoundingRadii MakeRadii(Size radii)
constexpr bool IsFinite() const
RoundingRadii Scaled(const Rect &bounds) const
Returns a scaled copy of this object, ensuring that the sum of the corner radii on each side does not...
constexpr bool operator!=(const RoundingRadii &rr) const
constexpr RoundingRadii operator*(Scalar scale)
constexpr bool AreAllCornersSame(Scalar tolerance=kEhCloseEnough) const
constexpr static RoundingRadii MakeRadius(Scalar radius)
constexpr bool IsEmpty() const
Returns true if either of the width or height are 0, negative, or NaN.