Class: Haversine::Distance

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/haversine/distance.rb

Constant Summary collapse

GREAT_CIRCLE_RADIUS_MILES =
3956
GREAT_CIRCLE_RADIUS_KILOMETERS =

some algorithms use 6367

6371
GREAT_CIRCLE_RADIUS_FEET =
GREAT_CIRCLE_RADIUS_MILES * 5280
GREAT_CIRCLE_RADIUS_METERS =
GREAT_CIRCLE_RADIUS_KILOMETERS * 1000

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(great_circle_distance) ⇒ Distance

Returns a new instance of Distance.



12
13
14
# File 'lib/haversine/distance.rb', line 12

def initialize(great_circle_distance)
  @great_circle_distance = great_circle_distance
end

Instance Attribute Details

#great_circle_distanceObject (readonly)

Returns the value of attribute great_circle_distance.



10
11
12
# File 'lib/haversine/distance.rb', line 10

def great_circle_distance
  @great_circle_distance
end

Instance Method Details

#<=>(other) ⇒ Object



36
37
38
# File 'lib/haversine/distance.rb', line 36

def <=>(other)
  great_circle_distance <=> other.great_circle_distance
end

#to_feetObject Also known as: to_ft



31
32
33
# File 'lib/haversine/distance.rb', line 31

def to_feet
  @great_circle_distance * GREAT_CIRCLE_RADIUS_FEET
end

#to_kilometersObject Also known as: to_km



21
22
23
# File 'lib/haversine/distance.rb', line 21

def to_kilometers
  @great_circle_distance * GREAT_CIRCLE_RADIUS_KILOMETERS
end

#to_metersObject Also known as: to_m



26
27
28
# File 'lib/haversine/distance.rb', line 26

def to_meters
  @great_circle_distance * GREAT_CIRCLE_RADIUS_METERS
end

#to_milesObject Also known as: to_mi



16
17
18
# File 'lib/haversine/distance.rb', line 16

def to_miles
  @great_circle_distance * GREAT_CIRCLE_RADIUS_MILES
end