puzzle(14)圆滚动问题

目录

问题一

问题二

问题三

问题四

问题五

小结


问题一

圆A和圆B半径相同,A绕着B无滑动转一圈,问A一共转了几圈?

答案是2圈,证明方法很多,可以用正多边形来逼近圆。

问题二

圆A和圆B半径分别为r1和r2,A绕着B无滑动转一圈,问A一共转了几圈?

答案是 (r1+r2)/r1

显然问题一就是问题二的一个特例。

问题三

一个圆A的半径为r,A绕着一个凸简单曲线B的外面转动一圈,问A一共转了多少圈?

有两种思路,思路一是B的周长 / r + 1,思路二是A圆心的轨迹长度 / r

显然,这两种思路是不等价的,但是对于问题二来说结果是一样的。

我在思考到底是思路一是对的还是思路二是对的的时候,有两种思路,第一种是看对于不同的场景,哪个更具有普适性,第二种是直接根据微积分来推算。

我们先看看不同的场景,先对公式做更好的理解。

问题四

圆A和圆弧B半径分别为r1和r2,圆弧角度为d,A从B的一端转到B的另外一端,问A一共转了几圈?

根据问题二的结论很容易推出来,是 (r1+r2)/r1 * d / (2π)

当d=2π时B是圆,上式=(r1+r2)/r1

有了圆弧的结论,凸简单曲线就可以按照很多小圆弧拼起来来理解了。

问题五

圆A和圆弧B半径分别为r1和r2,圆弧角度为d,A在B的内侧从B的一端转到B的另外一端,问A一共转了几圈?

答案是 (r2-r1)/r1 * d / (2π)

小结

分析了各种场景之后,还是很难分析出问题三的思路一和思路二哪个对。

不过参考了一些网友说的相对运动的思路之后,应该是思路一吧。

推广到一般曲线:

圆A半径为r,简单曲线B长为c,A从B的一端转到B的另外一端,问A一共转了几圈?

把B按照凹凸分段,各段分别求弧度,A转动的总圈数是 c/r + (凸弧弧度之和-凹弧弧度之和) / (2π)

猜你喜欢

转载自blog.csdn.net/nameofcsdn/article/details/123602419