Вычислить высоту и ширину повернутого прямоугольника в пределах известной ограничительной рамки

Я пытаюсь вычислить новую ширину и высоту внутреннего повернутого прямоугольника. Размеры ограничивающей рамки известны также как исходные значения (ширина и высота для угла поворота 0 градусов) и, следовательно, текущий угол поворота (в данном случае 45 градусов).

Теперь пользователь должен иметь возможность изменять размер ограничивающей рамки. Поэтому мне нужно пересчитать его новую высоту и ширину, чтобы я мог правильно их сохранить.

Я пробовал несколько решений, включая эти два

Как масштабировать один прямоугольник до максимально возможного размера в другом прямоугольнике?

и

Вычислить размер повернутого прямоугольника по известным координатам ограничивающей рамки

Последний представляет мое текущее состояние, и я получаю странные небольшие, а иногда и отрицательные результаты. (радианы и градусы проверены). Я полагаю, что весь мой подход неверен, поэтому мне действительно не нужно полное решение. Но любые подсказки или различные подходы к решению приветствуются.

введите описание изображения здесь


person YeppThat'sMe    schedule 03.10.2017    source источник
comment
Вы должны уметь решить это с помощью некоторой базовой математики, см. Функции sin / cos и их использование: en.wikipedia.org/wiki/Trigonometric_functions Представьте углы ограничивающей рамки как два прямоугольных треугольника.   -  person Peter    schedule 03.10.2017
comment
Но для этого подхода мне нужно знать, где расположены как минимум 2 из 4 углов, я полагаю. По сути, я хочу создать этот прямоугольник с заданным поворотом и поместить его в середину синего прямоугольника с пунктирной линией. Поэтому мне нужно знать, какие maxHeight и maxWidth мне нужны. Imaginge вы получите только размеры и вращение ограничивающей рамки. Затем вам нужно будет вычислить прямоугольник.   -  person YeppThat'sMe    schedule 03.10.2017