Algorithm 确定形状从右上到左下顺序的算法

Algorithm 确定形状从右上到左下顺序的算法,algorithm,shapes,Algorithm,Shapes,我有一个包含N个形状的画布,我想给每个形状分配一个数字索引,以确定形状从左到右、从上到下的顺序。我知道每个形状的x/y坐标和宽度/高度。出于我的目的,可以安全地假设形状不会重叠 有没有一个已知的算法 例如: 为什么5在4之后,而不是1之后?我认为订单没有具体说明。不清楚哪些形状应该形成一行。@TamasHegedus我认为这是一种聚类问题。4-5对我来说是有意义的,但6-7对我来说没有意义。@TamasHegedus我同意5是不明确的,这就是为什么我把它包括在示例中。一个算法将其放在1之后或4之

我有一个包含N个形状的画布,我想给每个形状分配一个数字索引,以确定形状从左到右、从上到下的顺序。我知道每个形状的x/y坐标和宽度/高度。出于我的目的,可以安全地假设形状不会重叠

有没有一个已知的算法

例如:

为什么5在4之后,而不是1之后?我认为订单没有具体说明。不清楚哪些形状应该形成一行。@TamasHegedus我认为这是一种聚类问题。4-5对我来说是有意义的,但6-7对我来说没有意义。@TamasHegedus我同意5是不明确的,这就是为什么我把它包括在示例中。一个算法将其放在1之后或4之后是合理的,这取决于它是按水平顺序排序还是按垂直顺序排序。有人可能会说5应该在4之后,因为它与4的重叠比与1的重叠更多,所以从视觉上看,它更多地分组在第二行。