Version Build

Vector2d

Vector2d handles two-dimensional coordinates and vectors. Vectors are immutable, meaning this is a purely functional library.

Quick example

require 'vector2d'

vector = Vector2d(50, 70)

vector.aspect_ratio        # => 0.714285714285714
vector.length              # => 86.0232526704263

vector * 2                 # => Vector2d(100,140)
vector + Vector2d(20, 30)  # => Vector2d(70,100)

vector.fit(Vector2d(64, 64)) # => Vector2d(64,45)

Vector2d.parse([50, 70])   # => Vector2d(50,70)
Vector2d.parse("50x70")    # => Vector2d(50,70)

Documentation

API documentation

Contributing

Bug reports and pull requests are welcome on GitHub. See CONTRIBUTING.md for how to run the tests and how commits are formatted, and note that this project ships with a code of conduct.

License

Released under the MIT License.