Module: Geometry

Defined in:
lib/geometry.rb,
lib/geometry/arc.rb,
lib/geometry/edge.rb,
lib/geometry/line.rb,
lib/geometry/path.rb,
lib/geometry/size.rb,
lib/geometry/point.rb,
lib/geometry/bezier.rb,
lib/geometry/circle.rb,
lib/geometry/square.rb,
lib/geometry/annulus.rb,
lib/geometry/obround.rb,
lib/geometry/polygon.rb,
lib/geometry/polyline.rb,
lib/geometry/rotation.rb,
lib/geometry/size_one.rb,
lib/geometry/triangle.rb,
lib/geometry/point_iso.rb,
lib/geometry/point_one.rb,
lib/geometry/rectangle.rb,
lib/geometry/size_zero.rb,
lib/geometry/point_zero.rb,
lib/geometry/transformation.rb,
lib/geometry/regular_polygon.rb,
lib/geometry/transformation/composition.rb

Defined Under Namespace

Classes: Annulus, Arc, Bezier, CenterDiameterCircle, CenteredObround, CenteredRectangle, CenteredSquare, Circle, Edge, EquilateralTriangle, IsoscelesTriangle, Line, Obround, Path, Point, PointIso, PointOne, PointSlopeLine, PointZero, Polygon, Polyline, Rectangle, RegularPolygon, RightTriangle, Rotation, RotationAngle, ScaleneTriangle, Size, SizeOne, SizeZero, SizedObround, SizedRectangle, SizedSquare, SlopeInterceptLine, Square, ThreePointArc, Transformation, Triangle, TwoPointLine, VertexRing

Constant Summary collapse

DimensionMismatch =
Class.new(StandardError)
OperationNotDefined =
Class.new(StandardError)
NotSquareError =
Class.new(ArgumentError)
Ring =

Ring is an alias of Annulus because that’s the word that most people use,

despite the proclivities of mathmeticians.
Annulus

Instance Method Summary collapse

Instance Method Details

#Edge(first, last) ⇒ Object

Convenience initializer for Edge that tries to coerce its arguments into

something useful

Parameters:

  • first (Point, Array)

    the starting point of the Edge

  • last (Point, Array)

    the endpoint of the Edge



153
154
155
# File 'lib/geometry/edge.rb', line 153

def Edge(first, last)
	Edge.new(first, last)
end