wlbs 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/wlbs.rb +4 -4
- data/lib/wlbs/version.rb +1 -1
- metadata +2 -2
data/lib/wlbs.rb
CHANGED
@@ -20,16 +20,16 @@ module Wlbs
|
|
20
20
|
|
21
21
|
#基于haversine计算球面两点间距离
|
22
22
|
def calculate_distance_in_earth(lat1,lng1,lat2,lng2)
|
23
|
-
lat1,lat2,lng1,lng2 =
|
23
|
+
lat1,lat2,lng1,lng2 = radians(lat1),radians(lat2),radians(lng1),radians(lng2)
|
24
24
|
abs_lng , abs_lat = (lng1 - lng2).abs , (lat1 - lat2).abs
|
25
|
-
h =
|
25
|
+
h = haversine(abs_lat) + Math.cos(lat1) * Math.cos(lat2) * haversine(abs_lng)
|
26
26
|
return 2 * EARTH_RADIUS * Math.asin(Math.sqrt(h))
|
27
27
|
end
|
28
28
|
|
29
29
|
#范围搜索,返回最大和最小经纬度
|
30
30
|
def get_scope_hash(lat,lng,distance)
|
31
|
-
dlng =
|
32
|
-
dlat =
|
31
|
+
dlng = degress(2 * Math.asin(Math.sin(distance.to_f / (2 * EARTH_RADIUS)) / Math.cos(degress(lat)))).abs
|
32
|
+
dlat = degress(distance.to_f / EARTH_RADIUS ).abs
|
33
33
|
return {lat1: lat - dlat , lat2: lat + dlat, lng1: lng - dlng, lng2: lng + dlng}
|
34
34
|
end
|
35
35
|
end
|
data/lib/wlbs/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wlbs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-04-
|
12
|
+
date: 2012-04-19 00:00:00.000000000Z
|
13
13
|
dependencies: []
|
14
14
|
description: A gem for lbs service
|
15
15
|
email:
|