Class: Is::Area
- Inherits:
-
Object
- Object
- Is::Area
- Defined in:
- lib/is/area.rb
Instance Attribute Summary collapse
-
#area ⇒ Object
readonly
Returns the value of attribute area.
Instance Method Summary collapse
- #contains?(point) ⇒ Boolean
-
#initialize(points) ⇒ Area
constructor
A new instance of Area.
Constructor Details
Instance Attribute Details
#area ⇒ Object (readonly)
Returns the value of attribute area.
4 5 6 |
# File 'lib/is/area.rb', line 4 def area @area end |
Instance Method Details
#contains?(point) ⇒ Boolean
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/is/area.rb', line 10 def contains?(point) point = Is::Point.new(*point) unless point.is_a?(Is::Point) return false if outside_box? point contains_point = false area_size = area.size i = -1 j = area_size - 1 while (i += 1) < area_size vertex1, vertex2 = area.values_at i, j if conditions_passed?(point, vertex1, vertex2) contains_point = !contains_point end j = i end contains_point end |