7#ifndef SkBezierCurves_DEFINED
8#define SkBezierCurves_DEFINED
39 static std::array<double, 2>
EvalAt(
const double curve[8],
double t);
52 static void Subdivide(
const double curve[8],
double t,
53 double twoCurves[14]);
68 float intersectionStorage[3]);
71 double AX,
double BX,
double CX,
double DX,
72 double AY,
double BY,
double CY,
double DY,
73 float toIntersect,
float intersectionsStorage[3]);
80 float intersectionStorage[2]);
96 double AX,
double BX,
double CX,
97 double AY,
double BY,
double CY,
99 float intersectionStorage[2]);
#define AX(width, name,...)
static std::array< double, 4 > ConvertToPolynomial(const double curve[8], bool yValues)
static std::array< double, 2 > EvalAt(const double curve[8], double t)
static SkSpan< const float > IntersectWithHorizontalLine(SkSpan< const SkPoint > controlPoints, float yIntercept, float intersectionStorage[3])
static void Subdivide(const double curve[8], double t, double twoCurves[14])
static SkSpan< const float > Intersect(double AX, double BX, double CX, double DX, double AY, double BY, double CY, double DY, float toIntersect, float intersectionsStorage[3])
static SkSpan< const float > IntersectWithHorizontalLine(SkSpan< const SkPoint > controlPoints, float yIntercept, float intersectionStorage[2])
static SkSpan< const float > Intersect(double AX, double BX, double CX, double AY, double BY, double CY, double yIntercept, float intersectionStorage[2])