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 details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

Details for the file python-vectors-1.2.3.tar.gz.

File metadata

  • Download URL: python-vectors-1.2.3.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.3

File hashes

Hashes for python-vectors-1.2.3.tar.gz
Algorithm Hash digest
SHA256 44c9f47eda634a84984a27d9c81447d457f252d2262be12dc91644aaba729c35
MD5 2bd38e4cf135fcbe0c5499fcfafe0edc
BLAKE2b-256 54655fb5589d3d5e1769acc56e65c0f1cfbaca23b16340dd995e5baa90568f66

See more details on using hashes here.

File details

Details for the file python_vectors-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: python_vectors-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.3

File hashes

Hashes for python_vectors-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bb6d0b066fcda0221147e1cb263433d1a6785a2a9f8c6b8d302269855799d3e6
MD5 2afc803993fa48d8ead1dff585fed137
BLAKE2b-256 812667f106b9706c83c11b4ab90ba16af3517576ce767a8481b7acf21e7c0217

See more details on using hashes here.

Supported by

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