# richardkmichael/ruby-geometry forked from DanielVartanov/ruby-geometry

Simple geometry classes and algorithms in Ruby
Ruby
Switch branches/tags
Nothing to show
This branch is 52 commits behind DanielVartanov:master.
Fetching latest commitâ€¦
Cannot retrieve the latest commit at this time.

```Geometry in Ruby
================

Implementation of basic 2D geometry algorithms in Ruby.

Defined geometry objects
========================

* Point

* Segment

* Vector

* Polygon

* Line

==============================

* Do segments overlap? { Segments.overlaps? }

* Do segments lie on one line? { Segment.lies_on_one_line_with? }

* Do segments intersect? { Segment.intersects_with? }

* Segments intersection point { Segment.intersection_point_with }

* Does segment contain given point?  { Segment.contains_point? }

* Are segments parallel? { Segment.parallel_to? }

* Are vectors collinear? { Vector.collinear_with? }

* Vectors cross product (outer product, vector product) { Vector.cross_product }

* Vectors scalar product (inner product, dot product) { Vector.scalar_product }

* Segment length { Segment.length }

* Vector modulus { Vector.modulus }

* Trivial vector arithmetics: summation, subtraction, vector-number multiplication { Vector.+(vector); Vector.-(vector); Vector.*(numeric) }

* Euclid distance { Geometry.distance }

* Line slope { Line.slope }

* Y-intercept of a line { Line.y_intercept }

* X-intercept of a line { Line.x_intercept }

* Are lines parallel? { Line.parallel_to? }

* What x-value do lines intersect at? { Line.intersect_x }

* What is the angle between two lines? { Line.angle_to }

Coming up
=========

* Is polygon self-intersecting?

* Area of polygon

* Is polygon convex?

* Do polygons intersect?

* Does polygon contain given point?

* Rectangular bounds of polygon

* Does circle contain given point?

* Do circles intersect?

* Area of circle

* Making a ruby gem