пока всё, что сумел сварганить это -
h = (height_t * Math.cos(radian) - width_t * Math.sin(radian))/( Math.pow(Math.cos(radian),2) - Math.pow(Math.sin(radian),2));
w = (width_t * Math.cos(radian) - height_t * Math.sin(radian))/(Math.pow(Math.cos(radian),2) - Math.pow(Math.sin(radian),2));
где width_t и height_t - это размеры описывающего квадрата
radian - радианы, преобразованные из градусов.
Только есть особенность этих формул - это "разнос" размеров если градусы выходят за пределы 0-90 (записал код который не дает выйти), но в определенный момент ширина меняется с высотой местами. Думаю теперь провести из изначального прямоугольника пропорцию, что проще, чем изначальные размеры (они трансформируются пользователем).
Либо плюнуть на все это и сделать клон, только без поворота. Правда выйдет другая проблема - вместо квадрата потом будут картинки, которые могут быть огромными.
p.s. Всё же решил сделать клон, только в виде нарисованного прямоугольника rect (fill = none) со всеми характеристиками как у картинки, только без поворота. Работает идеально. Формула (которая выше) конечно рабочая, но я теряюсь в них, так как это только малая часть из всего механизма с этими "прямоугольниками")