舍入Lat和Long以在Google地图中显示近似位置

Cal*_*eed 6 javascript google-maps ruby-on-rails geolocation geospatial

我正在我的Rails应用视图中显示Google地图,并将使用标记/叠加层.

坐标数据将来自手机(GPS)并存储在我的Rails应用程序的数据库中.

问题是,我不希望在我的网页源中看到精确的纬度/长度...即我想标记一个大致的位置而不给出真正的纬度/经度.

如何舍入/截断纬度/经度值以使它们仍然准确(例如,在一英里内) - 但不是太准确?

(例如:你将如何围绕35.2827524,-120.6596156?)

Mar*_*sey 9

最简单的方法是将两个坐标四舍五入到一定数量的小数位,或者在坐标上添加一个随机抖动:

lat = Math.floor(lat*1000+0.5)/1000; (round within 0.001)
Run Code Online (Sandbox Code Playgroud)

要么

dither=0.001;
lat = lat + (Math.random()-0.5)*dither;
Run Code Online (Sandbox Code Playgroud)

如果你真的想要在一定里程数内,你需要做更复杂的数学运算,可能是使用极坐标.