调整百分比的矩形,同时保持其纵横比

Che*_*eva 3 math geometry computational-geometry

我想将矩形区域的大小调整为50%Rect1 w1 x h1,我不想将宽度或高度直接调整为一半,因为这给了我25%的面积,我需要的是找到一个等效的矩形,纵横比,面积等于原件的%50.因此我需要找到矩形Rect2的h2 x w2.

我有Rect1:w1,h1,a1我还有Rect2:a2

我需要w2和h2(保持Rect1的宽高比)

图片

小智 5

假设您的矩形由w1和w2定义,就像您的图片一样,它遵循:

area = w1 * h1
Run Code Online (Sandbox Code Playgroud)

你想要一个面积减半但纵横比相同的矩形,所以必须有一个除数(d),它将w1和w2平均减少,从而导致新的区域被切成两半:

area * 1/2 = (d * w1) * (d * h1)
Run Code Online (Sandbox Code Playgroud)

一些简单的数学:

d * w1 * d * w1 = w1 * h1 * 1/2
=> d * d = 1/2
=> d = sqrt(1/2)
Run Code Online (Sandbox Code Playgroud)

所以减少矩形和保持比例的因素是sqrt(1/2)

例:

w1 = 4, h1 = 3

4 * 3 = 12

=> d * 4 * d *3 = sqrt(1/2) * 4 * sqrt(1/2) * 3 = 6
Run Code Online (Sandbox Code Playgroud)