Class: ActiveRoad::AccessLink
- Inherits:
-
Object
- Object
- ActiveRoad::AccessLink
- Defined in:
- app/models/active_road/access_link.rb
Instance Attribute Summary collapse
-
#arrival ⇒ Object
Returns the value of attribute arrival.
-
#departure ⇒ Object
Returns the value of attribute departure.
Class Method Summary collapse
Instance Method Summary collapse
- #access_to_road?(road) ⇒ Boolean
- #geometry ⇒ Object (also: #to_geometry)
-
#initialize(attributes = {}) ⇒ AccessLink
constructor
A new instance of AccessLink.
- #length ⇒ Object (also: #length_in_meter)
- #name ⇒ Object (also: #to_s)
- #paths ⇒ Object
Constructor Details
#initialize(attributes = {}) ⇒ AccessLink
Returns a new instance of AccessLink.
5 6 7 8 9 |
# File 'app/models/active_road/access_link.rb', line 5 def initialize(attributes = {}) attributes.each do |k, v| send("#{k}=", v) end end |
Instance Attribute Details
#arrival ⇒ Object
Returns the value of attribute arrival.
3 4 5 |
# File 'app/models/active_road/access_link.rb', line 3 def arrival @arrival end |
#departure ⇒ Object
Returns the value of attribute departure.
3 4 5 |
# File 'app/models/active_road/access_link.rb', line 3 def departure @departure end |
Class Method Details
.from(location) ⇒ Object
17 18 19 20 21 |
# File 'app/models/active_road/access_link.rb', line 17 def self.from(location) ActiveRoad::AccessPoint.from(location).collect do |access_point| new :departure => location, :arrival => access_point end end |
Instance Method Details
#access_to_road?(road) ⇒ Boolean
40 41 42 |
# File 'app/models/active_road/access_link.rb', line 40 def access_to_road?(road) arrival.respond_to?(:access_to_road?) ? arrival.access_to_road?(road) : false end |
#geometry ⇒ Object Also known as: to_geometry
29 30 31 |
# File 'app/models/active_road/access_link.rb', line 29 def geometry @geometry ||= GeoRuby::SimpleFeatures::LineString.from_points [departure.to_geometry, arrival.to_geometry] end |
#length ⇒ Object Also known as: length_in_meter
23 24 25 |
# File 'app/models/active_road/access_link.rb', line 23 def length @length ||= departure.to_geometry.spherical_distance arrival.to_geometry end |
#name ⇒ Object Also known as: to_s
11 12 13 |
# File 'app/models/active_road/access_link.rb', line 11 def name "AccessLink : #{departure} -> #{arrival}" end |
#paths ⇒ Object
36 37 38 |
# File 'app/models/active_road/access_link.rb', line 36 def paths arrival.respond_to?(:paths) ? arrival.paths : [arrival] end |