Re: Method for finding intersection points

Hi, Nikita-

I strongly agree.

In writing apps with SVG and JS, I've wanted to have an easy way to get 
intersections for many different things. I'm currently using Kevin 
Lindsey's intersection library on a personal project.

I actually believe that we should work on a more comprehensive API for 
point, vector, and matrix math (including intersections), which could be 
used for both SVG and Canvas (and possibly CSS); JS libs like Sylvester 
[1] and mjs [2] are a good start, but would have better performance if 
implemented natively in browsers. I don't have the math skills to do 
this myself, but if we could find someone to help spec it out, I could 
facilitate the spec production.

[1] http://sylvester.jcoglan.com/
[2] http://webgl-mjs.googlecode.com/hg/docs/files/mjs-js.html

Regards-
-Doug

On 6/19/13 6:27 AM, Nikita Vasilyev wrote:
> I propose to implement a method for finding intersection points for
> basic shapes and paths.
>
> svgElements.getIntersectionPoints( svgElement )
> -> Array of points, e.g. [{x: 1, y: 120}, …]
>
> There are JavaScript libraries for this
> http://www.kevlindev.com/geometry/2D/intersections/
> http://raphaeljs.com/reference.html#Raphael.pathIntersection
>
> There is a getIntersectionList method which calculates intersection
> using bounding boxes of the elements
> (http://dev.w3.org/SVG/profiles/1.1F2/publish/struct.html#__svg__SVGSVGElement__getIntersectionList)
> It does NOT return intersection points.
>
> Motivation
> Finding intersection is commonly used for drawing and prototyping
> applications such as Adobe Illustrator to "snap" objects.

Received on Wednesday, 19 June 2013 13:19:47 UTC