math - 选择圆半径以完全填充矩形

标签 math trigonometry geometry

pixman 图像库可以在两个圆圈之间绘制径向颜色渐变。我希望径向渐变完全填充由“宽度”和“高度”定义的矩形区域。那么问题来了,外圆的半径应该怎么选择呢?

我目前的参数如下:

A) inner circle (start of gradient)
center pointer of inner circle: (width*0.5|height*0.5)
radius of inner circle: 1
color: black

B) outer circle (end of gradient)
center pointer of outer circle: (width*0.5|height*0.5)
radius of outer circle: ???
color: white

我应该如何选择外圈的半径以确保外圈完全填满由宽度*高度定义的边界矩形。角落不得有空白区域,该区域应完全被圆圈覆盖。换句话说,边界矩形的宽度、高度必须完全适合外圆。选择

outer_radius = max(width, height) * 0.5

因为外圈的半径显然是不够的。它必须更大,但大多少?

谢谢!

最佳答案

圆的直径应该是矩形的对角线,你可以很容易地从毕达哥拉斯定理计算出来。即:

outer_radius = 0.5 * sqrt(width * width + height * height)

关于math - 选择圆半径以完全填充矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2891222/

相关文章:

向量空间模型 : Cosine Similarity vs Euclidean Distance

python - math.sin 和 math.cos 中的不同精度

opencv - 在多边形中混合颜色

c++ - 阵列中的涡流场

c - 如何在 C 中使用 nan 和 inf?

javascript - 从数组中选取特定元素

javascript - 如何使用此代码找到下一级别所需的进度?

algorithm - 程序可以用来简化代数表达式吗?

c# - 围绕另一个点旋转一个点

postgresql - 如何在 POSTGIS 中找到最近的点?