I am wondering how to set an area as a semi-complex shape (circle) defined in the canvas so when the user mouse overs the shape, a function will be called.
I do not wish to use libraries at all such as KineticJS etc.
Currently I have added an event listener to the canvas element so that on mouse move I call multiple functions; one of which works out the mouse x/y coordinates relative to the canvas. As such, any rectangular shape is easy to 'listen' for using a basic if statement (as the canvas is interactive and redrawn each mouse move).
For circular objects, as well as say triangular objects, is there a way to use a similar method using trigonometry and an if statement?
Or are there better ways to have multiple areas on a canvas which on mouse over, call a function?
Cheers
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…