Class: Geometry::Spheroid::Sphere

Inherits:
Base
  • Object
show all
Defined in:
lib/geometry/spheroid/sphere.rb

Instance Attribute Summary

Attributes inherited from Base

#equatorial_radius, #polar_radius, #unit

Instance Method Summary collapse

Methods inherited from Base

#flattening, #flattening_complement_squared, #geodetic_to_geocentric_latitude, #haversine_distance, #inverse_flattening, #mean_radius, #radius_at_geodetic_latitude, #volume

Constructor Details

#initialize(radius, unit = :km) ⇒ Sphere

Returns a new instance of Sphere.



7
8
9
# File 'lib/geometry/spheroid/sphere.rb', line 7

def initialize(radius, unit = :km)
  super(radius,radius,unit)
end

Instance Method Details

#circumferenceObject



19
20
21
# File 'lib/geometry/spheroid/sphere.rb', line 19

def circumference
  @circumference ||= 2.0 * Math::PI * radius
end

#diameterObject



15
16
17
# File 'lib/geometry/spheroid/sphere.rb', line 15

def diameter
  @diameter ||= radius * 2.0
end

#radiusObject



11
12
13
# File 'lib/geometry/spheroid/sphere.rb', line 11

def radius
  @equatorial_radius
end

#surface_areaObject



23
24
25
# File 'lib/geometry/spheroid/sphere.rb', line 23

def surface_area
  @surface_area ||= 4.0 * (Math::PI * radius ** 2)
end