Skip to main content

Programmable 3D modeling library in pure Python

Project description

ThreeDimensions

ThreeDimensions is a programmable 3D modeling library for Python.

Version: 1.1.1

The package is now Python-only. No C++ extension build is required at install or runtime.

Installation

pip install .

Viewer extras (optional):

pip install ".[viewer]"

Quick Start

import threedimensions as td

mesh = td.create_cube(1.0)
mesh.extrude(distance=0.2)
mesh.bevel(width=0.05)
mesh.subdivide(1)
mesh.save("model.obj")

Python API Highlights

  • Primitives: create_cube, create_plane, create_grid, create_sphere, create_uv_sphere, create_icosphere, create_cylinder, create_cone, create_torus
  • Mesh editing: extrude, inset, bevel, bridge, fill, grid fill, subdivide, loop cut, knife, bisect, spin, screw, solidify, wireframe
  • Transforms and deformation: move/rotate/scale, mirror, bend, twist, taper, stretch, shear, warp, symmetrize
  • Sculpt and topology: brush workflow (inflate, smooth, mask, etc.), laplacian_smooth, remesh, decimate, weld
  • Curves: BezierCurve, NURBSCurve, lathe, curve-to-mesh conversion
  • Procedural nodes: NodeGraph
  • Viewer: td.viewer(mesh) or with td.viewer() as scene: ...

Architecture

  • python/threedimensions/: full implementation and public API
  • examples/: sample modeling scripts and exported meshes

License

MIT

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

threedimensions-1.0.0.tar.gz (18.9 kB view details)

Uploaded Source

Built Distribution

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

threedimensions-1.0.0-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file threedimensions-1.0.0.tar.gz.

File metadata

  • Download URL: threedimensions-1.0.0.tar.gz
  • Upload date:
  • Size: 18.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for threedimensions-1.0.0.tar.gz
Algorithm Hash digest
SHA256 111284c4ff660d522b8721110fc09477fc45ce2bef4ee76a48c4761c73899b19
MD5 422d75c2ca2218b252170efa0af14990
BLAKE2b-256 fe6e19be553cd26a203917c201db4279ce12dce23ecccf6c3382324ad284d668

See more details on using hashes here.

Provenance

The following attestation bundles were made for threedimensions-1.0.0.tar.gz:

Publisher: publish.yml on LegedsDaD/ThreeDimensions-v1.0.0

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file threedimensions-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for threedimensions-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a82e96ae660dcc415f8c27ab2b21a23a131c08f270f788fa52acf14ec55b6af9
MD5 2e5b0d2473370279e6113ac0bc6a8c84
BLAKE2b-256 9bf2320b761cec542f824df0d8697294aa227b846d5790eb522e939e083e4644

See more details on using hashes here.

Provenance

The following attestation bundles were made for threedimensions-1.0.0-py3-none-any.whl:

Publisher: publish.yml on LegedsDaD/ThreeDimensions-v1.0.0

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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