Skip to content

bpmn-io/path-intersection

Repository files navigation

path-intersection

CI

Computes the intersection between two SVG paths.

Examples

Intersection examples

Execute npm run dev and navigate to http://localhost:9876/debug.html to see more examples.

Usage

import intersect from 'path-intersection';

const path0 = 'M30,100L270,20';
const path1 = 'M150,150m0,-18a18,18,0,1,1,0,36a18,18,0,1,1,0,-36z';

const intersection = intersect(path0, path1);
// [ { x: ..., y: ..., segment1: ..., segment2: ... }, ... ]

Results are approximate, as we use bezier clipping to find intersections.

Building the Project

# install dependencies
npm install

# build and test the library
npm run all

Credits

The intersection logic provided by this library is derived from path.js, a part of Snap.svg.

License

Use under the terms of the MIT license.