Lines Matching full:path
1 describe('Path Behavior', () => {
24 const path = new CanvasKit.Path();
25 path.moveTo(20, 5);
26 path.lineTo(30, 20);
27 path.lineTo(40, 10);
28 path.lineTo(50, 20);
29 path.lineTo(60, 0);
30 path.lineTo(20, 5);
32 path.moveTo(20, 80);
33 path.cubicTo(90, 10, 160, 150, 190, 10);
35 path.moveTo(36, 148);
36 path.quadTo(66, 188, 120, 136);
37 path.lineTo(36, 148);
39 path.moveTo(150, 180);
40 path.arcToTangent(150, 100, 50, 200, 20);
41 path.lineTo(160, 160);
43 path.moveTo(20, 120);
44 path.lineTo(20, 120);
46 path.transform([2, 0, 0,
50 canvas.drawPath(path, paint);
54 const rrectPath = new CanvasKit.Path().addRRect(rrect, true);
59 path.delete();
64 it('can create a path from an SVG string', () => {
67 const path = CanvasKit.Path.MakeFromSVGString(
70 const cmds = path.toCmds();
81 path.delete();
84 it('can create a path by combining two other paths', () => {
86 const pathOne = new CanvasKit.Path();
89 const pathTwo = new CanvasKit.Path();
92 const path = CanvasKit.Path.MakeFromOp(pathOne, pathTwo, CanvasKit.PathOp.Intersect);
93 const cmds = path.toCmds();
101 path.delete();
106 it('can create an SVG string from a path', () => {
113 const path = CanvasKit.Path.MakeFromCmds(cmds);
115 const svgStr = path.toSVGString();
118 path.delete();
121 it('can create a path with malloced verbs, points, weights', () => {
139 let path = CanvasKit.Path.MakeFromVerbsPointsWeights(mVerbs, mPoints, mWeights);
141 let cmds = path.toCmds();
150 path.delete();
153 path = CanvasKit.Path.MakeFromVerbsPointsWeights(mVerbs, mPoints.subarray(0, 10), mWeights);
155 cmds = path.toCmds();
161 path.delete();
167 it('can create and update a path with verbs and points (no weights)', () => {
168 const path = CanvasKit.Path.MakeFromVerbsPointsWeights(
171 let cmds = path.toCmds();
177 path.addVerbsPointsWeights(
182 cmds = path.toCmds();
189 path.delete();
193 it('can add points to a path in bulk', () => {
211 const path = new CanvasKit.Path();
212 path.lineTo(77, 88);
213 path.addVerbsPointsWeights(mVerbs, mPoints, mWeights);
215 let cmds = path.toCmds();
227 path.rewind();
228 cmds = path.toCmds();
231 path.delete();
237 it('can retrieve points from a path', () => {
238 const path = new CanvasKit.Path();
239 path.addRect([10, 15, 20, 25]);
241 let pt = path.getPoint(0);
245 path.getPoint(2, pt);
249 path.getPoint(1000, pt); // off the end returns (0, 0) as per the docs.
253 path.delete();
257 const path = starPath(CanvasKit);
267 canvas.drawPath(path, paint);
268 path.offset(80, 40);
269 canvas.drawPath(path, paint);
271 path.delete();
285 const path = new CanvasKit.Path();
286 path.moveTo(5, 5);
287 path.lineTo(10, 120);
288 path.addOval(CanvasKit.LTRBRect(10, 20, 100, 200), false, 3);
289 path.lineTo(300, 300);
291 canvas.drawPath(path, paint);
293 path.delete();
307 const path = new CanvasKit.Path();
309 path.moveTo(97, 225);
310 path.cubicTo(20, 400, 404, 75, 243, 271);
312 canvas.drawPath(path, paint);
315 path.getBounds(bounds);
321 path.computeTightBounds(bounds);
326 path.delete();
340 const path = new CanvasKit.Path();
343 path.arcToTangent(40, 0, 40, 40, 40);
345 path.arcToOval(CanvasKit.LTRBRect(90, 10, 120, 200), 30, 300, true);
347 path.moveTo(5, 105);
348 path.arcToRotated(24, 24, 45, true, false, 82, 156);
350 canvas.drawPath(path, paint);
352 path.delete();
363 const path = new CanvasKit.Path();
364 path.rMoveTo(20, 5)
367 path.rLineTo(10, 10); // 50, 20
368 path.rLineTo(10, -20); // 60, 0
369 path.rLineTo(-40, 5); // 20, 5
371 path.moveTo(20, 80)
374 path.moveTo(36, 148)
378 path.moveTo(150, 180)
380 path.lineTo(160, 160);
382 canvas.drawPath(path, paint);
384 path.delete();
388 it('can measure the contours of a path', () => {
389 const path = new CanvasKit.Path();
390 path.moveTo(10, 10)
393 path.moveTo(80, 0)
398 const meas = new CanvasKit.ContourMeasureIter(path, false, 1);
427 path.delete();
443 const path = new CanvasKit.Path();
444 path.addPoly(points, true)
448 canvas.drawPath(path, paint);
451 path.delete();
455 // Test trim, adding paths to paths, and a bunch of other path methods.
465 const arcpath = new CanvasKit.Path();
472 const path = new CanvasKit.Path();
473 path.addArc(CanvasKit.LTRBRect(10, 20, 100, 200), 30, 300)
486 canvas.drawPath(path, paint);
488 path.delete();
494 const path = new CanvasKit.Path();
496 path.addRect(CanvasKit.LTRBRect(10, 10, 30, 30), false);
497 path.addRect(CanvasKit.LTRBRect(20, 20, 40, 40), false);
499 path.addRect(CanvasKit.LTRBRect(10, 60, 30, 80), false);
500 path.addRect(CanvasKit.LTRBRect(20, 70, 40, 90), true);
502 expect(path.getFillType()).toEqual(CanvasKit.FillType.Winding);
507 canvas.drawPath(path, paint);
516 path.setFillType(fillType);
517 canvas.drawPath(path, paint);
521 path.delete();
526 const evenOddPath = new CanvasKit.Path();
567 canvas.drawText('Original path (even odd)', 5, 20, paint, font);
575 canvas.drawText('makeAsWinding path', 5, 20, paint, font);