W3C home > Mailing lists > Public > whatwg@whatwg.org > July 2012

Re: [whatwg] isPointInPath v. set of pixels in canvas hit regions

From: Charles Pritchard <chuck@jumis.com>
Date: Fri, 6 Jul 2012 17:11:26 -0700
Message-Id: <66178F2E-3352-4506-B227-CBFFBFA42A84@jumis.com>
To: "Tab Atkins Jr." <jackalmage@gmail.com>
Cc: "whatwg@lists.whatwg.org" <whatwg@lists.whatwg.org>, Edward O'Connor <eoconnor@apple.com>
On Jul 5, 2012, at 11:28 PM, "Tab Atkins Jr." <jackalmage@gmail.com> wrote:

> On Thu, Jul 5, 2012 at 1:05 PM, Edward O'Connor <eoconnor@apple.com> wrote:
>> As things currently stand in the spec, implementations basically need to
>> keep N+1 bitmaps per canvas, where N is the number of hit regions. I
>> doubt any implementors would be enthusiastic to implement hit regions
>> like this. From a WebKit perspective, we'd much prefer keeping a Path
>> for each hit region, and then simply using isPointInPath for hit
>> testing. This also implies that the current piggybacking of "Clear
>> regions that cover the pixels" in clearRect() could go away. Yay! :)
> 
> Bog-standard hit-testing algorithms apply.  Keep a single extra canvas
> around, draw each region into it with a different color.  When you're
> hit-testing, just see what color that pixel is, and look up which
> region is associated with it.  This is extremely fast and simple to
> implement, and has all the right properties - the "topmost" region for
> a given pixel is the one returned.

Color lookup hit testing is something we already have.

I'm afraid you and Ian missed the mark on this one. Not too worried though; it'll get cleared up by implementers.

-Charles
Received on Saturday, 7 July 2012 00:12:02 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 30 January 2013 18:48:09 GMT