Skip to content

Commit fcc23ad

Browse files
committed
Slim down README — point to centralized docs site
1 parent 6d8cb0b commit fcc23ad

1 file changed

Lines changed: 38 additions & 118 deletions

File tree

README.md

Lines changed: 38 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -1,123 +1,61 @@
11
# OpenVCAD
22

3-
> **Volumetric, Multi-Material, Programmable CAD for Additive Manufacturing**
4-
5-
![Hero Image – Replace with best printed artifact or figure from papers](images/hero.png)
6-
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.
9-
10-
With OpenVCAD, you can:
11-
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.
17-
18-
---
19-
20-
## Gallery
21-
22-
Here are a few examples of what OpenVCAD can produce:
23-
24-
### Functionally graded lattice
25-
![Example 1 – Functionally graded lattice](images/lattice_example.png)
26-
*Multi-material graded lattice structure made with soft, rigid, and non-curing liquid.*
27-
28-
### Multi-material Stanford Bunny
29-
![Example 2 – Multi-material stanford bunny](images/bunny_combined.png)
30-
*(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.*
31-
32-
### Inkjet 3D Printed Medical Scan
33-
![Example 3 – Inkjet 3D Printed Medical Scan](images/medical.png)
34-
*Real world patient scan ata processed with OpenVCAD and printed on Inkjet 3D Printer*
35-
36-
---
37-
38-
## Getting Started
39-
40-
See our [starter project](https://github.com/MacCurdyLab/OpenVCAD-Public/tree/main/examples/project_example) for more information on installing OpenVCAD.
41-
42-
Also check out our [examples](https://github.com/MacCurdyLab/OpenVCAD-Public/tree/main/examples).
43-
44-
---
45-
46-
## Publications
47-
48-
OpenVCAD is an active research project developed by the [Matter Assembly Computation Lab](https://www.colorado.edu/lab/matterassembly/) at CU Boulder.
49-
1. **OpenVCAD: An open‑source volumetric multi‑material geometry compiler** (2024)
50-
<small>Core framework; implicit volumetric design; inkjet/PolyJet workflows.</small><br>
51-
[Read our paper here](https://matterassembly.org/publications/#wade2024openvcad) (Additive Manufacturing)
52-
53-
2. **Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Gradient‑Aware Slicing** (2025)
54-
<small>Extends VCAD to toolpath‑based systems (e.g., FFF) with gradient‑aware slicing.</small><br>
55-
[Read our paper here](https://matterassembly.org/publications/#wade2025implicit) (Additive Manufacturing)
3+
[![PyPI version](https://img.shields.io/pypi/v/OpenVCAD)](https://pypi.org/project/OpenVCAD/)
4+
[![License](https://img.shields.io/badge/license-non--commercial-blue)](LICENSE)
565

57-
3. **Implicit Modeling for 3D‑Printed Multi‑Material Computational Object Design via Python** (2025)
58-
<small>Python‑first API (`pyvcad`), enhanced lattice workflows, and simulation‑informed design/export.</small><br>
59-
[Read our paper here](https://matterassembly.org/publications/#wade2025pyvcad) (Proceedings of the 10th ACM Symposium on Computational Fabrication)
60-
---
61-
62-
## How OpenVCAD Works
63-
64-
1. **Modeling** – Use the `pyvcad` Python package to create a hierarchical tree of geometry + material nodes.
65-
2. **Compilation** – Run an OpenVCAD compiler module to convert the model into volumetric data.
66-
3. **Export** – Output formats include PNG stacks for inkjet printing, FEA meshes for simulation, and meshes for FFF printing.
67-
68-
Key capabilities:
69-
70-
- **Material transitions** – Gradual changes in material properties within one object.
71-
- **Fully implicit representation** – Geometry *and* material are expressed implicitly, scaling to hundreds of billions of voxels.
72-
- **Digital alloying** – Combine materials at a fine scale for intricate compositions.
73-
- **Blending** – Convolution-based smoothing across complex material interfaces.
74-
- **Image-based processing** – Drive material distributions from images (e.g., medical scans).
75-
76-
---
77-
78-
## Supported Inputs
6+
> **Volumetric, Multi-Material, Programmable CAD for Additive Manufacturing**
797
80-
| **Category** | **Supported Inputs** |
81-
|--------------|----------------------|
82-
| **Geometry** | • Meshes <br>• STEP CAD files <br>• FEA simulation results <br>• DICOM medical scans <br>• Implicit surfaces <br>• Voxels (OpenVDB, NanoVDB) |
83-
| **Materials**| • Math expressions <br>• Custom C++ / Python functions <br>• Blending <br>• DICOM medical scans <br>• Voxels (OpenVDB, NanoVDB) |
8+
![Hero Image](images/hero.png)
849

85-
---
10+
OpenVCAD is an open-source volumetric geometry compiler for the design and
11+
fabrication of **functionally graded, multi-material** objects. It brings
12+
advanced **implicit modeling** and **programmable parametric design** into the
13+
world of additive manufacturing.
8614

87-
## Supported Outputs
15+
## Quick Start
8816

89-
| **Category** | **Output Types** |
90-
|-----------------------|------------------|
91-
| **3D Printing** | PNG stacks (inkjet) |
92-
| **Simulation** | FEA input files with material assignments (ABAQUS) |
93-
| **Voxel-based Outputs**| Voxel grids (OpenVDB, NanoVDB) |
94-
| **Visualization** | Surface and volumetric previews |
17+
```bash
18+
pip install OpenVCAD
19+
```
9520

96-
---
21+
```python
22+
import pyvcad as pv
23+
import pyvcad_rendering as viz
9724

98-
## What OpenVCAD **Is Not**
25+
materials = pv.default_materials
26+
root = pv.RectPrism(pv.Vec3(0,0,0), pv.Vec3(10,10,10), materials.id("red"))
27+
viz.Render(root, materials)
28+
```
9929

100-
OpenVCAD is **not** a voxel-by-voxel design tool. While it can emit voxel data, design is done implicitly with high-level math expressions that scale to extremely large builds (e.g. Inkjet 3D printing).
30+
## Resources
10131

102-
---
32+
| | |
33+
|---|---|
34+
| **Documentation** | [matterassembly.org/OpenVCAD-Docs](https://matterassembly.org/OpenVCAD-Docs/) |
35+
| **Project Website** | [matterassembly.org/openvcad](https://matterassembly.org/openvcad) |
36+
| **Examples** | [`examples/`](examples/) in this repo |
37+
| **Bug Reports** | [Issues](https://github.com/MacCurdyLab/OpenVCAD-Public/issues) |
38+
| **Community** | [Discussions](https://github.com/MacCurdyLab/OpenVCAD-Public/discussions) |
39+
| **Source Code Access** | [Request Form](https://forms.gle/MAjCmG66xZ6p1JcE9) |
10340

104-
## Getting the Code
41+
## Examples
10542

106-
The OpenVCAD source code is open-source under a **non-commercial license**.
107-
You can request access to the private GitHub repository here:
43+
Clone this repo to get runnable example scripts:
10844

109-
**[Request Access Form](https://forms.gle/MAjCmG66xZ6p1JcE9)**
45+
```bash
46+
git clone https://github.com/MacCurdyLab/OpenVCAD-Public.git
47+
cd OpenVCAD-Public/examples
48+
```
11049

111-
---
50+
See the [Getting Started](https://matterassembly.org/OpenVCAD-Docs/v2/getting-started/) tutorial in the documentation for a walkthrough.
11251

11352
## License
11453

115-
OpenVCAD is released under a **non-commercial open-source license**.
54+
OpenVCAD is released under a **non-commercial open-source license**.
11655
See the [LICENSE](LICENSE) file for details.
11756

118-
---
119-
12057
## Citing OpenVCAD
58+
12159
If you use OpenVCAD in your research, please cite:
12260

12361
```bibtex
@@ -132,22 +70,4 @@ If you use OpenVCAD in your research, please cite:
13270
}
13371
```
13472

135-
```bibtex
136-
@article{wade2025toolpaths,
137-
title = {Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Gradient-Aware Slicing},
138-
author = {Wade, Charles and Beck, Devon and MacCurdy, Robert},
139-
journal = {Additive Manufacturing},
140-
year = {2025},
141-
doi = {https://doi.org/10.1016/j.addma.2025.104963},
142-
}
143-
```
144-
145-
```bibtex
146-
@article{wade2025pyvcad,
147-
title = {Implicit Modeling for 3D-printed Multi-material Computational Object Design via Python},
148-
author = {Wade, Charles and Beck, Devon and MacCurdy, Robert},
149-
journal = {Proceedings of the 10th ACM Symposium on Computational Fabrication},
150-
year = {2025},
151-
doi = {https://doi.org/10.48550/arXiv.2509.15562},
152-
}
153-
```
73+
See the [full list of publications](https://matterassembly.org/OpenVCAD-Docs/v2/papers/) for additional citations.

0 commit comments

Comments
 (0)