[whatwg] بخصوص: isPointInPath v. set of pixels in canvas hit regions
رنا عبدالله
wedyan6221 at yahoo.com
Sat Jul 7 09:03:06 PDT 2012
pls.dont send any msg to my adress
________________________________
من: Maciej Stachowiak <mjs at apple.com>
إلى: Tab Atkins Jr. <jackalmage at gmail.com>
نسخة كربونية: whatwg at lists.whatwg.org; Edward O'Connor <eoconnor at apple.com>
تاريخ الإرسال: الجمعة 6 يوليو، 2012 10:26 م
الموضوع: Re: [whatwg] isPointInPath v. set of pixels in canvas hit regions
On Jul 5, 2012, at 11:28 PM, Tab Atkins Jr. <jackalmage at gmail.com> wrote:
> On Thu, Jul 5, 2012 at 1:05 PM, Edward O'Connor <eoconnor at 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.
It also doubles the memory cost of the canvas if you use hit regions, which is likely much more than path-based hit testing would cost.
- Maciej
More information about the whatwg
mailing list