Jak skalować jeden prostokąt do maksymalnego możliwego rozmiaru w innym prostokącie?

Mam prostokąt źródłowy i prostokąt docelowy. Muszę znaleźć maksymalną skalę, do której można skalować źródło podczas dopasowywania w prostokącie docelowym izachowując swój oryginalny współczynnik proporcji.

Google znalezionojeden sposób to zrobić, ale nie jestem pewien, czy to działa we wszystkich przypadkach. Oto moje domowe rozwiązanie:

Oblicz wysokość / szerokość dla każdego prostokąta. Daje to zbocza przekątnychmsrc imdest.Jeślimsrc < mdst, źródło skaliszerokość aby dopasować cel podróżyszerokość (i wysokość skali w tym samym stosunku)W przeciwnym razie źródło skaliwysokość aby dopasować cel podróżywysokość (i szerokość skali w tym samym stosunku)

Szukasz innych możliwych rozwiązań tego problemu. Nie jestem nawet pewien, czy mój algorytm działa we wszystkich przypadkach!

questionAnswers(5)

yourAnswerToTheQuestion