【发布时间】:2015-10-11 13:56:40
【问题描述】:
我将线段和点存储在数据库中。我将如何查询数据库以检索多个线段一定距离内的所有点。 目的是当用户点击一条路径(道路)时,所有在路径距离内的物体都应该被高亮显示。
谢谢。
更新: 例子... 我有一条从 (0,0) 到 (0, 10) 的路径。程序应找到并突出显示该路径 x 距离内的所有对象。 假设 x 距离为“2”……那么,程序应突出显示矩形 (0,2)(10,-2) 内的所有对象。基本上,这与查找所有靠近线的对象(不仅仅是单个点)相同。
当线是水平的时候很容易......但我不知道如何解决所有情况,包括线可能是斜率。
更新:这些点存储在一个大型数据库中,因此我无法检查每个点的接近度。我正在尝试找到一种方法来仅检索足够接近而不会过多重叠请求的那些...一旦检索到它们,我可以使用“点和线段之间的距离”中描述的方法来细化搜索”。 (我想!) 谢谢!
【问题讨论】:
-
你有一些代码,或者数据如何存储的例子吗?
-
数据库中每一行有3个字段:id, x_axis, y_axis..都是整数
-
你想知道的一切似乎都在这里:stackoverflow.com/questions/849211/…
-
您可以做出任何假设来简化数学运算吗?线段是否都具有相似的长度?用户可以输入的最大距离是否总是大于分段长度?路线或多或少是直的?
标签: javascript php sql database