Class: Pulo::Circle
- Inherits:
-
Object
- Object
- Pulo::Circle
- Includes:
- Figure2D
- Defined in:
- lib/pulo/figure/figure2d.rb
Instance Attribute Summary collapse
-
#diameter ⇒ Object
readonly
Returns the value of attribute diameter.
-
#radius ⇒ Object
readonly
Returns the value of attribute radius.
Attributes included from Figure2D
Instance Method Summary collapse
- #extrusion_figure ⇒ Object
-
#initialize(radius: nil, diameter: nil, area: nil) ⇒ Circle
constructor
A new instance of Circle.
Methods included from Figure2D
Methods included from Quantity_Checker
Constructor Details
#initialize(radius: nil, diameter: nil, area: nil) ⇒ Circle
Returns a new instance of Circle.
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/pulo/figure/figure2d.rb', line 23 def initialize(radius: nil, diameter: nil, area: nil) raise 'Circle needs area or diameter or radius.' unless (area || diameter || radius) quantity_check [radius,Length] ,[diameter,Length] , [area,Area] if area @area=area @radius=(@area/Math::PI).rt(2) @diameter=@radius*2 else if diameter @diameter=diameter @radius=@diameter/2 else @radius=radius @diameter=@radius*2 end @area=(@radius**2)*Math::PI end @perimeter=@radius*2*Math::PI end |
Instance Attribute Details
#diameter ⇒ Object (readonly)
Returns the value of attribute diameter.
19 20 21 |
# File 'lib/pulo/figure/figure2d.rb', line 19 def diameter @diameter end |
#radius ⇒ Object (readonly)
Returns the value of attribute radius.
19 20 21 |
# File 'lib/pulo/figure/figure2d.rb', line 19 def radius @radius end |
Instance Method Details
#extrusion_figure ⇒ Object
20 21 22 |
# File 'lib/pulo/figure/figure2d.rb', line 20 def extrusion_figure Cylinder end |