Class: Okami::WrappingAngle
- Inherits:
-
Object
- Object
- Okami::WrappingAngle
- Defined in:
- lib/okami/wrapping_angle.rb
Constant Summary collapse
- Tau =
Math::PI * 2
Instance Method Summary collapse
- #degrees ⇒ Object
- #degrees=(a) ⇒ Object
- #fraction ⇒ Object
- #fraction=(a) ⇒ Object
-
#initialize(options = {}) ⇒ WrappingAngle
constructor
A new instance of WrappingAngle.
- #radians ⇒ Object
- #radians=(a) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ WrappingAngle
Returns a new instance of WrappingAngle.
4 5 6 7 8 9 |
# File 'lib/okami/wrapping_angle.rb', line 4 def initialize ={} self.fraction = [:fraction] if .has_key? :fraction self.degrees = [:degrees] if .has_key? :degrees self.radians = [:radians] if .has_key? :radians @radians ||= 0 end |
Instance Method Details
#degrees ⇒ Object
13 |
# File 'lib/okami/wrapping_angle.rb', line 13 def degrees; @radians / Tau * 360.0 end |
#degrees=(a) ⇒ Object
17 |
# File 'lib/okami/wrapping_angle.rb', line 17 def degrees= a; @radians = (a % 360.0 ) / 360.0 * Tau end |
#fraction ⇒ Object
12 |
# File 'lib/okami/wrapping_angle.rb', line 12 def fraction; @radians / Tau end |
#fraction=(a) ⇒ Object
16 |
# File 'lib/okami/wrapping_angle.rb', line 16 def fraction= a; @radians = (a % 1.0 ) * Tau end |
#radians ⇒ Object
11 |
# File 'lib/okami/wrapping_angle.rb', line 11 def radians; @radians end |
#radians=(a) ⇒ Object
15 |
# File 'lib/okami/wrapping_angle.rb', line 15 def radians= a; @radians = a % Tau end |