2011-11-14 53 views
2

我有一个程序,其中二维形状是由一个R-树代表的。我希望能够有效地检测一个形状是否完全包含在另一个形状中。这是可能的R树?如何检测二维形状是否包含R树形状的另一个形状?

+0

在一般情况下:不,您无法确定一个形状是否完全包含在另一个形状中,因为R-Tree使用最小边界框(最小的矩形足以包围形状)来表示/组织形状;即使没有完全包含在另一个边框中,凹多边形(形状)也可能落入同一个边界框(使用笔和纸进行试用,您会得到一个非常快速的示例)。看看埃米尔Akaydın连接到的问题。 –

回答

1

R-树木包围盒工作。所以对于多边形内多边形测试,它可以作为有效的过滤步骤,但不能回答确切的查询。它产生候选人,并有效地跳过错过。

1

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

Check if polygon is inside a polygon