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.4.0.tar.gz (11.4 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.4.0-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: m3d-1.4.0.tar.gz
  • Upload date:
  • Size: 11.4 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.4.0.tar.gz
Algorithm Hash digest
SHA256 365b4381c4ce3d33a055c483b3f36de54f69077ae1892f8743accba09bfbf20a
MD5 0871abfeeca39a121104072e5cfc8df2
BLAKE2b-256 5aa28f21efe11efae84502a411a2bed9179567f08ff685bf49f8b2b75a86e96c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: m3d-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 15.3 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.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7806e0ce7a0ee7c4ece64235009b046bdc2ce508196028db0afb9e2eca203b44
MD5 e12432aa4d3c1f755d8b90957e0283fa
BLAKE2b-256 8a60ea07d893e247638f6dee06eb21b24055ec68f60eaa2695e481fe8e6686bc

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