这个怎么计算?
计算?的值 图片怎么变形了? AV(P21)是怎样定义的?看不明白。 我的当前计算方法:Function Translating_offset_convex(ByVal s1 As Single, ByVal RC As Single, ByVal RF As Single, ByVal AC As Single, ByVal AV As Single, ByVal LOF As Single, Optional ByVal XOF As Single = 0) As Single
Dim R As Single, ox As Single, oy As Single, L As Single, L2 As Single, Fpi As Single, alpha As Single, ac2 As Single
Fpi = Atan(1) / 45
ox = RC * Cos(AV * Fpi) - s1
oy = RC * Sin(AV * Fpi)
L = (RF + RC) ^ 2
For alpha = 0.01 To AC Step 0.01
If Abs(L - L2) < 0.01 Then Exit For
ac2 = AC - alpha
R = LOF / Sin(alpha * Fpi)
L2 = (-R * Cos(ac2 * Fpi) - ox) ^ 2 + (R * Sin(ac2 * Fpi) - oy) ^ 2
Next
Return R * Cos(alpha * Fpi)
End Function 需要一个几何学的计算方法。我的思路是:
分别求出两个圆的圆心坐标:
大圆ox = RC * Cos(AV) - s1
oy = RC * Sin(AV)
小圆:
所求线段与半径的夹角alpha
半径R
ac2 = AC - alpha
R = OF / Sin(alpha * Fpi)
圆心(-R * Cos(ac2) ,R * Sin(ac2))
两圆外切,故圆心距=RC+RF
解出alpha.OF/TAN(ALPHA)即所求
想得到结果的几何表达式,而不是编程计算的结果 解方程求$alpha$ : $(RC *cos(AV) - s1+OF*cos(AC-alpha) /sin(alpha))^2+(RC * sin(AV)-OF* sin(AC - alpha) /sin(alpha))^2=(RF+RC)^2$ 已解决$?=-sin(AC) * (RC *cos(AV) - s1 + OF * sin(AC)) + cos(AC ) * (RC * sin(AV) + OF * cos(AC))+sqrt((-sin(AC ) * (RC * Cos(AV) - s1 + OF * sin(AC)) + cos(AC ) * (RC * sin(AV) +OF * cos(AC)))^2-4*((RC * cos(AV) - s1 + OF * sin(AC)) ^ 2 + ( -RC * sin(AV) +OF * cos(AC)) ^ 2 - (RF + RC) ^ 2)$
页:
[1]