public static async Task <DomRect> GetBoundingClientRect(IJSRuntime JS, string id) { string json = await JS.InvokeAsync <string>("GetBoundingClientRect", id); DomRect rect = JsonConvert.DeserializeObject <DomRect>(json); return(rect); }
public static async Task <Vector2> GetLocalMousePosition(IJSRuntime JS, string id, MouseEventArgs e) { DomRect rect = await GetBoundingClientRect(JS, id); Vector2 pos = new Vector2(); pos.X = (float)(e.ClientX - rect.left); pos.Y = (float)(e.ClientY - rect.top); return(pos); }