/external/skia/tests/ |
H A D | PathOpsDCubicTest.cpp | 20 SkDCubic cubic; local 21 cubic.debugSet(c.fPts); 23 cubic.convexHull(order);
|
H A D | PathOpsCubicReduceOrderTest.cpp | 16 static bool controls_inside(const SkDCubic& cubic) { 17 return between(cubic[0].fX, cubic[1].fX, cubic[3].fX) 18 && between(cubic[0].fX, cubic[2].fX, cubic[3].fX) 19 && between(cubic[0].fY, cubic[1].fY, cubic[ 109 SkDCubic cubic; local 120 SkDCubic cubic; local 132 SkDCubic cubic; local 143 SkDCubic cubic; local 154 SkDCubic cubic; local 165 SkDCubic cubic; local 177 SkDCubic cubic; local 191 SkDCubic cubic = quad.debugToCubic(); local 203 SkDCubic cubic = quad.debugToCubic(); local 215 SkDCubic cubic = quad.debugToCubic(); local [all...] |
H A D | PathOpsLineParametetersTest.cpp | 44 SkDCubic cubic; local 45 cubic.debugSet(c.fPts); 46 SkASSERT(ValidCubic(cubic)); 47 lineParameters.cubicEndPoints(cubic, 0, 3); 49 denormalizedDistance[0] = lineParameters.controlPtDistance(cubic, 1); 50 denormalizedDistance[1] = lineParameters.controlPtDistance(cubic, 2); 69 normalizedDistance[0] = lineParameters.controlPtDistance(cubic, 1); 70 normalizedDistance[1] = lineParameters.controlPtDistance(cubic, 2);
|
H A D | PathOpsDRectTest.cpp | 37 static void setRawBounds(const SkDCubic& cubic, SkDRect* rect) { argument 38 rect->set(cubic[0]); 39 rect->add(cubic[1]); 40 rect->add(cubic[2]); 41 rect->add(cubic[3]); 63 SkDCubic cubic; local 64 cubic.debugSet(c.fPts); 65 SkASSERT(ValidCubic(cubic)); 66 setRawBounds(cubic, &rect); 67 rect2.setBounds(cubic); [all...] |
H A D | PathOpsCubicLineIntersectionTest.cpp | 15 CubicPts cubic; member in struct:lineCubic 28 const CubicPts& cuPts = failLineCubicTests[iIndex].cubic; 29 SkDCubic cubic; local 30 cubic.debugSet(cuPts.fPts); 31 SkASSERT(ValidCubic(cubic)); 36 int order1 = reduce1.reduce(cubic, SkReduceOrder::kNo_Quadratics); 39 SkDebugf("[%d] cubic order=%d\n", iIndex, order1); 48 int roots = i.intersect(cubic, line); 101 static int doIntersect(SkIntersections& intersections, const SkDCubic& cubic, const SkDLine& line) { argument 111 result = intersections.vertical(cubic, to 129 SkDCubic cubic; local 196 SkDCubic cubic; local [all...] |
H A D | PathOpsTestCommon.cpp | 16 static double calc_t_div(const SkDCubic& cubic, double precision, double start) { argument 21 cPtr = &cubic; 24 sub = cubic.subDivide(start, 1); 39 static bool add_simple_ts(const SkDCubic& cubic, double precision, SkTArray<double, true>* ts) { argument 40 double tDiv = calc_t_div(cubic, precision, 0); 51 static void addTs(const SkDCubic& cubic, double precision, double start, double end, argument 53 double tDiv = calc_t_div(cubic, precision, 0); 63 static void toQuadraticTs(const SkDCubic* cubic, double precision, SkTArray<double, true>* ts) { argument 65 int order = reducer.reduce(*cubic, SkReduceOrder::kAllow_Quadratics); 70 int inflections = cubic 133 CubicToQuads(const SkDCubic& cubic, double precision, SkTArray<SkDQuad, true>& quads) argument 165 SkDCubic cubic; local 205 SkDCubic cubic; local 280 ValidCubic(const SkDCubic& cubic) argument [all...] |
H A D | PathOpsCubicConicIntersectionTest.cpp | 15 CubicPts cubic; member in struct:cubicConic 32 const CubicPts& cu = cubicConicTests[index].cubic; 33 SkDCubic cubic; local 34 cubic.debugSet(cu.fPts); 35 SkASSERT(ValidCubic(cubic)); 42 int order1 = reduce1.reduce(cubic, SkReduceOrder::kNo_Quadratics); 45 SkDebugf("[%d] cubic order=%d\n", index, order1); 53 int roots = i.intersect(cubic, conic); 56 SkDPoint xy1 = cubic.ptAtT(tt1);
|
H A D | PathOpsCubicQuadIntersectionTest.cpp | 16 CubicPts cubic; member in struct:quadCubic 56 const CubicPts& c = quadCubicTests[index].cubic; 57 SkDCubic cubic; local 58 cubic.debugSet(c.fPts); 59 SkASSERT(ValidCubic(cubic)); 66 int order1 = reduce1.reduce(cubic, SkReduceOrder::kNo_Quadratics); 69 SkDebugf("[%d] cubic order=%d\n", iIndex, order1); 77 int roots = i.intersect(cubic, quad); 80 SkDPoint xy1 = cubic.ptAtT(tt1);
|
H A D | PathOpsTestCommon.h | 32 void CubicToQuads(const SkDCubic& cubic, double precision, SkTArray<SkDQuad, true>& quads); 34 bool ValidConic(const SkDConic& cubic); 35 bool ValidCubic(const SkDCubic& cubic);
|
H A D | PathOpsCubicLineIntersectionIdeas.cpp | 54 static double binary_search(const SkDCubic& cubic, double step, const SkDPoint& pt, double t, argument 59 SkDPoint cubicAtT = cubic.ptAtT(t); 67 SkDebugf("binary search failed: step=%1.9g cubic=", firstStep); 68 cubic.dump(); 76 SkDPoint lessPt = cubic.ptAtT(t - lastStep); 85 SkDPoint morePt = cubic.ptAtT(t + lastStep); 155 SkDCubic cubic; local 156 cubic.debugSet(cuPts.fPts); 157 SkDPoint pt = cubic.ptAtT(t); 159 // see if the line / cubic ha [all...] |
H A D | StrokerTest.cpp | 203 SkDebugf("\n%s tan=%d cubic=%d width=%1.9g\n", __FUNCTION__, gMaxRecursion[0], 219 SkDebugf("\n%s max tan=%d cubic=%d\n", __FUNCTION__, bestTan, bestCubic); 287 SkPoint cubic[4]; local 288 cubic[0].fX = r.nextRangeF(0, 500); 289 cubic[0].fY = r.nextRangeF(0, 500); 292 cubic[1].fX = r.nextRangeF(0, 500); 293 cubic[1].fY = r.nextRangeF(0, 500); 294 } while (cubic[0].distanceToSqd(cubic[1]) < halfSquared); 296 cubic[ [all...] |
H A D | PathOpsDebug.cpp | 416 SkDCubic cubic; local 423 SkTSect<SkDCubic, SkDQuad> c1q2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 424 SkTSect<SkDCubic, SkDConic> c1k2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 425 SkTSect<SkDCubic, SkDCubic> c1c2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 446 SkDCubic cubic; local 453 SkTSect<SkDCubic, SkDQuad> c1q2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 454 SkTSect<SkDCubic, SkDConic> c1k2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 455 SkTSect<SkDCubic, SkDCubic> c1c2(cubic SkDEBUGPARAMS(nullptr) PATH_OPS_DEBUG_T_SECT_PARAMS(1)); 476 SkDCubic cubic; local 483 SkTSect<SkDCubic, SkDQuad> c1q2(cubic SkDEBUGPARAM 506 SkDCubic cubic; local 536 SkDCubic cubic; local 566 SkDCubic cubic; local 596 SkDCubic cubic; local 626 SkDCubic cubic; local 656 SkDCubic cubic; local [all...] |
/external/skia/src/pathops/ |
H A D | SkReduceOrder.cpp | 52 // note that three points in a line doesn't simplify a cubic 103 static int coincident_line(const SkDCubic& cubic, SkDCubic& reduction) { argument 104 reduction[0] = reduction[1] = cubic[0]; 112 static int vertical_line(const SkDCubic& cubic, SkDCubic& reduction) { argument 113 reduction[0] = cubic[0]; 114 reduction[1] = cubic[3]; 118 static int horizontal_line(const SkDCubic& cubic, SkDCubic& reduction) { argument 119 reduction[0] = cubic[0]; 120 reduction[1] = cubic[3]; 125 static int check_quadratic(const SkDCubic& cubic, SkDCubi argument 151 check_linear(const SkDCubic& cubic, int minX, int maxX, int minY, int maxY, SkDCubic& reduction) argument 188 reduce(const SkDCubic& cubic, Quadratics allowQuadratics) argument 273 SkDCubic cubic; local [all...] |
H A D | SkOpCubicHull.cpp | 9 static bool rotate(const SkDCubic& cubic, int zero, int index, SkDCubic& rotPath) { argument 10 double dy = cubic[index].fY - cubic[zero].fY; 11 double dx = cubic[index].fX - cubic[zero].fX; 16 rotPath = cubic; 18 rotPath[index].fY = cubic[zero].fY; 22 if (approximately_equal(cubic[side1].fY, cubic[zero].fY)) { 23 rotPath[side1].fY = cubic[zer [all...] |
H A D | SkPathOpsCubic.h | 49 static void Coefficients(const double* cubic, double* A, double* B, double* C, double* D); 68 SkDCubic cubic; local 69 return cubic.set(a).findInflections(tValues); 95 * Return the number of valid roots (0 < root < 1) for this cubic intersecting the 100 * Return the number of valid roots (0 < root < 1) for this cubic intersecting the 119 SkDCubic cubic; local 120 return cubic.set(a).subDivide(t1, t2); 127 SkDCubic cubic; local 128 cubic.set(pts).subDivide(a, d, t1, t2, p);
|
H A D | SkPathOpsTSect.cpp | 37 int SkIntersections::intersect(const SkDCubic& cubic, const SkDQuad& quad) { argument 38 SkTSect<SkDCubic, SkDQuad> sect1(cubic 46 int SkIntersections::intersect(const SkDCubic& cubic, const SkDConic& conic) { argument 47 SkTSect<SkDCubic, SkDConic> sect1(cubic
|
H A D | SkReduceOrder.h | 22 int reduce(const SkDCubic& cubic, Quadratics);
|
H A D | SkPathOpsCurve.h | 38 void set(const SkDCubic& cubic) { argument 40 fPts[index] = cubic[index].asSkPoint(); 95 bool fOrdered; // cleared when a cubic's control point isn't between the sweep vectors 121 SkDCubic cubic; local 122 cubic.set(a); 123 return cubic.ptAtT(t); 201 SkDCubic cubic; local 202 cubic.set(a); 203 return cubic.dxdyAtT(t); 284 SkDCubic cubic; local 322 SkDCubic cubic; local 393 SkDCubic cubic; local 398 SkDCubic cubic; local [all...] |
H A D | SkDCubicLineIntersection.cpp | 13 Find the interection of a line and cubic by solving for valid t values. 15 Analogous to line-quadratic intersection, solve line-cubic intersection by 16 representing the cubic as: 24 Then using Mathematica, solve for the values of t where the cubic intersects the 54 instead, use Numeric Solutions recipe to solve the cubic. 215 // check if midway on cubic is also same point. If so, discard this 282 /* Note that this does not look for endpoints of the line that are near the cubic. 418 int SkIntersections::horizontal(const SkDCubic& cubic, double left, double right, double y, argument 421 LineCubicIntersections c(cubic, line, this); 425 int SkIntersections::vertical(const SkDCubic& cubic, doubl argument 432 intersect(const SkDCubic& cubic, const SkDLine& line) argument 438 intersectRay(const SkDCubic& cubic, const SkDLine& line) argument [all...] |
H A D | SkIntersections.h | 84 SkDCubic cubic; local 85 cubic.set(a); 87 return horizontal(cubic, left, right, y, flipped); 91 SkDCubic cubic; local 92 cubic.set(a); 94 return vertical(cubic, top, bottom, x, flipped); 98 SkDCubic cubic; local 99 cubic.set(a); 103 return intersect(cubic, line);
|
/external/skia/src/utils/win/ |
H A D | SkDWriteGeometrySink.cpp | 91 static bool check_quadratic(const Cubic& cubic, Quadratic& reduction) { argument 92 float dx10 = cubic[1].x - cubic[0].x; 93 float dx23 = cubic[2].x - cubic[3].x; 94 float midX = cubic[0].x + dx10 * 3 / 2; 95 //NOTE: !approximately_equal(midX - cubic[3].x, dx23 * 3 / 2) 97 if (!approximately_equal(midX, (dx23 * 3 / 2) + cubic[3].x)) { 100 float dy10 = cubic[1].y - cubic[ 119 Cubic cubic = { { prevPt.x, prevPt.y }, local [all...] |
/external/skia/src/core/ |
H A D | SkStroke.cpp | 185 kDegenerate2_ReductionType, // two control points are on the line but outside ends (cubic) 186 kDegenerate3_ReductionType, // three areas of max curvature found (for cubic) 195 bool fFoundTangents; // do less work until tangents meet (cubic) 200 static ReductionType CheckCubicLinear(const SkPoint cubic[4], SkPoint reduction[3], 204 ResultType compareQuadCubic(const SkPoint cubic[4], SkQuadConstruct* ); 210 bool cubicMidOnLine(const SkPoint cubic[4], const SkQuadConstruct* ) const; 211 void cubicPerpRay(const SkPoint cubic[4], SkScalar t, SkPoint* tPt, SkPoint* onPt, 213 void cubicQuadEnds(const SkPoint cubic[4], SkQuadConstruct* ); 214 void cubicQuadMid(const SkPoint cubic[4], const SkQuadConstruct* , SkPoint* mid) const; 215 bool cubicStroke(const SkPoint cubic[ 450 setCubicEndNormal(const SkPoint cubic[4], const SkVector& normalAB, const SkVector& unitNormalAB, SkVector* normalCD, SkVector* unitNormalCD) argument 525 cubic_in_line(const SkPoint cubic[4]) argument [all...] |
/external/vulkan-validation-layers/libs/glm/gtx/ |
H A D | spline.hpp | 74 //! Return a point from a cubic curve. 77 GLM_FUNC_DECL genType cubic(
|
/external/ImageMagick/Magick++/demo/ |
H A D | demos.tap | 25 for filter in bessel blackman box catrom cubic gaussian hamming hanning hermite lanczos mitchell point quadratic sample scale sinc triangle
|
/external/skia/src/pdf/ |
H A D | SkPDFUtils.cpp | 97 SkPoint cubic[4]; local 98 SkConvertQuadToCubic(quad, cubic); 99 SkPDFUtils::AppendCubic(cubic[1].fX, cubic[1].fY, cubic[2].fX, cubic[2].fY, 100 cubic[3].fX, cubic[3].fY, content);
|