- From: David Flanagan <david@davidflanagan.com>
- Date: Thu, 15 Jul 2010 10:55:38 -0700
Oliver Hunt wrote: > On Jul 14, 2010, at 10:58 PM, David Flanagan wrote: >> So here's my question: if I want to do hit-testing as described above, do I need to take the mouse coordinates from the event, subtract the offset of the canvas, and then divide by 2? As the spec is written, I think I do have to do that division manually. Is that what is intended? What if the user has zoomed in? Is it even possible to use isPointInPath() correctly in that case? > > isPointInPath works in the context of the canvas -- if you have coordinates from an event you will need to transform those from screen coordinates to the base coordinate space used by the canvas. In other words: > 1. adjust for the offset of the canvas element relative to the event coordinate space > 2. adjust for the scale factor between the canvas element and the canvas element's context > Thanks for the clarification, Oliver. Now that getBoundingClientRect() is widely implemented and is being standardized, those calculations are no longer difficult! David
Received on Thursday, 15 July 2010 10:55:38 UTC