Skip to main content

Python3 3D transformation library with object oriented API and MIT licensed

Project description

pipeline status coverage report

Object oriented transformation matrix library. m3d was originally developed as an MIT licenced API compatible replacement for pymath3d which is GPL, but is now developed independently. Development is happenig here: https://gitlab.com/kurant-open/m3d/

m3d uses some code from https://matthew-brett.github.io/transforms3d/ and its API is inspired by pymath3d API from Morten Lind https://gitlab.com/morlin/pymath3d.

Example use:

t = m3d.Transform()
t.orient.rotate_yb(1)
t2 = t.copy()
t2.pos.x = 1
v = t2.inverse() @ t @ m3d.Vector(1, 2, 3)
v.normalize()
v *= 1.2
o = m3d.Orientation.from_axis_angle(0, 0, 1)
v = o * v
o2 = m3d.Orientation.from_xy(m3d.Vector(1.1, 0.2, 0), m3d.Vector(0, 0, 1.1))
v = o2 * o.inverse() * v

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

m3d-1.3.0.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

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

m3d-1.3.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file m3d-1.3.0.tar.gz.

File metadata

  • Download URL: m3d-1.3.0.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for m3d-1.3.0.tar.gz
Algorithm Hash digest
SHA256 6ae8e228eaa5b5b766d9ffd8f93ca7589a7682c7fc0297fa27014de6f1461032
MD5 23104e48e4bcc3012e12a49a26cf2b33
BLAKE2b-256 dc52e69f35f7a1dc7d59396db1a4867feaca27d8e8f7dac1e2d932b81460bdc9

See more details on using hashes here.

File details

Details for the file m3d-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: m3d-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for m3d-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 621ff59ac1f8a93cb96c1c93b46055bf69ecfc01a5bef69435e64cd2a7ed25d5
MD5 c4f7630c0b1356c633b96d9463a0ab53
BLAKE2b-256 a52e74c35b4da9cfafe02481c1e07b4de1ecd2a5ba44d6e650fde5257a5e3716

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