Skip to main content

Simple yet powerful CAD (Computer Aided Design) library, written with Python

Project description

madcad-logo

Py-MADCAD

>>> it's time to throw parametric softwares out !

Simple yet powerful CAD (Computer Aided Design) library, written with Python.

support-version PyPI version shields.io Documentation Status #madcad:matrix.org

Features

  • surface generation (3D sketch primitives, extrusion, revolution, inflation, tubes, ...)
  • fast boolean operations
  • common mesh file format import/export
  • kinematic manipulation
  • implicit geometry definition through the constraint/solver system
  • objects display with high-quality graphics

example-bearing

Checkout some complete examples

Sample usage

from madcad import *

# define points
O = vec3(0)
A = vec3(2,0,0)
B = vec3(1,2,0)
C = vec3(0,2,0)

# create a list of primitives
line = [
	Segment(O, A),          
	ArcThrough(A, B, C),
	Segment(C,O),           
	]

# create and solve constraints
solve([
		Tangent(line[0], line[1], A),   
		Tangent(line[1], line[2], C),   
		Radius(line[1], 1.5),           
	], fixed=[O])

# generate surfaces
part = extrusion(line, vec3(0,0,1))

# display in a 3D scene
show([part])

The result will be this window example-window

About

MADCAD is born from the idea that the current approach of parametric CADs for mechanical engineering is not the best possible. This library is part of a project targeting the best possible mechanical design tool for both engineers and handymen. See the comparison for more details.

License LGPL logo

Copyright 2019-2023 Yves Dejonghe jimy.byerley@gmail.com

This library is distributed under the LGPL-v3 license. A copy of that license is provided with this software.

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

pymadcad-0.18.1.tar.gz (1.3 MB view details)

Uploaded Source

File details

Details for the file pymadcad-0.18.1.tar.gz.

File metadata

  • Download URL: pymadcad-0.18.1.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for pymadcad-0.18.1.tar.gz
Algorithm Hash digest
SHA256 2bab084daa8340fb2473e1dc0debbfc0761e2dd34f86424da778df61fffa2447
MD5 f01f679435380a221c1e1381e4596485
BLAKE2b-256 1f4bc8cf09d2e72de2c102861cfe98747ab7edbfce52953625d2f07f752c5df9

See more details on using hashes here.

Supported by

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