【问题标题】:How to detect if a 2-D shape contains another shape with R-tree?如何使用 R-tree 检测二维形状是否包含另一个形状?
【发布时间】:2011-11-14 23:59:32
【问题描述】:

我有一个程序,其中 2D 形状由 R 树表示。我希望能够有效地检测一个形状是否完全包含在另一个形状中。 R-tree 可以吗?

【问题讨论】:

  • 在一般情况下:不,您无法确定一个形状是否完全包含在另一个形状中,因为 R-Tree 使用最小边界框(最小的矩形大到足以包围该形状) 表示/组织形状;凹多边形(形状)可以落入同一个边界框,即使一个没有完全包含在另一个边界框中(用笔和纸试试,你很快就会得到一个例子)。查看 Emir Akaydın 链接到的问题。

标签: algorithm graphics shape r-tree


【解决方案1】:

R-trees 作用于边界框。所以对于多边形内多边形测试,它可以作为一个有效的过滤步骤,但不能回答确切的查询。它产生候选人,并有效地跳过某些失误。

【讨论】:

    【解决方案2】:

    如果形状是子元素,则表示它包含在父元素下。如果您在检测另一个多边形内的多边形时遇到问题,可以查看此链接。

    Check if polygon is inside a polygon

    【讨论】:

      猜你喜欢
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      • 2015-06-29
      • 2019-03-04
      • 1970-01-01
      • 2014-12-16
      • 1970-01-01
      • 2017-10-27
      相关资源
      最近更新 更多