如何找到两个平行矩形之间的最小出租车/曼哈顿距离?
Posted
技术标签:
【中文标题】如何找到两个平行矩形之间的最小出租车/曼哈顿距离?【英文标题】:How to Find the Minimum Taxicab/Manhattan Distance Between Two Parallel Rectangles? 【发布时间】:2011-11-09 08:27:31 【问题描述】:给定两个矩形左上角的坐标,以及两个矩形右下角的坐标,并且两个矩形相互平行,以及x和y轴,你怎么找到两个矩形之间的最小出租车/曼哈顿距离?
【问题讨论】:
【参考方案1】:这一切都归结为对两个矩形之间的关系进行分类。我假设它们不相交。在这种情况下,只会出现两种情况:
-
第二个矩形完全位于第一个矩形的四个角部分之一
所有其他情况
在第一种情况下,您计算两个相对角之间的曼哈顿距离 (TL-BR,TR-BL,BR-TL,BL-TR)
在第二种情况下,您可以根据情况取矩形边的 x 坐标差或 y 坐标差 (B-T,L-R,R-L,T-B)。这一切都可以通过一些 if 或 case 语句轻松测试。
【讨论】:
以上是关于如何找到两个平行矩形之间的最小出租车/曼哈顿距离?的主要内容,如果未能解决你的问题,请参考以下文章