Class: RCAP::Base::Point
Constant Summary
collapse
- MAX_LONGITUDE =
180
- MIN_LONGITUDE =
-180
- MAX_LATTITUDE =
90
- MIN_LATTITUDE =
-90
- LATTITUDE_KEY =
'lattitude'
- LONGITUDE_KEY =
'longitude'
- LATTITUDE_INDEX =
0
- LONGITUDE_INDEX =
1
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from Validation
#errors, included, #valid?, #validate
Constructor Details
#initialize {|_self| ... } ⇒ Point
Returns a new instance of Point.
23
24
25
|
# File 'lib/rcap/base/point.rb', line 23
def initialize
yield(self) if block_given?
end
|
Instance Attribute Details
#lattitude ⇒ Numeric
12
13
14
|
# File 'lib/rcap/base/point.rb', line 12
def lattitude
@lattitude
end
|
#longitude ⇒ Numeric
14
15
16
|
# File 'lib/rcap/base/point.rb', line 14
def longitude
@longitude
end
|
Class Method Details
.from_a(point_array) ⇒ Point
79
80
81
82
83
84
|
# File 'lib/rcap/base/point.rb', line 79
def self.from_a(point_array)
new do |point|
point.lattitude = point_array[LATTITUDE_INDEX].to_f
point.longitude = point_array[LONGITUDE_INDEX].to_f
end
end
|
.from_h(point_hash) ⇒ Point
59
60
61
62
63
64
|
# File 'lib/rcap/base/point.rb', line 59
def self.from_h(point_hash)
new do |point|
point.lattitude = point_hash[LATTITUDE_KEY].to_f
point.longitude = point_hash[LONGITUDE_KEY].to_f
end
end
|
Instance Method Details
#==(other) ⇒ true, false
Two points are equivalent if they have the same lattitude and longitude
44
45
46
|
# File 'lib/rcap/base/point.rb', line 44
def ==(other)
[lattitude, longitude] == [other.lattitude, other.longitude]
end
|
36
37
38
|
# File 'lib/rcap/base/point.rb', line 36
def inspect
'(' + to_s + ')'
end
|
#to_a ⇒ Array(Numeric, Numeric)
Returns a string representation of the point of the form
lattitude,longitude
31
32
33
|
# File 'lib/rcap/base/point.rb', line 31
def to_s
"#{ lattitude },#{ longitude }"
end
|