Simple yet powerful CAD (Computer Aided Design) library, written with Python.
- 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
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, line, A), Tangent(line, line, C), Radius(line, 1.5), ], fixed=[O]) # generate surfaces part = extrusion(vec3(0,0,1), web(line)) # display in a 3D scene show([part])
The result will be this window
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.