And*_*ndy 2 math geometry trigonometry
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
Run Code Online (Sandbox Code Playgroud)
我应该如何选择外圆的半径以确保外圆将完全填充由width*height定义的边界矩形.角落内不应有空白区域,该区域应完全被圆圈覆盖.换句话说,边界矩形宽度,高度必须完全适合外圆.选择
outer_radius = max(width, height) * 0.5
Run Code Online (Sandbox Code Playgroud)
因为外圈的半径显然不够.它必须更大,但更大?
谢谢!
圆的直径应该是矩形的对角线,您可以从毕达哥拉斯定理中轻松计算出来.即:
outer_radius = 0.5 * sqrt(width * width + height * height)