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.1.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.1-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: m3d-1.3.1.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.1.tar.gz
Algorithm Hash digest
SHA256 e45f73f07338c776e49f5fbd858decf0bddb14c682efb4b46e9718481e5b3fd0
MD5 2c5673a877407cb0758a8b7a1739a92e
BLAKE2b-256 88377953bade05794be9cefa73bfae9b8497c862cf1afbd6edf266c4de2f8850

See more details on using hashes here.

File details

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

File metadata

  • Download URL: m3d-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 14.8 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8e78289cb0aaa517362758637296b8a5dbd3a6390756ae957c8690ba47e40f50
MD5 beb9ceff0813a383bbeecb673e1e91a8
BLAKE2b-256 acb0e799faee6390c46d64748b0098756de708bfaf905f39d1a4d9a065a5df0f

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