Class: Geokit::Adapters::Vertica

Inherits:
Abstract
  • Object
show all
Defined in:
lib/geokit-rails/adapters/vertica.rb

Instance Method Summary collapse

Instance Method Details

#flat_distance_sql(origin, lat_degree_units, lng_degree_units) ⇒ Object



12
13
14
15
16
17
# File 'lib/geokit-rails/adapters/vertica.rb', line 12

def flat_distance_sql(origin, lat_degree_units, lng_degree_units)
  %|
    SQRT(POW(#{lat_degree_units}*(#{origin.lat}-#{qualified_lat_column_name}),2)+
    POW(#{lng_degree_units}*(#{origin.lng}-#{qualified_lng_column_name}),2))
    |
end

#sphere_distance_sql(lat, lng, multiplier) ⇒ Object



4
5
6
7
8
9
10
# File 'lib/geokit-rails/adapters/vertica.rb', line 4

def sphere_distance_sql(lat, lng, multiplier)
  %|
    (ACOS(least(1,COS(#{lat})*COS(#{lng})*COS(RADIANS(#{qualified_lat_column_name}))*COS(RADIANS(#{qualified_lng_column_name}))+
    COS(#{lat})*SIN(#{lng})*COS(RADIANS(#{qualified_lat_column_name}))*SIN(RADIANS(#{qualified_lng_column_name}))+
    SIN(#{lat})*SIN(RADIANS(#{qualified_lat_column_name}))))*#{multiplier})
    |
end