- From: Tab Atkins Jr. <jackalmage@gmail.com>
- Date: Thu, 5 Jul 2012 23:28:33 -0700
- To: "Edward O'Connor" <eoconnor@apple.com>
- Cc: whatwg@lists.whatwg.org
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. ~TJ
Received on Friday, 6 July 2012 06:30:42 UTC