Я создаю инструмент выбора, где пользователь может масштабировать и вращать HTMLElement, используя элемент управления выбором.Вращать элемент и масштабировать его, когда он не вращается, работает нормально.Теперь я немного растерялся с математикой, чтобы масштабировать элемент, который уже повернут.
Вот упрощенный код.
// rotating the element
selection.style.transform = "rotate(" + degrees + "deg)";
...
// scaling the element
var left = selection.offsetLeft;
var top = selection.offsetTop;
selection.style.width = (e.clientX - left) + "px";
selection.style.height = (e.clientY - top) + "px";
Как рассчитать новую ширину / высоту при повороте элемента и его новую позицию?
Пример полного кода будет слишком длинным, поэтому я сделал fiddle показывая текущее состояние и проблему.
Спасибо за любую помощь, ссылку на необходимый пример математики или кода.