Class: Geometry::DiameterRegularPolygon

Inherits:
RegularPolygon show all
Defined in:
lib/geometry/regular_polygon.rb

Instance Attribute Summary collapse

Attributes inherited from RegularPolygon

#center, #edge_count

Attributes inherited from Polyline

#edges, #vertices

Accessors collapse

Instance Method Summary collapse

Methods inherited from RegularPolygon

new

Methods included from ClusterFactory

included

Methods inherited from Polygon

#<=>, #clockwise?, #convex, #offset_bisectors, #outset, #reverse, #union, #wrap

Methods inherited from Polyline

#offset, #rightset

Constructor Details

#initialize(edge_count, center, diameter) ⇒ RegularPolygon

Construct a new RegularPolygon from a centerpoint and a diameter

Parameters:



86
87
88
89
90
# File 'lib/geometry/regular_polygon.rb', line 86

def initialize(edge_count, center, diameter)
    @center = center ? Point[center] : nil
    @edge_count = edge_count
    @diameter = diameter
end

Instance Attribute Details

#diameterNumber (readonly)

Returns The RegularPolygon‘s diameter.

Returns:



79
80
81
# File 'lib/geometry/regular_polygon.rb', line 79

def diameter
  @diameter
end

Instance Method Details

#eql?(other) ⇒ Boolean Also known as: ==

Returns:

  • (Boolean)


92
93
94
# File 'lib/geometry/regular_polygon.rb', line 92

def eql?(other)
    (self.center == other.center) && (self.edge_count == other.edge_count) && (self.diameter == other.diameter)
end

#radiusNumber

Returns The RegularPolygon‘s radius.

Returns:



99
100
101
# File 'lib/geometry/regular_polygon.rb', line 99

def radius
    @diameter/2
end