Mausposition in automatisch skaliertem SVG

Ich habe Probleme mit der Position des Mauszeigers in meinem SVG-Dokument. Ich möchte ein Potentiometer entwerfen, das beim Ziehen mit dem Cursor folgtJavaScript in einer HTML-Seite.

Ich habe versucht, evt.clientX / Y und evt.screenX / Y, aber als meine SVG ist inautoscale, Koordinaten in meiner SVG sind unterschiedlich. Ich habe seit Tagen nach einer Antwort gesucht, aber ich konnte keine Lösung finden (entweder ich kenne meinen SVG-Skalierungsfaktor in Echtzeit oder ich habe eine Funktion für die Mausposition im SVG-Koordinatensystem).

Die Rotation folgt einer einfachen Regel:

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;

Mit (xc; yc) als Drehmittelpunkt und Ersetzen aller evt.screenX / Y durch die Koordinaten der Maus in meinem SVG.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage