Skip to content

Commit 32833ce

Browse files
committed
Updates README for version 2.0+
1 parent b585b22 commit 32833ce

10 files changed

Lines changed: 108 additions & 37 deletions

README.md

Lines changed: 96 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,110 @@
1-
![Simple VCAD Object Example](documentation/vcad_gyroid_text.png)
1+
# OpenVCAD
22

3-
DOI: [10.1016/j.addma.2023.103912](https://doi.org/10.1016/j.addma.2023.103912)
3+
> **Volumetric, Multi-Material, Programmable CAD for Additive Manufacturing**
44
5-
A volumetric multi-material modeling language and compiler developed by the [Matter Assembly Computation Lab](https://www.matterassembly.org/) at the University of Colorado Boulder. OpenVCAD is an automatable volumetric design framework that can fully leverage multi-material fabrication. OpenVCAD provides a scriptable suite of constructive solid geometry and functional design methods that enable the representation of complex objects with hundreds of materials. OpenVCAD allows for full spatial control over the material composition of an object. Additionally, it provides functional grading and convolutional blending techniques to generate parts with dynamic mechanical characteristics. This research tool is intended to be used for the design and development of new meta-materials, digital allows, and compliant mechanisms.
5+
![Hero Image – Replace with best printed artifact or figure from papers](images/hero.png)
66

7-
# Documention
8-
Please see the [wiki](https://github.com/MacCurdyLab/OpenVCAD-Public/wiki) for full documentation on how to use OpenVCAD.
7+
OpenVCAD is an open-source volumetric geometry compiler for the design and fabrication of **functionally graded, multi-material** objects.
8+
It brings advanced **implicit modeling** and **programmable parametric design** into the world of additive manufacturing, enabling designers to create objects with continuous material gradients, lattice structures, and simulation-informed material distributions.
99

10-
## Gallery & Benchmarking
11-
![Render of benchmarking objects (a though d)](documentation/benchmarking_composite.png)
10+
With OpenVCAD, you can:
1211

13-
a. shows a mesh node that is graded with two materials
12+
- Express geometry **and** multi-material composition using **implicit functions**.
13+
- Create complex gradients and digital alloys using **functional material nodes**.
14+
- Design **algorithmically** in Python using `pyvcad` — integrate with NumPy, SciPy, optimization, or simulation workflows.
15+
- Compile directly for **inkjet, FFF, and other AM processes**, with export to slicing and simulation-ready formats.
16+
- Work in a GUI-based IDE — **OpenVCAD Studio** — for code editing, preview, and export.
1417

15-
b. shows a screwdriver that consists of a mesh node and graded with three materials
18+
---
1619

17-
c. shows a soft actuator that consists of a functional geometry node and graded with three materials
20+
## 📚 Publications
1821

19-
d. shows a mug that is designed using multiple functional geometry nodes and boolean operations
22+
OpenVCAD is an active research project developed by the [Matter Assembly Computation Lab](https://www.colorado.edu/lab/matterassembly/) at CU Boulder.
2023

21-
> See [Gallery and Results page](https://github.com/MacCurdyLab/OpenVCAD-Public/wiki/Gallery) for more info.
24+
1. **Wade et al., 2024**[OpenVCAD: An open source volumetric multi-material geometry compiler](https://matterassembly.org/assets/pdf/preprints/2024_OpenVCAD.pdf)
25+
*Introduces the original OpenVCAD framework for implicit, volumetric multi-material design, with a focus on inkjet 3D printing.*
2226

23-
# Download
24-
## Pre-compiled OpenVCAD binaries
25-
Pre-compiled binaries of the OpenVCAD compiler can be found in [releases](https://github.com/MacCurdyLab/OpenVCAD/releases). These include two versions:
26-
1. IDE-like program with UI and OpenGL-based rendering preview
27-
2. Standalone command-line application that compiles `.VCAD` scripts into PNG stacks, [OpenVDB](https://www.openvdb.org/) grids, or binary voxel files.
27+
2. **Wade et al., 2025**[Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Implicit Modeling](https://arxiv.org/abs/2505.08093) *(preprint)*
28+
*Extends OpenVCAD to toolpath-based 3D printing systems with gradient-aware slicing methods for filament mixing and process parameter grading.*
2829

29-
# Contributing
30-
We welcome contributions to OpenVCAD from the community! Below outlines the process for contributing to the project.
30+
---
3131

32-
### Getting the Code/ Open Source Contributions
33-
The OpenVCAD code is open-source under a [non-comercial license](https://github.com/MacCurdyLab/OpenVCAD-Public/blob/main/LICENSE). As such, we encourage contributions from the community.
32+
## 🛠 Installation
33+
OpenVCAD can be used in two main ways:
3434

35-
The code is hosted on a private GitHub repository that you can request access to by using this form: [https://forms.gle/MAjCmG66xZ6p1JcE9](https://forms.gle/MAjCmG66xZ6p1JcE9)
35+
### 1. **OpenVCAD Studio** (GUI IDE)
36+
> Best place to start
37+
- A standalone IDE for creating, previewing, and exporting designs with `pyvcad`.
38+
- Ships with `pyvcad` built-in — no separate Python install needed.
39+
- Available for **Windows** and **macOS (Apple Silicon)**.
40+
- Download the latest release from the [Releases page](https://github.com/MacCurdyLab/OpenVCAD-Public/releases).
3641

42+
### 2. **pyvcad** (Python library)
43+
> For advanced users
44+
- Python bindings to the OpenVCAD C++ kernel.
45+
- Installable via PyPI:
46+
```bash
47+
pip install OpenVCAD
48+
```
49+
- Best for algorithmic workflows, integration with simulation, or headless rendering.
50+
- Runs on Windows and macOS.
51+
52+
---
53+
54+
## 📥 Getting the Code
55+
56+
The OpenVCAD source code is open-source under a **non-commercial license**.
57+
You can request access to the private GitHub repository here:
58+
59+
**[Request Access Form](https://forms.gle/MAjCmG66xZ6p1JcE9)**
60+
61+
---
62+
63+
## 🖼 Gallery
64+
65+
Here are a few examples of what OpenVCAD can produce:
66+
67+
### Functionally graded lattice
68+
![Example 1 – Functionally graded lattice](images/lattice_example.png)
69+
*Multi-material graded lattice structure made with soft, rigid, and non-curing liquid.*
70+
71+
### Multi-material Stanford Bunny
72+
![Example 2 – Multi-material stanford bunny](images/bunny_combined.png)
73+
*(a) OpenVCAD software render of the multi-material lattice-filled Stanford Bunny; (b) physical artifact printed on a Stratasys J750 printer; and (c) close-up view detailing graded internal lattice structures. Strut color is a function of strut length. The bunny is comprised of 3,289 unique struts. *
74+
75+
### Inkjet 3D Printed Medical Scan
76+
![Example 3 – Inkjet 3D Printed Medical Scan](images/medical.png)
77+
*Real world patient scan ata processed with OpenVCAD and printed on Inkjet 3D Printer*
78+
79+
---
80+
81+
## 📄 License
82+
83+
OpenVCAD is released under a **non-commercial open-source license**.
84+
See the [LICENSE](LICENSE) file for details.
85+
86+
---
87+
88+
## 🗣 Citing OpenVCAD
89+
If you use OpenVCAD in your research, please cite:
90+
91+
```bibtex
92+
@article{wade2024openvcad,
93+
title={OpenVCAD: An open source volumetric multi-material geometry compiler},
94+
author={Wade, Charles and Williams, Graham and Connelly, Sean and Kopec, Braden and MacCurdy, Robert},
95+
journal={Additive Manufacturing},
96+
volume={79},
97+
pages={103912},
98+
year={2024},
99+
publisher={Elsevier}
100+
}
101+
```
102+
103+
```bibtex
104+
@article{wade2025gradedtoolpath,
105+
title={Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Gradient-Aware Slicing},
106+
author={Wade, Charles and Beck, Devon and MacCurdy, Robert},
107+
journal={arXiv preprint arXiv:2505.08093},
108+
year={2025}
109+
}
110+
```

documentation/benchmarking_composite.png

Lines changed: 0 additions & 3 deletions
This file was deleted.

documentation/logo.png

Lines changed: 0 additions & 3 deletions
This file was deleted.

documentation/open_vcad_text.png

Lines changed: 0 additions & 3 deletions
This file was deleted.

documentation/openvcad_diagram.png

Lines changed: 0 additions & 3 deletions
This file was deleted.

documentation/vcad_gyroid_text.png

Lines changed: 0 additions & 3 deletions
This file was deleted.

images/bunny_combined.png

Lines changed: 3 additions & 0 deletions
Loading

images/hero.png

Lines changed: 3 additions & 0 deletions
Loading

images/lattice_example.png

Lines changed: 3 additions & 0 deletions
Loading

images/medical.png

Lines changed: 3 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)