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.

Features

  • surface generation (3D sketch primitives, extrusion, revolution, ...)
  • 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

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(vec3(0,0,1), web(line))

# display in a 3D scene
quickdisplay([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-2020 Yves Dejonghe yves.dejonghe.y@gmail.com

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

python logo cython logo moderngl logo qt logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pymadcad, version 0.2
Filename, size File type Python version Upload date Hashes
Filename, size pymadcad-0.2.tar.gz (678.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page