Lines Matching defs:tValues
384 SkScalar tValues[2]) {
390 return SkFindUnitQuadRoots(A, B, C, tValues);
421 valid_unit_divide in SkChopCubicAt(... tValues[], int roots). The reason is
442 const SkScalar tValues[], int roots) {
447 SkASSERT(is_unit_interval(tValues[i]));
448 SkASSERT(is_unit_interval(tValues[i+1]));
449 SkASSERT(tValues[i] < tValues[i+1]);
458 SkScalar t = tValues[0];
473 if (!valid_unit_divide(tValues[i+1] - tValues[i],
474 SK_Scalar1 - tValues[i], &t)) {
501 SkScalar tValues[2];
503 src[3].fY, tValues);
505 SkChopCubicAt(src, dst, tValues, roots);
517 SkScalar tValues[2];
519 src[3].fX, tValues);
521 SkChopCubicAt(src, dst, tValues, roots);
543 int SkFindCubicInflections(const SkPoint src[4], SkScalar tValues[]) {
554 tValues);
558 SkScalar tValues[2];
559 int count = SkFindCubicInflections(src, tValues);
565 SkChopCubicAt(src, dst, tValues, count);
717 Eliminates repeated roots (so that all tValues are distinct, and are always
720 static int solve_cubic_poly(const SkScalar coeff[4], SkScalar tValues[3]) {
722 return SkFindUnitQuadRoots(coeff[1], coeff[2], coeff[3], tValues);
742 SkScalar* roots = tValues;
764 int count = (int)(roots - tValues);
766 bubble_sort(tValues, count);
767 count = collaps_duplicates(tValues, count);
768 roots = tValues + count; // so we compute the proper count below
784 return (int)(roots - tValues);
820 int SkFindCubicMaxCurvature(const SkPoint src[4], SkScalar tValues[3]) {
840 tValues[maxCount++] = t[i];
847 SkScalar tValues[3]) {
850 if (tValues == nullptr) {
851 tValues = t_storage;
854 int count = SkFindCubicMaxCurvature(src, tValues);
860 SkChopCubicAt(src, dst, tValues, count);
939 SkScalar tValues[2];
940 int roots = SkFindUnitQuadRoots(coeff[0], coeff[1], coeff[2], tValues);
944 *t = tValues[0];