哈希,相对于x,y位置的多边形

Hashing, polygonal shapes relative to to x,y location

本文关键字:多边形 位置 相对于 哈希      更新时间:2023-10-16

我正在尝试构建一个多边形工具,并让它根据其面积进行计算,以确定区域内部或外部是否存在点。

如果你想每次都对每个对象进行计算,这些例子效果很好,但我正在寻找一种方法来"HASH"多边形相对于空间位置的形状/面积,然后数学就变成了一个简单的"HASH"检查,以确定值是否存在于定义的"HACH"内部或外部。

我发现了一些不错的基本示例:
http://jsfromhell.com/math/is-point-in-poly,
http://en.wikipedia.org/wiki/Point_in_polygon(光线投射算法)

http://en.wikipedia.org/wiki/Geometric_hashing

我认为这很好地解释了一切。

假设它实际上只能用于确定两个对象是否相似(假设差异是一组简单的变换),则可以表明实际的空间信息丢失

因此,你的问题的答案是否定的。

据我所知,你不能使用几何哈希来确定点是否处于形状中。

我认为这个问题需要澄清一下,但对于某些应用程序,每个多边形一个简单的边界框可以帮助您在进行精确计算之前快速消除一些多边形。

您可以构建一个树来结构化多边形,或者创建一个网格来存储与单元格相交的多边形列表。这取决于你的问题规模和具体内容。主要思想是只对点附近的多边形进行操作。

如果你正在处理曼哈顿几何,那么你可以考虑使用区间树,

请参阅维基百科:http://en.wikipedia.org/wiki/Interval_tree

以及一本关于细节的好书:

Mark de Berg、Marc van Krevild、Mark Overmars和Otfried Schwarzkopf。计算几何,第二次修订版。施普林格出版社2000年。第10.1节:区间树,第212–217页。