点到圆心的距离公式是什么(曼哈顿覆盖)

2024-11-12 09:39:30  作者: 一米阳光Sir 

现在我们已经看到,曼哈顿圆就是一个斜45°的正方形。

想起一个问题,如果要求一个椭圆上任意两点的最大曼哈顿距离怎么求?


先考虑简单的问题

椭圆上两点间距离的最大值是多少?显然,就是长轴长2a

为什么?呃,一下子还不知道怎么解释呢。


可以这样理解,首先,我们知道

一个圆上的点到圆心的距离都是半径r

一个圆上任意两点的最大距离就是直径2r


于是

只要我们能找到一个圆将椭圆覆盖,则椭圆上就一定能找到最大距离的两点。

如图

以椭圆中心为圆点,长轴为半径的圆恰好覆盖了整个椭圆,因此,圆的直径,也就是椭圆长轴就是最大距离。


当然可以将这个结论往曼哈顿距离推广。显然

一个曼哈顿圆上的点到曼哈顿圆心的距离都相等

一个曼哈顿圆上两点间曼哈顿距离的最大值就是对角线长

如图

d(A,B)=d(A,C)+d(C,D)+d(D,B)=2r


所以,我们只要能找到椭圆的曼哈顿覆盖圆,就能求出椭圆上两点的最大曼哈顿距离



拓广:对于任何一个几何区域,如果能够用曼哈顿圆覆盖,就可以求出区域内两点间曼哈顿距离的最大值;反之,如果找不到一个曼哈顿圆可以覆盖,则不存在最大曼哈顿距离。

事实上,求曼哈顿圆覆盖要比圆覆盖容易得多。因为曼哈顿圆的边实际上

就是斜率为±1的直线。