Module: Mongoid::Geospatial

Extended by:
ActiveSupport::Concern
Defined in:
lib/mongoid/geospatial.rb,
lib/mongoid/geospatial/config.rb,
lib/mongoid/geospatial/version.rb,
lib/mongoid/geospatial/fields/box.rb,
lib/mongoid/geospatial/config/point.rb,
lib/mongoid/geospatial/fields/point.rb,
lib/mongoid/geospatial/fields/circle.rb,
lib/mongoid/geospatial/wrappers/rgeo.rb,
lib/mongoid/geospatial/fields/polygon.rb,
lib/mongoid/geospatial/geometry_field.rb,
lib/mongoid/geospatial/wrappers/georuby.rb,
lib/mongoid/geospatial/fields/line_string.rb

Overview

Wrappers for GeoRuby github.com/nofxx/georuby

Defined Under Namespace

Modules: ClassMethods, Config Classes: Box, Circle, GeometryField, LineString, Point, Polygon

Constant Summary collapse

LNG_SYMBOLS =

Symbols accepted as ‘longitude’, ‘x’…

[:x, :lon, :long, :lng, :longitude,
'x', 'lon', 'long', 'lng', 'longitude'].freeze
LAT_SYMBOLS =

Symbols accepted as ‘latitude’, ‘y’…

[:y, :lat, :latitude, 'y', 'lat', 'latitude'].freeze
EARTH_RADIUS_KM =

For distance spherical calculations

6371
RAD_PER_DEG =

taken directly from mongodb

Math::PI / 180
EARTH_RADIUS =

Earth radius in multiple units

{
  m: EARTH_RADIUS_KM * 1000,
  km: EARTH_RADIUS_KM,
  mi: EARTH_RADIUS_KM * 0.621371192,
  ft: EARTH_RADIUS_KM * 5280 * 0.621371192,
  sm: EARTH_RADIUS_KM * 0.53995680345572 # sea mile
}.freeze
VERSION =
'5.1.0'.freeze
@@lng_symbols =
LNG_SYMBOLS.dup
@@lat_symbols =
LAT_SYMBOLS.dup
@@earth_radius =
EARTH_RADIUS.dup

Class Method Summary collapse

Class Method Details

.configObject



24
25
26
# File 'lib/mongoid/geospatial/config.rb', line 24

def config
  Config
end

.configureObject



20
21
22
# File 'lib/mongoid/geospatial/config.rb', line 20

def configure
  block_given? ? yield(Config) : Config
end

.with_georuby!Object



68
69
70
# File 'lib/mongoid/geospatial.rb', line 68

def self.with_georuby!
  require 'mongoid/geospatial/wrappers/georuby'
end

.with_rgeo!Object



64
65
66
# File 'lib/mongoid/geospatial.rb', line 64

def self.with_rgeo!
  require 'mongoid/geospatial/wrappers/rgeo'
end