1
0
Fork 0
freesewing/packages/examples/src/path_intersects.js

37 lines
1 KiB
JavaScript
Raw Normal View History

2019-01-27 12:54:18 +01:00
export default part => {
2019-01-28 15:39:33 +01:00
let { Point, points, Path, paths, Snippet, snippets } = part.shorthand();
2019-01-27 12:54:18 +01:00
points.A = new Point(45, 60);
points.B = new Point(10, 30);
points.BCp2 = new Point(40, 20);
points.C = new Point(90, 30);
points.CCp1 = new Point(50, -30);
points.D = new Point(50, 130);
points.DCp1 = new Point(150, 30);
points._A = new Point(55, 40);
points._B = new Point(0, 55);
points._BCp2 = new Point(40, -20);
points._C = new Point(90, 40);
points._CCp1 = new Point(50, -30);
points._D = new Point(40, 120);
points._DCp1 = new Point(180, 40);
2019-01-28 15:39:33 +01:00
paths.demo1 = new Path()
2019-01-27 12:54:18 +01:00
.move(points.A)
.line(points.B)
.curve(points.BCp2, points.CCp1, points.C)
.curve(points.DCp1, points.DCp1, points.D);
2019-01-28 15:39:33 +01:00
paths.demo2 = new Path()
2019-01-27 12:54:18 +01:00
.move(points._A)
.line(points._B)
.curve(points._BCp2, points._CCp1, points._C)
.curve(points._DCp1, points._DCp1, points._D);
2019-01-30 14:21:59 +01:00
for (let p of paths.demo1.intersects(paths.demo2)) {
2019-01-27 12:54:18 +01:00
snippets[part.getId()] = new Snippet("x", p);
2019-01-30 14:21:59 +01:00
}
2019-01-27 12:54:18 +01:00
return part;
};