I am experiencing troubles concerning the position of mouse cursor inside my SVG document. I'd like to design a potentiometer that will follow the cursor when dragged, using JavaScript in an HTML page.
I tried evt.clientX/Y
and evt.screenX/Y
but as my SVG is in autoscale, coordinates inside my SVG are different. I have been searching for an answer for days now but I couldn't find any solution (either knowing my SVG rescaling factor in real time or have a function for mouse location in SVG coordinates system).
The rotation will follow a simple rule:
if (evt.screenX < xc)
ang = Math.atan((evt.screenY - yc) / (evt.screenX - xc)) * 360/(2*Math.PI) - 90;
if (evt.screenX > xc)
ang = Math.atan((evt.screenY - yc) / (evt.screenX - xc)) * 360/(2*Math.PI) + 90;
With (xc;yc)
as center of rotation and replacing all evt.screenX/Y
by the coordinates of the mouse inside my SVG.