Scaling triangle angle without calculating side lengths first

740 Views Asked by At

This is just a random thought that came to mind upon trying to find a solution to another problem.

You are given the angle of the hypotenuse in a right angle triangle, from the origin. You then want to scale this triangle along each axis, multiplicative. Each side can be scaled by a different value.

Now this is easy enough to solve by using the first angle to calculate the side lengths of the triangle, scaling them, and calculating the second angle. However I want to avoid this intermediary step.

Is there a concise way to turn the first angle directly in to the second angle, only using a provided scaling ratio, not calculating side lengths first?

Image description of problem

1

There are 1 best solutions below

2
On BEST ANSWER

Let's suppose that the horizontal dimension is scaled by a factor of $n$ and the vertical dimension is scaled by a factor of $m$. In the original triangle, the angle is related to the legs by $\tan\theta = \frac{y}{x}$. The new angle in the scaled triangle is $\theta' = \arctan\frac{my}{nx}$. Combining these, we have $$\theta' = \arctan \left(\frac{m}{n} \tan\theta \right)$$ This gives the new angle in terms of the old angle and the scaling ratio, without needing to explicitly calculate either the old side lengths or the new side lengths as an intermediate step.