哈希,相对于x,y位置的多边形
Hashing, polygonal shapes relative to to x,y location
我正在尝试构建一个多边形工具,并让它根据其面积进行计算,以确定区域内部或外部是否存在点。
如果你想每次都对每个对象进行计算,这些例子效果很好,但我正在寻找一种方法来"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页。
- 将值指定给向量(2D)的向量中的某个位置
- 使用Unreal C++获取VR耳机的世界位置/方向
- 写入位置0x0000000C时发生访问冲突
- 如何将两个不同矢量的同一位置的两个元素组合在一起
- GL_SHADERSTORAGE_BUFFER位置是否与其他着色器位置冲突
- 计算缩放多边形的比例,得到给定的多边形面积
- 如何使用cudaMallocManaged在指针位置初始化对象?(C++)
- 无法获取webot::PositionSensor对象中位置传感器的值
- 非常量变量只读位置的赋值
- 如何定义更改car类中car位置的方法
- 使用迭代器时如何访问对象在向量中的位置?
- 更改.cpp程序的输入文件中数据的位置会意外更改输出
- 求最大元素位置的分治算法
- 将QGraphicsItem的移动区域限制在多边形区域内
- 你好。。。id_public变量不应该给出结果为 81 和 86 吗?为什么它为两个派生类占用不同的内存位置?
- 为什么我的点没有在 OpenGL 中绘制鼠标所在的位置?
- 如何将元素添加到向量的字符串位置
- 如何选择在 csv 文件中输出的位置
- 多边形在时间 T 的位置 x,y 处
- 哈希,相对于x,y位置的多边形