Class: Hexflex::TriangleGrid
- Inherits:
-
Object
- Object
- Hexflex::TriangleGrid
- Defined in:
- lib/hexflex/triangle_grid.rb
Instance Attribute Summary collapse
-
#grid_triangles ⇒ Object
readonly
Returns the value of attribute grid_triangles.
Instance Method Summary collapse
-
#initialize ⇒ TriangleGrid
constructor
A new instance of TriangleGrid.
- #place(triangle, row, position) ⇒ Object
- #triangles_per_row ⇒ Object
Constructor Details
#initialize ⇒ TriangleGrid
Returns a new instance of TriangleGrid.
8 9 10 |
# File 'lib/hexflex/triangle_grid.rb', line 8 def initialize @grid_triangles = [] end |
Instance Attribute Details
#grid_triangles ⇒ Object (readonly)
Returns the value of attribute grid_triangles.
6 7 8 |
# File 'lib/hexflex/triangle_grid.rb', line 6 def grid_triangles @grid_triangles end |
Instance Method Details
#place(triangle, row, position) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/hexflex/triangle_grid.rb', line 12 def place(triangle, row, position) @grid_triangles << GridTriangle.new( triangle: triangle, row: row, position: position ) end |
#triangles_per_row ⇒ Object
20 21 22 |
# File 'lib/hexflex/triangle_grid.rb', line 20 def triangles_per_row grid_triangles.group_by(&:row).values.map(&:count).max end |