Home
last modified time | relevance | path

Searched refs:conic (Results 1 – 25 of 31) sorted by relevance

12

/external/skia/tests/
DPathOpsConicLineIntersectionTest.cpp16 SkDConic conic; member
31 static int doIntersect(SkIntersections& intersections, const SkDConic& conic, const SkDLine& line, in doIntersect() argument
42 result = intersections.vertical(conic, top, bottom, line[0].fX, flipped); in doIntersect()
50 result = intersections.horizontal(conic, left, right, line[0].fY, flipped); in doIntersect()
52 intersections.intersect(conic, line); in doIntersect()
59 SkDConic conic; member
71 const SkDConic& conic = oneOffs[index].conic; in testOneOffs() local
72 SkASSERT(ValidConic(conic)); in testOneOffs()
76 int result = doIntersect(intersections, conic, line, flipped); in testOneOffs()
79 SkDPoint conicXY = conic.ptAtT(conicT); in testOneOffs()
[all …]
DGeometryTest.cpp72 static void test_conic_eval_pos(skiatest::Reporter* reporter, const SkConic& conic, SkScalar t) { in test_conic_eval_pos() argument
74 conic.evalAt(t, &p0, nullptr); in test_conic_eval_pos()
75 p1 = conic.evalAt(t); in test_conic_eval_pos()
79 static void test_conic_eval_tan(skiatest::Reporter* reporter, const SkConic& conic, SkScalar t) { in test_conic_eval_tan() argument
81 conic.evalAt(t, nullptr, &v0); in test_conic_eval_tan()
82 v1 = conic.evalTangentAt(t); in test_conic_eval_tan()
95 SkConic conic(pts, w); in test_conic() local
100 test_conic_eval_pos(reporter, conic, t); in test_conic()
101 test_conic_eval_tan(reporter, conic, t); in test_conic()
116 SkConic conic(&pts[index * 3], 0.707f); in test_quad_tangents() local
[all …]
DPathOpsCubicConicIntersectionTest.cpp16 SkDConic conic; member
34 const SkDConic& conic = cubicConicTests[index].conic; in cubicConicIntersection() local
35 SkASSERT(ValidConic(conic)); in cubicConicIntersection()
39 int order2 = reduce2.reduce(conic.fPts); in cubicConicIntersection()
49 int roots = i.intersect(cubic, conic); in cubicConicIntersection()
54 SkDPoint xy2 = conic.ptAtT(tt2); in cubicConicIntersection()
DPathOpsConicIntersectionTest.cpp75 SkConic conic, chopped[2]; in writePng() local
77 conic.fPts[index].fX = c.fPts[index].fX * scale; in writePng()
78 conic.fPts[index].fY = c.fPts[index].fY * scale; in writePng()
84 conic.fW = c.fW; in writePng()
89 conic.computeTightBounds(&bounds); in writePng()
100 path.moveTo(conic.fPts[0]); in writePng()
101 path.conicTo(conic.fPts[1], conic.fPts[2], conic.fW); in writePng()
161 SkConic conic; in chopBothWays() local
163 conic.fPts[index] = dConic.fPts[index].asSkPoint(); in chopBothWays()
165 conic.fW = dConic.fWeight; in chopBothWays()
[all …]
DPathOpsDebug.cpp382 SkDConic conic; in DontCallDebugSpan() local
387 SkTSect<SkDConic, SkDQuad> k1q2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugSpan()
388 SkTSect<SkDConic, SkDConic> k1k2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugSpan()
389 SkTSect<SkDConic, SkDCubic> k1c2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugSpan()
412 SkDConic conic; in DontCallDebugT() local
417 SkTSect<SkDConic, SkDQuad> k1q2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugT()
418 SkTSect<SkDConic, SkDConic> k1k2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugT()
419 SkTSect<SkDConic, SkDCubic> k1c2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDebugT()
442 SkDConic conic; in DontCallDumpTSect() local
447 SkTSect<SkDConic, SkDQuad> k1q2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in DontCallDumpTSect()
[all …]
DPathOpsTestCommon.cpp268 bool ValidConic(const SkDConic& conic) { in ValidConic() argument
270 if (!ValidPoint(conic[index])) { in ValidConic()
274 if (SkDoubleIsNaN(conic.fWeight)) { in ValidConic()
/external/skia/src/pathops/
DSkPathOpsConic.h65 bool hullIntersects(const SkDConic& conic, bool* isLinear) const { in hullIntersects()
66 return fPts.hullIntersects(conic.fPts, isLinear); in hullIntersects()
100 SkDConic conic; in SubDivide() local
101 conic.set(a, weight); in SubDivide()
102 return conic.subDivide(t1, t2); in SubDivide()
111 SkDConic conic; in SubDivide() local
112 conic.set(pts, weight); in SubDivide()
113 return conic.subDivide(a, c, t1, t2, newWeight); in SubDivide()
DSkPathOpsCurve.h99 SkDConic conic; in dconic_xy_at_t() local
100 conic.set(a, weight); in dconic_xy_at_t()
101 return conic.ptAtT(t); in dconic_xy_at_t()
155 SkDConic conic; in dconic_dxdy_at_t() local
156 conic.set(a, weight); in dconic_dxdy_at_t()
157 return conic.dxdyAtT(t); in dconic_dxdy_at_t()
213 SkDConic conic; in conic_is_vertical() local
214 conic.set(a, weight); in conic_is_vertical()
215 SkDConic dst = conic.subDivide(startT, endT); in conic_is_vertical()
251 SkDConic conic; in conic_intersect_ray() local
[all …]
DSkIntersections.h58 SkDConic conic; in conicHorizontal() local
59 conic.set(a, weight); in conicHorizontal()
61 return horizontal(conic, left, right, y, flipped); in conicHorizontal()
66 SkDConic conic; in conicVertical() local
67 conic.set(a, weight); in conicVertical()
69 return vertical(conic, top, bottom, x, flipped); in conicVertical()
73 SkDConic conic; in conicLine() local
74 conic.set(a, weight); in conicLine()
78 return intersect(conic, line); in conicLine()
243 static int HorizontalIntercept(const SkDConic& conic, SkScalar y, double* roots);
[all …]
DSkDConicLineIntersection.cpp326 int SkIntersections::horizontal(const SkDConic& conic, double left, double right, double y, in horizontal() argument
329 LineConicIntersections c(conic, line, this); in horizontal()
333 int SkIntersections::vertical(const SkDConic& conic, double top, double bottom, double x, in vertical() argument
336 LineConicIntersections c(conic, line, this); in vertical()
340 int SkIntersections::intersect(const SkDConic& conic, const SkDLine& line) { in intersect() argument
341 LineConicIntersections c(conic, line, this); in intersect()
346 int SkIntersections::intersectRay(const SkDConic& conic, const SkDLine& line) { in intersectRay() argument
347 LineConicIntersections c(conic, line, this); in intersectRay()
350 fPt[index] = conic.ptAtT(fT[0][index]); in intersectRay()
355 int SkIntersections::HorizontalIntercept(const SkDConic& conic, SkScalar y, double* roots) { in HorizontalIntercept() argument
[all …]
DSkPathOpsTSect.cpp17 int SkIntersections::intersect(const SkDConic& conic, const SkDQuad& quad) { in intersect() argument
18 SkTSect<SkDConic, SkDQuad> sect1(conic PATH_OPS_DEBUG_T_SECT_PARAMS(1)); in intersect()
38 int SkIntersections::intersect(const SkDCubic& cubic, const SkDConic& conic) { in intersect() argument
40 SkTSect<SkDConic, SkDCubic> sect2(conic PATH_OPS_DEBUG_T_SECT_PARAMS(2)); in intersect()
DSkPathOpsQuad.cpp51 bool SkDQuad::hullIntersects(const SkDConic& conic, bool* isLinear) const { in hullIntersects() argument
52 return conic.hullIntersects(*this, isLinear); in hullIntersects()
DSkPathOpsCubic.cpp209 bool SkDCubic::hullIntersects(const SkDConic& conic, bool* isLinear) const { in hullIntersects() argument
211 return hullIntersects(conic.fPts, isLinear); in hullIntersects()
/external/skia/src/core/
DSkGeometry.h305 SkConicCoeff(const SkConic& conic) { in SkConicCoeff()
306 Sk2s p0 = from_point(conic.fPts[0]); in SkConicCoeff()
307 Sk2s p1 = from_point(conic.fPts[1]); in SkConicCoeff()
308 Sk2s p2 = from_point(conic.fPts[2]); in SkConicCoeff()
309 Sk2s ww(conic.fW); in SkConicCoeff()
383 const SkPoint* computeQuads(const SkConic& conic, SkScalar tol) { in computeQuads() argument
384 int pow2 = conic.computeQuadPOW2(tol); in computeQuads()
387 conic.chopIntoQuadsPOW2(pts, pow2); in computeQuads()
393 SkConic conic; in computeQuads() local
394 conic.set(pts, weight); in computeQuads()
[all …]
DSkPathMeasure.cpp170 SkScalar SkPathMeasure::compute_conic_segs(const SkConic& conic, SkScalar distance, in compute_conic_segs() argument
174 SkPoint halfPt = conic.evalAt(tValue2Scalar(halft)); in compute_conic_segs()
176 distance = this->compute_conic_segs(conic, distance, mint, minPt, halft, halfPt, ptIndex); in compute_conic_segs()
177 distance = this->compute_conic_segs(conic, distance, halft, halfPt, maxt, maxPt, ptIndex); in compute_conic_segs()
284 const SkConic conic(pts, fIter.conicWeight()); in buildSegments() local
286 distance = this->compute_conic_segs(conic, distance, 0, conic.fPts[0], in buildSegments()
287 kMaxTValue, conic.fPts[2], ptIndex); in buildSegments()
292 fPts.append()->set(conic.fW, 0); in buildSegments()
429 SkConic conic(pts[0], pts[2], pts[3], pts[1].fX); in seg_to() local
433 dst->conicTo(conic.fPts[1], conic.fPts[2], conic.fW); in seg_to()
[all …]
DSkStroke.cpp433 void SkPathStroker::setConicEndNormal(const SkConic& conic, const SkVector& normalAB, in setConicEndNormal() argument
435 setQuadEndNormal(conic.fPts, normalAB, unitNormalAB, normalBC, unitNormalBC); in setConicEndNormal()
573 static bool conic_in_line(const SkConic& conic) { in conic_in_line() argument
574 return quad_in_line(conic.fPts); in conic_in_line()
608 SkPathStroker::ReductionType SkPathStroker::CheckConicLinear(const SkConic& conic, in CheckConicLinear() argument
610 bool degenerateAB = degenerate_vector(conic.fPts[1] - conic.fPts[0]); in CheckConicLinear()
611 bool degenerateBC = degenerate_vector(conic.fPts[2] - conic.fPts[1]); in CheckConicLinear()
618 if (!conic_in_line(conic)) { in CheckConicLinear()
623 if (!conic.findMaxCurvature(&t) || 0 == t) { in CheckConicLinear()
628 (void) conic.findXExtrema(&xT); in CheckConicLinear()
[all …]
DSkPath.cpp2841 static int winding_mono_conic(const SkConic& conic, SkScalar x, SkScalar y, int* onCurveCount) { in winding_mono_conic() argument
2842 const SkPoint* pts = conic.fPts; in winding_mono_conic()
2864 SkScalar B = pts[1].fY * conic.fW - y * conic.fW + y; in winding_mono_conic()
2879 xt = conic_eval_numerator(&pts[0].fX, conic.fW, t) / conic_eval_denominator(conic.fW, t); in winding_mono_conic()
2904 SkConic conic(pts, weight); in winding_conic() local
2908 bool isMono = is_mono_quad(pts[0].fY, pts[1].fY, pts[2].fY) || !conic.chopAtYExtrema(chopped); in winding_conic()
2909 int w = winding_mono_conic(isMono ? conic : chopped[0], x, y, onCurveCount); in winding_conic()
3072 SkConic conic(pts, w); in tangent_conic() local
3073 tangents->push(conic.evalTangentAt(t)); in tangent_conic()
3232 const SkConic conic(p0, p1, p2, w); in ConvertConicToQuads() local
[all …]
/external/skia/tools/json/
DSkJSONRenderer.cpp594 Json::Value conic = verb[SKJSONCANVAS_VERB_CONIC]; in getPath() local
595 result->conicTo(conic[0][0].asFloat(), conic[0][1].asFloat(), in getPath()
596 conic[1][0].asFloat(), conic[1][1].asFloat(), in getPath()
597 conic[2].asFloat()); in getPath()
DSkJSONCanvas.cpp116 Json::Value conic(Json::objectValue); in makePath() local
121 conic[SKJSONCANVAS_VERB_CONIC] = coords; in makePath()
122 verbs.append(conic); in makePath()
/external/skia/gm/
Dbeziereffects.cpp396 SkConic conic; in split_conic() local
397 conic.set(src, weight); in split_conic()
398 conic.chopAt(t, dst); in split_conic()
/external/skia/bench/
DPathBench.cpp890 static void rand_conic(SkConic* conic, SkRandom& rand) {
892 conic->fPts[i].set(rand.nextUScalar1() * 100, rand.nextUScalar1() * 100);
895 conic->fW = rand.nextUScalar1();
897 conic->fW = 1 + rand.nextUScalar1() * 4;
/external/skia/src/gpu/batches/
DGrAAHairLinePathRenderer.cpp147 SkConic conic; in split_conic() local
148 conic.set(src, weight); in split_conic()
149 conic.chopAt(t, dst); in split_conic()
/external/skia/samplecode/
DSampleQuadStroker.cpp367 SkConic conic(pts, iter.conicWeight()); in draw_t_divs() local
368 pos = conic.evalAt(t); in draw_t_divs()
369 tan = conic.evalTangentAt(t); in draw_t_divs()
/external/skia/tools/debugger/
DSkDrawCommand.cpp546 Json::Value conic(Json::objectValue); in make_json_path() local
551 conic[SKDEBUGCANVAS_VERB_CONIC] = coords; in make_json_path()
552 verbs.append(conic); in make_json_path()
1511 Json::Value conic = verb[SKDEBUGCANVAS_VERB_CONIC]; in extract_json_path() local
1512 result->conicTo(conic[0][0].asFloat(), conic[0][1].asFloat(), in extract_json_path()
1513 conic[1][0].asFloat(), conic[1][1].asFloat(), in extract_json_path()
1514 conic[2].asFloat()); in extract_json_path()
/external/libgdx/extensions/gdx-freetype/jni/freetype-2.6.2/docs/
Draster.txt102 (conic) Bézier parametric arc, defined by these three points

12