/external/skia/src/pathops/ |
D | SkPathOpsPoint.h | 14 return AlmostEqualUlps(pt1.fX, pt2.fX) && AlmostEqualUlps(pt1.fY, pt2.fY); in AlmostEqualUlps() 19 double fY; member 23 fY = pt.fY; in set() 29 fY += v.fY; 35 fY -= v.fY; 41 fY /= s; 47 fY *= s; 51 SkVector v = {SkDoubleToScalar(fX), SkDoubleToScalar(fY)}; in asSkVector() 57 return fX * a.fY - fY * a.fX; in cross() 62 double xy = fX * a.fY; in crossCheck() [all …]
|
D | SkPathOpsLine.cpp | 17 SkDPoint result = { one_t * fPts[0].fX + t * fPts[1].fX, one_t * fPts[0].fY + t * fPts[1].fY }; in ptAtT() 33 || !AlmostBetweenUlps(fPts[0].fY, xy.fY, fPts[1].fY)) { in nearPoint() 38 double denom = len.fX * len.fX + len.fY * len.fY; // see DLine intersectRay in nearPoint() 40 double numer = len.fX * ab0.fX + ab0.fY * len.fY; in nearPoint() 51 double tiniest = SkTMin(SkTMin(SkTMin(fPts[0].fX, fPts[0].fY), fPts[1].fX), fPts[1].fY); in nearPoint() 52 double largest = SkTMax(SkTMax(SkTMax(fPts[0].fX, fPts[0].fY), fPts[1].fX), fPts[1].fY); in nearPoint() 68 double denom = len.fX * len.fX + len.fY * len.fY; // see DLine intersectRay in nearRay() 70 double numer = len.fX * ab0.fX + ab0.fY * len.fY; in nearRay() 75 double tiniest = SkTMin(SkTMin(SkTMin(fPts[0].fX, fPts[0].fY), fPts[1].fX), fPts[1].fY); in nearRay() 76 double largest = SkTMax(SkTMax(SkTMax(fPts[0].fX, fPts[0].fY), fPts[1].fX), fPts[1].fY); in nearRay() [all …]
|
D | SkOpCubicHull.cpp | 10 double dy = cubic[index].fY - cubic[zero].fY; in rotate() 18 rotPath[index].fY = cubic[zero].fY; in rotate() 22 if (approximately_equal(cubic[side1].fY, cubic[zero].fY)) { in rotate() 23 rotPath[side1].fY = cubic[zero].fY; in rotate() 25 if (approximately_equal(cubic[side2].fY, cubic[zero].fY)) { in rotate() 26 rotPath[side2].fY = cubic[zero].fY; in rotate() 32 rotPath[index].fX = cubic[index].fX * dx + cubic[index].fY * dy; in rotate() 33 rotPath[index].fY = cubic[index].fY * dx - cubic[index].fX * dy; in rotate() 60 if (fPts[yMin].fY > fPts[index].fY || (fPts[yMin].fY == fPts[index].fY in convexHull() 85 int sides = side(rotPath[side1].fY - rotPath[yMin].fY); in convexHull() [all …]
|
D | SkLineParameters.h | 55 if (NotAlmostEqualUlps(pts[0].fY, pts[++endIndex].fY)) { in cubicEndPoints() 56 if (pts[0].fY > pts[endIndex].fY) { in cubicEndPoints() 65 if (pts[0].fY > pts[3].fY) { in cubicEndPoints() 72 fA = pts[s].fY - pts[e].fY; in cubicEndPoints() 74 fC = pts[s].fX * pts[e].fY - pts[e].fX * pts[s].fY; in cubicEndPoints() 86 fA = pts[0].fY - pts[1].fY; in lineEndPoints() 88 fC = pts[0].fX * pts[1].fY - pts[1].fX * pts[0].fY; in lineEndPoints() 104 if (pts[0].fY > pts[2].fY) { in quadEndPoints() 111 fA = pts[s].fY - pts[e].fY; in quadEndPoints() 113 fC = pts[s].fX * pts[e].fY - pts[e].fX * pts[s].fY; in quadEndPoints() [all …]
|
D | SkPathOpsCubic.cpp | 23 if (fPts[endIndex].fY == fPts[ctrlIndex].fY) { in align() 24 dstPt->fY = fPts[endIndex].fY; in align() 42 && approximately_equal_half(lessPt.fY, cubicAtT.fY)) { in binarySearch() 61 && approximately_equal_half(morePt.fY, cubicAtT.fY)) { in binarySearch() 111 dst.pts[1].fY = (fPts[0].fY + fPts[1].fY) / 2; in chopAt() 113 dst.pts[2].fY = (fPts[0].fY + 2 * fPts[1].fY + fPts[2].fY) / 4; in chopAt() 115 dst.pts[3].fY = (fPts[0].fY + 3 * (fPts[1].fY + fPts[2].fY) + fPts[3].fY) / 8; in chopAt() 117 dst.pts[4].fY = (fPts[1].fY + 2 * fPts[2].fY + fPts[3].fY) / 4; in chopAt() 119 dst.pts[5].fY = (fPts[2].fY + fPts[3].fY) / 2; in chopAt() 124 interp_cubic_coords(&fPts[0].fY, &dst.pts[0].fY, t); in chopAt() [all …]
|
D | SkPathOpsQuad.cpp | 27 double origY = endPt[0]->fY; in hullIntersects() 29 double opp = endPt[1]->fY - origY; in hullIntersects() 30 double sign = (fPts[oddMan].fY - origY) * adj - (fPts[oddMan].fX - origX) * opp; in hullIntersects() 37 double test = (q2[n].fY - origY) * adj - (q2[n].fX - origX) * opp; in hullIntersects() 151 double tiniest = SkTMin(SkTMin(SkTMin(SkTMin(SkTMin(fPts[0].fX, fPts[0].fY), in isLinear() 152 fPts[1].fX), fPts[1].fY), fPts[2].fX), fPts[2].fY); in isLinear() 153 double largest = SkTMax(SkTMax(SkTMax(SkTMax(SkTMax(fPts[0].fX, fPts[0].fY), in isLinear() 154 fPts[1].fX), fPts[1].fY), fPts[2].fX), fPts[2].fY); in isLinear() 164 a * fPts[0].fY + b * fPts[1].fY + c * fPts[2].fY }; in dxdyAtT() 165 if (result.fX == 0 && result.fY == 0) { in dxdyAtT() [all …]
|
D | SkPathWriter.cpp | 50 pt1.fX, pt1.fY, fDefer[1].fX, fDefer[1].fY, weight); in conicTo() 52 fPathPtr->conicTo(pt1.fX, pt1.fY, fDefer[1].fX, fDefer[1].fY, weight); in conicTo() 69 pt1.fX, pt1.fY, pt2.fX, pt2.fY, fDefer[1].fX, fDefer[1].fY); in cubicTo() 71 fPathPtr->cubicTo(pt1.fX, pt1.fY, pt2.fX, pt2.fY, fDefer[1].fX, fDefer[1].fY); in cubicTo() 122 SkDebugf("path.lineTo(%1.9g,%1.9g);\n", fDefer[1].fX, fDefer[1].fY); in lineTo() 124 fPathPtr->lineTo(fDefer[1].fX, fDefer[1].fY); in lineTo() 134 || !AlmostEqualUlps(fDefer[1].fY, fFirstPt.fY)) { in nudge() 152 pt1.fX, pt1.fY, fDefer[1].fX, fDefer[1].fY); in quadTo() 154 fPathPtr->quadTo(pt1.fX, pt1.fY, fDefer[1].fX, fDefer[1].fY); in quadTo() 167 SkScalar deferDy = fDefer[1].fY - fDefer[0].fY; in changedSlopes() [all …]
|
D | SkDLineIntersection.cpp | 49 double denom = bLen.fY * aLen.fX - aLen.fY * bLen.fX; in intersectRay() 51 double numerA = ab0.fY * bLen.fX - bLen.fY * ab0.fX; in intersectRay() 52 double numerB = ab0.fY * aLen.fX - aLen.fY * ab0.fX; in intersectRay() 66 if (!AlmostEqualUlps(aLen.fX * a[0].fY - aLen.fY * a[0].fX, in intersectRay() 67 aLen.fX * b[0].fY - aLen.fY * b[0].fX)) { in intersectRay() 98 double ayLen = a[1].fY - a[0].fY; in intersect() 100 double byLen = b[1].fY - b[0].fY; in intersect() 114 double ab0y = a[0].fY - b[0].fY; in intersect() 182 double min = line[0].fY; in horizontal_coincident() 183 double max = line[1].fY; in horizontal_coincident() [all …]
|
D | SkReduceOrder.cpp | 63 if (quad[minY].fY > quad[index].fY) { in reduce() 69 if (quad[maxY].fY < quad[index].fY) { in reduce() 77 if (AlmostEqualUlps(quad[index].fY, quad[minY].fY)) { in reduce() 132 double dy10 = cubic[1].fY - cubic[0].fY; in check_quadratic() 133 double dy23 = cubic[2].fY - cubic[3].fY; in check_quadratic() 134 double midY = cubic[0].fY + dy10 * 3 / 2; in check_quadratic() 135 double sideAy = midY - cubic[3].fY; in check_quadratic() 143 reduction[1].fY = midY; in check_quadratic() 194 if (cubic[minY].fY > cubic[index].fY) { in reduce() 200 if (cubic[maxY].fY < cubic[index].fY) { in reduce() [all …]
|
/external/skia/include/core/ |
D | SkPoint.h | 19 int16_t fX, fY; member 28 int16_t y() const { return fY; } in y() 32 fY = SkToS16(y); in set() 41 int32_t fX, fY; member 50 int32_t y() const { return fY; } in y() 52 void setY(int32_t y) { fY = y; } in setY() 57 bool isZero() const { return (fX | fY) == 0; } in isZero() 62 void setZero() { fX = fY = 0; } in setZero() 65 void set(int32_t x, int32_t y) { fX = x; fY = y; } in set() 89 void negate() { fX = -fX; fY = -fY; } in negate() [all …]
|
D | SkPoint3.h | 14 SkScalar fX, fY, fZ; member 23 SkScalar y() const { return fY; } in y() 26 void set(SkScalar x, SkScalar y, SkScalar z) { fX = x; fY = y; fZ = z; } in set() 29 return a.fX == b.fX && a.fY == b.fY && a.fZ == b.fZ; 42 SkScalar length() const { return SkPoint3::Length(fX, fY, fZ); } in length() 54 p.set(scale * fX, scale * fY, scale * fZ); in makeScale() 62 fY *= value; in scale() 72 neg.fY = -fY; 82 v.set(a.fX - b.fX, a.fY - b.fY, a.fZ - b.fZ); 90 v.set(a.fX + b.fX, a.fY + b.fY, a.fZ + b.fZ); [all …]
|
/external/skia/src/core/ |
D | SkStrokerPriv.cpp | 18 path->lineTo(stop.fX, stop.fY); in ButtCapper() 43 path->setLastPt(pivot.fX + normal.fX + parallel.fX, pivot.fY + normal.fY + parallel.fY); in SquareCapper() 44 path->lineTo(pivot.fX - normal.fX + parallel.fX, pivot.fY - normal.fY + parallel.fY); in SquareCapper() 48 path->lineTo(pivot.fX + normal.fX + parallel.fX, pivot.fY + normal.fY + parallel.fY); in SquareCapper() 49 path->lineTo(pivot.fX - normal.fX + parallel.fX, pivot.fY - normal.fY + parallel.fY); in SquareCapper() 50 path->lineTo(stop.fX, stop.fY); in SquareCapper() 58 return SkScalarMul(before.fX, after.fY) - SkScalarMul(before.fY, after.fX) > 0; in is_clockwise() 88 inner->lineTo(pivot.fX, pivot.fY); in HandleInnerJoin() 91 inner->lineTo(pivot.fX - after.fX, pivot.fY - after.fY); in HandleInnerJoin() 107 outer->lineTo(pivot.fX + after.fX, pivot.fY + after.fY); in BluntJoiner() [all …]
|
D | SkEdgeClipper.cpp | 35 if (src[0].fY > src[count - 1].fY) { in sort_increasing_Y() 68 return chopMonoQuadAt(pts[0].fY, pts[1].fY, pts[2].fY, y, t); in chopMonoQuadAtY() 81 if (pts[0].fY < clip.fTop) { in chop_quad_in_Y() 86 tmp[2].fY = clip.fTop; in chop_quad_in_Y() 87 clamp_ge(tmp[3].fY, clip.fTop); in chop_quad_in_Y() 95 if (pts[i].fY < clip.fTop) { in chop_quad_in_Y() 96 pts[i].fY = clip.fTop; in chop_quad_in_Y() 103 if (pts[2].fY > clip.fBottom) { in chop_quad_in_Y() 107 clamp_le(tmp[1].fY, clip.fBottom); in chop_quad_in_Y() 108 tmp[2].fY = clip.fBottom; in chop_quad_in_Y() [all …]
|
D | SkRRect.cpp | 144 if (fRadii[i].fX <= 0 || fRadii[i].fY <= 0) { in setRectRadii() 150 fRadii[i].fY = 0; in setRectRadii() 182 scale = compute_min_scale(fRadii[1].fY, fRadii[2].fY, height, scale); in scaleRadii() 184 scale = compute_min_scale(fRadii[3].fY, fRadii[0].fY, height, scale); in scaleRadii() 188 SkScaleToSides::AdjustRadii(height, scale, &fRadii[1].fY, &fRadii[2].fY); in scaleRadii() 190 SkScaleToSides::AdjustRadii(height, scale, &fRadii[3].fY, &fRadii[0].fY); in scaleRadii() 210 y < fRect.fTop + fRadii[kUpperLeft_Corner].fY) { in checkCornerContainment() 214 y - (fRect.fTop + fRadii[kUpperLeft_Corner].fY)); in checkCornerContainment() 215 SkASSERT(canonicalPt.fX < 0 && canonicalPt.fY < 0); in checkCornerContainment() 217 y > fRect.fBottom - fRadii[kLowerLeft_Corner].fY) { in checkCornerContainment() [all …]
|
D | SkLineClipper.cpp | 27 SkScalar dy = src[1].fY - src[0].fY; in sect_with_horizontal() 34 double Y0 = src[0].fY; in sect_with_horizontal() 36 double Y1 = src[1].fY; in sect_with_horizontal() 50 return SkScalarAve(src[0].fY, src[1].fY); in sect_with_vertical() 55 double Y0 = src[0].fY; in sect_with_vertical() 57 double Y1 = src[1].fY; in sect_with_vertical() 99 if (src[0].fY < src[1].fY) { in IntersectLine() 111 if (tmp[index0].fY < clip.fTop) { in IntersectLine() 114 if (tmp[index1].fY > clip.fBottom) { in IntersectLine() 190 if (pts[0].fY < pts[1].fY) { in ClipLine() [all …]
|
D | SkQuadClipper.cpp | 42 return chopMonoQuadAt(pts[0].fY, pts[1].fY, pts[2].fY, y, t); in chopMonoQuadAtY() 55 if (srcPts[0].fY > srcPts[2].fY) { in clipQuad() 68 if (dst[2].fY <= ctop || dst[0].fY >= cbot) { in clipQuad() 76 if (dst[0].fY < ctop) { in clipQuad() 86 if (dst[i].fY < ctop) { in clipQuad() 87 dst[i].fY = ctop; in clipQuad() 94 if (dst[2].fY > cbot) { in clipQuad() 103 if (dst[i].fY > cbot) { in clipQuad() 104 dst[i].fY = cbot; in clipQuad()
|
/external/skia/tests/ |
D | PathOpsLineIntersectionTest.cpp | 120 if (line1[0].fY == line1[1].fY) { in testOne() 124 ts.horizontal(line2, left, right, line1[0].fY, line1[0].fX != left); in testOne() 127 if (line2[0].fY == line2[1].fY) { in testOne() 131 ts.horizontal(line1, left, right, line2[0].fY, line2[0].fX != left); in testOne() 135 double top = SkTMin(line1[0].fY, line1[1].fY); in testOne() 136 double bottom = SkTMax(line1[0].fY, line1[1].fY); in testOne() 138 ts.vertical(line2, top, bottom, line1[0].fX, line1[0].fY != top); in testOne() 142 double top = SkTMin(line2[0].fY, line2[1].fY); in testOne() 143 double bottom = SkTMax(line2[0].fY, line2[1].fY); in testOne() 145 ts.vertical(line1, top, bottom, line2[0].fX, line2[0].fY != top); in testOne() [all …]
|
D | StrokerTest.cpp | 33 path.moveTo(c[0].fX, c[0].fY); in cubicTest() 34 path.cubicTo(c[1].fX, c[1].fY, c[2].fX, c[2].fY, c[3].fX, c[3].fY); in cubicTest() 40 path.moveTo(c[0].fX, c[0].fY); in quadTest() 41 path.quadTo(c[1].fX, c[1].fY, c[2].fX, c[2].fY); in quadTest() 49 SkPoint c[4] = { {(float) d[0].fX, (float) d[0].fY}, {(float) d[1].fX, (float) d[1].fY}, in cubicSetTest() 50 {(float) d[2].fX, (float) d[2].fY}, {(float) d[3].fX, (float) d[3].fY} }; in cubicSetTest() 63 SkPoint c[4] = { {(float) d[0].fX, (float) d[0].fY}, {(float) d[1].fX, (float) d[1].fY}, in cubicPairSetTest() 64 … {(float) d[2].fX, (float) d[2].fY}, {(float) d[3].fX, (float) d[3].fY} }; in cubicPairSetTest() 77 SkPoint c[3] = { {(float) d[0].fX, (float) d[0].fY}, {(float) d[1].fX, (float) d[1].fY}, in quadSetTest() 78 {(float) d[2].fX, (float) d[2].fY} }; in quadSetTest() [all …]
|
D | PathOpsCubicReduceOrderTest.cpp | 19 && between(cubic[0].fY, cubic[1].fY, cubic[3].fY) 20 && between(cubic[0].fY, cubic[2].fY, cubic[3].fY); 30 if (cubic[minY].fY > cubic[index].fY) { 36 if (cubic[maxY].fY < cubic[index].fY) { 41 && approximately_equal(cubic[maxY].fY, cubic[minY].fY); 217 || (reducer.fLine[0].fY != cubic[0].fY && reducer.fLine[0].fY != cubic[3].fY) in DEF_TEST() 219 || (reducer.fLine[1].fY != cubic[0].fY && reducer.fLine[1].fY != cubic[3].fY)) { in DEF_TEST() 230 || (!AlmostEqualUlps(reducer.fLine[0].fY, bounds.fTop) in DEF_TEST() 231 && !AlmostEqualUlps(reducer.fLine[0].fY, bounds.fBottom)) in DEF_TEST() 234 || (!AlmostEqualUlps(reducer.fLine[1].fY, bounds.fTop) in DEF_TEST() [all …]
|
D | PathOpsTestCommon.cpp | 29 double dy = c[3].fY - 3 * (c[2].fY - c[1].fY) - c[0].fY; in calc_t_div() 153 if (quad[1].fY < bounds.fTop) { in CubicToQuads() 154 quad[1].fY = bounds.fTop; in CubicToQuads() 155 } else if (quad[1].fY > bounds.fBottom) { in CubicToQuads() 156 quad[1].fY = bounds.fBottom; in CubicToQuads() 173 quadPath->moveTo(pts[0].fX, pts[0].fY); in CubicPathToQuads() 176 quadPath->lineTo(pts[1].fX, pts[1].fY); in CubicPathToQuads() 179 quadPath->quadTo(pts[1].fX, pts[1].fY, pts[2].fX, pts[2].fY); in CubicPathToQuads() 190 quadPath->quadTo(qPts[0].fX, qPts[0].fY, qPts[1].fX, qPts[1].fY); in CubicPathToQuads() 212 simplePath->moveTo(pts[0].fX, pts[0].fY); in CubicPathToSimple() [all …]
|
D | PathOpsCubicLineIntersectionTest.cpp | 103 double top = line[0].fY; in doIntersect() 104 double bottom = line[1].fY; in doIntersect() 110 } else if (line[0].fY == line[1].fY) { in doIntersect() 117 result = intersections.horizontal(cubic, left, right, line[0].fY, flipped); in doIntersect() 152 __FUNCTION__, iIndex, pt, tt1, xy1.fX, xy1.fY, tt2, xy2.fX, xy2.fY); in testOne() 160 SkDebugf("{{%1.9g,%1.9g}, {%1.9g,%1.9g}},\n", prev.fX, prev.fY, sect.fX, sect.fY); in testOne() 161 SkDebugf("{{%1.9g,%1.9g}, {%1.9g,%1.9g}},\n", sect.fX, sect.fY, cubic[3].fX, cubic[3].fY); in testOne() 163 SkDebugf("{{%1.9g,%1.9g}, {%1.9g,%1.9g}},\n", prevL.fX, prevL.fY, i.pt(0).fX, i.pt(0).fY); in testOne() 165 SkDebugf("{{%1.9g,%1.9g}, {%1.9g,%1.9g}},\n", i.pt(0).fX, i.pt(0).fY, nextL.fX, nextL.fY); in testOne()
|
/external/skia/gm/ |
D | gradients_2pt_conical.cpp | 45 center0.set(pts[0].fX + radius0, pts[0].fY + radius0); in Make2ConicalOutside() 46 center1.set(pts[1].fX - radius1, pts[1].fY - radius1); in Make2ConicalOutside() 58 center0.set(pts[0].fX + radius0, pts[0].fY + radius0); in Make2ConicalOutsideFlip() 59 center1.set(pts[1].fX - radius1, pts[1].fY - radius1); in Make2ConicalOutsideFlip() 70 SkScalarAve(pts[0].fY, pts[1].fY)); in Make2ConicalInside() 72 SkScalarInterp(pts[0].fY, pts[1].fY, SkIntToScalar(1)/4)); in Make2ConicalInside() 83 SkScalarAve(pts[0].fY, pts[1].fY)); in Make2ConicalInsideFlip() 85 SkScalarInterp(pts[0].fY, pts[1].fY, SkIntToScalar(1)/4)); in Make2ConicalInsideFlip() 96 SkScalarAve(pts[0].fY, pts[1].fY)); in Make2ConicalInsideCenter() 98 SkScalarInterp(pts[0].fY, pts[1].fY, SkIntToScalar(1)/4)); in Make2ConicalInsideCenter() [all …]
|
/external/skia/src/animator/ |
D | SkParseSVGPath.cpp | 25 dest.set(SkScalarAve(a.fX, b.fX),SkScalarAve(a.fY, b.fY)); in midPt() 41 m.set(SkScalarHalf(3*j.fX - c.fX), SkScalarHalf(3*j.fY - c.fY)); in quadApprox() 42 n.set(SkScalarHalf(3*o.fX -q.fX), SkScalarHalf(3*o.fY - q.fY)); in quadApprox() 47 m.set(SkScalarHalf(3*p.fX - c.fX), SkScalarHalf(3*p.fY - c.fY)); in quadApprox() 48 n.set(SkScalarHalf(3*l.fX -p2.fX),SkScalarHalf(3*l.fY -p2.fY)); in quadApprox() 98 value[index].fY += relative->fY; in find_points() 157 fPath.lineTo(x, c.fY); in parseSVG() 163 data = find_scalar(data, &y, relative, c.fY); in parseSVG() 165 c.fY = y; in parseSVG() 176 points[0].fY -= lastc.fY - c.fY; in parseSVG() [all …]
|
/external/pdfium/xfa/src/fwl/src/theme/ |
D | scrollbartp.cpp | 151 FX_FLOAT fY = pRect->top + pRect->height / 2; in DrawPaw() local 152 path.MoveTo(fX, fY - 4); in DrawPaw() 153 path.LineTo(fX + fPawLen, fY - 4); in DrawPaw() 154 path.MoveTo(fX, fY - 2); in DrawPaw() 155 path.LineTo(fX + fPawLen, fY - 2); in DrawPaw() 156 path.MoveTo(fX, fY); in DrawPaw() 157 path.LineTo(fX + fPawLen, fY); in DrawPaw() 158 path.MoveTo(fX, fY + 2); in DrawPaw() 159 path.LineTo(fX + fPawLen, fY + 2); in DrawPaw() 166 path.MoveTo(fX, fY - 3); in DrawPaw() [all …]
|
/external/skia/src/utils/ |
D | SkCamera.cpp | 36 SkScalar mag = SkScalarSqrt(fX*fX + fY*fY + fZ*fZ); in normalize() 40 unit->fY = fY * scale; in normalize() 43 unit->fX = unit->fY = unit->fZ = 0; in normalize() 49 return a.fX * b.fX + a.fY * b.fY + a.fZ * b.fZ; in Dot() 57 SkScalar x = a.fY * b.fZ - a.fZ * b.fY; in Cross() 58 SkScalar y = a.fZ * b.fX - a.fX * b.fY; in Cross() 59 SkScalar z = a.fX * b.fY - a.fY * b.fX; in Cross() 86 SkScalar cx = SkScalarMul(fU.fY, fV.fZ) - SkScalarMul(fU.fZ, fV.fY); in dotWith() 87 SkScalar cy = SkScalarMul(fU.fZ, fV.fX) - SkScalarMul(fU.fX, fV.fY); in dotWith() 88 SkScalar cz = SkScalarMul(fU.fX, fV.fY) - SkScalarMul(fU.fY, fV.fX); in dotWith() [all …]
|