Class: Cube
- Inherits:
-
Object
- Object
- Cube
- Defined in:
- lib/hexa/objects/cube.rb
Instance Attribute Summary collapse
-
#side ⇒ Object
Returns the value of attribute side.
Class Method Summary collapse
-
.volume(side = 1) ⇒ Fixnum
Same behavior as volume but you can call it without a Cube instance like Cube::volume(10) => 1000.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ Cube
constructor
Create a new Cube object a Fixnum or a Square object.
-
#volume ⇒ Fixnum
The volume of the cube.
Constructor Details
#initialize(options = {}) ⇒ Cube
Create a new Cube object a Fixnum or a Square object.
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/hexa/objects/cube.rb', line 9 def initialize( = {}) if [:side] if [:side].instance_of?(Square) @side = [:side].side elsif [:side].instance_of?(Fixnum) @side = [:side] else @side = 1 end else @side = 1 end end |
Instance Attribute Details
#side ⇒ Object
Returns the value of attribute side.
3 4 5 |
# File 'lib/hexa/objects/cube.rb', line 3 def side @side end |
Class Method Details
.volume(side = 1) ⇒ Fixnum
Same behavior as volume but you can call it without a Cube instance like Cube::volume(10) => 1000
32 33 34 |
# File 'lib/hexa/objects/cube.rb', line 32 def self.volume(side = 1) side ** 3 end |
Instance Method Details
#volume ⇒ Fixnum
Returns the volume of the cube.
25 26 27 |
# File 'lib/hexa/objects/cube.rb', line 25 def volume @side ** 3 end |