class Pulo::Cube

Attributes

face[R]
length[R]

Public Class Methods

new(length: nil, face: nil, volume: nil) click to toggle source
# File lib/pulo/figure/figure3d.rb, line 37
def initialize(length: nil, face: nil, volume: nil)
  quantity_check [length,Length] ,[face,Square], [volume, Volume]
  raise 'Cube needs volume or face or length.' unless (length || volume || face)

  if volume
    @volume=volume
    @length=volume.rt(3)
    @face=Square.new(width: @length)
  elsif face
    @face=face
    @length=@face.width
    @volume=@face.area*@length
  elsif length
    @length=length
    @face=Square.new(width: @length)
    @volume=@face.area*@length
  end
  @surfacearea=@face.area*6
end