随机创建给定地理点 50 英尺范围内的地理点(空间 SQL)
我想在给定 GeoPoint 的 50 英尺范围内创建一个随机 GeoPoint。 (使用 SQL Server 2008 或 iPhone SDK)
我可以在 long & 中添加一些数字吗? lat 创建这个随机地理点?
示例:
mylatdistance = Random(1,50) newlat = lat + mylatdistance
或者
这是空间 SQL/区域问题吗?
谢谢
I would like to create a random GeoPoint within 50 feet of a given GeoPoint. (Using SQL Server 2008 or IPhone SDK)
Can I just add some number to the long & lat to create this random Geopoint?
Example:
mylatdistance = Random(1,50) newlat = lat + mylatdistance
or
Is this a Spatial SQL/area problem?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只要将 delta_longitude 值缩放 1/cos(纬度),这种方法就应该有效,因为 1 度的纬度仅等于 1 度的赤道经度。如果您不进行此缩放,当您的中心点远离赤道时,您的随机点集合将在经度维度上受到更多“挤压”。
That approach should work, as long as you scale the delta_longitude values by a factor of 1/cos(latitude), since 1 degree of latitude only equals 1 degree of longitude at the equator. If you don't do this scaling, your random ensemble of points will get more "squashed" in the longitude dimension as your center point moves away from the equator.