2011-07-05 5 views
2

다음과 같은 문제가 있습니다.Geokit/Geocoder의 거리 및 거리 계산

는 속성으로이 개 모델을 고려

Place 
- lat 
- lng 
- range 

User 
- lat 
- lng 

장소는 위치와 정의 된 어떤 범위 (선적의 영역으로 그것에 대해 생각)이있다. 사용자는 자신의 위치를가집니다.

Geocoder를 Geolocation으로 사용합니다 (Geokit도 사용할 수 있습니다). 객체까지의 거리를 계산할 수 있습니다. (객체, 거리 등)

내 위치가 포함 된 모든 장소를 선택하고 싶습니다. 상위 레벨 : 알고 싶습니다. 어떤 장소 내 위치에 대한 운송을 제공합니다.

그것은 내가 주어진 범위에서 개체의 컬렉션을 찾고있을 때 더 쉽다. 그러나 나는 뭔가가 필요 "반전", 무언가를 또 다른 측면에서.

어떤 방법/범위 내가해야 쓰지 않을까? Geocoder/Geokit가 이미 나를 위해 존재할 수도 있습니까?

답변

2

마지막으로 보석에서 아무것도 발견하지 못했습니다. 다음 방법

class User < ActiveRecord::Base 
    #... 
    def in_reach?(place) 
    place.distance_to([lat,lng]) <= place.range 
    end 
end