Skip to main content

A vector library to contain and manipulate 2D and 3D points.

Project description

Usage

  • To import everything:
    import vectors
  • To import only 2D and 3D points:
    from vectors import Vector2, Vector3, Slope
  • Create a 2D Vector:
    v = Vector2(x, y)
  • Create a 3D vector:
    v = Vector3(x, y, z)
  • Create a slope instance:
    m = Slope(rise, run)
  • Get point information:
    _.x or _.y or _.z
  • Get all points/rise and run as a tuple:
    _.tuple()
  • Get all points/rise and run as an array list:
    _.list()
  • Get all points/rise and run as a dictionary:
    _.dict()
  • Get rise over run from slope object as a string formated as rise/run:
    _.string()
  • Add two points:
    vectors.add(<v1>, <v2>)
    _.add(v)
  • Subtract two points:
    vectors.subtract(<v1>, <v2>)
    _.subtract(v)
  • Multiply two points:
    vectors.multiply(<v1>, <v2>)
    _.multiply(v)
  • Divide two points:
    vectors.divide(<v1>, <v2>)
    _.divide(v)
  • Simplify slope rise and run:
    _.simplify()
  • Generate a 2D vector matrix:
    vectors.generate_2d_matrix(<Vector2>, <Vector2>)
  • Generate a 3D vector matrix:
    vectors.generate_3d_matrix(<Vector3>, <Vector3>)

Usage Notes:

  • vectors.find_slope(<Vector2>, <Vector2>) returns a Slope class
  • vectors.generate_2d_square_matrix(<Vector2>, <Vector2>) increments by one. This means your given Vector2 objects should only contain ints, no double or floats.
  • You can add, subtract, multiply, and divide a Vector2 and a Vector3 (and vice versa). The output will be converted to a Vector3, using 0 <operator> <second_param>.z as the z value
  • IMPORTANT: Remember when dividing, you cannot divide by zero. 0 / 2 is valid, however 2 / 0 is not. If your second parameter has a 0, you WILL get an error

Updates

11/18/2020 - 1.2.3

  • Changed vectors.generate_square_matrix(<Vector2>, <Vector2>) to vectors.generate_2d_matrix(<Vector2>, <Vector2>
  • Added vectors.generate_3d_matrix(<Vector3>, <Vector3>)

11/18/2020 - 1.2.1

  • Added inline math functions
  • Added square matrix generation with vectors.generate_square_matrix(<Vector2>, <Vector2>)
  • Added Slope class
  • Added vectors.find_slope(<Vector2>, <Vector2>), _.simplify(), and _.string() functions

11/18/2020 - 1.1.2

  • Updated README.md

11/18/2020 - 1.1.0

  • Added add, subtract, multiply, and dividing of Vector2 and Vector3

11/18/2020 - 1.0.0

  • Fixed Vector3.tuple() showing as (x, y, x) instead of (x, y, z)

11/17/2020 - 0.0.1

  • Package published

Other Information

See my other projects at https://fosterreichert.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-vectors-1.2.3.tar.gz (3.1 kB view hashes)

Uploaded Source

Built Distribution

python_vectors-1.2.3-py3-none-any.whl (4.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page