OpenVCAD

Charles Wade and Robert MacCurdy
Matter Assembly Computation Lab · University of Colorado Boulder

What is OpenVCAD?

OpenVCAD (VCAD) is a unified framework for volumetric, multi‑material, programmable design and AM‑ready compilation. It couples an implicit modeling core with a compiler that emits printer‑ and simulation‑ready outputs. VCAD supports applications from graded lattices and metamaterials to medical models and simulation‑informed parts. Use VCAD via Python (pyvcad) or the GUI OpenVCAD Studio to design with math, code, data, and external libraries—then export to inkjet/PolyJet or toolpath‑based systems, and to FEA‑friendly meshes.


Key capabilities

  • Implicit geometry & materials: express both shape (signed distance implicits) and multi‑material volume fraction functions.
  • Programmable design (Python): parametric & algorithmic modeling with pyvcad; integrate NumPy/SciPy/optimizers/simulation.
  • Digital alloying & blending: define graded compositions with smooth transitions across complex interfaces.
  • Lattices & TPMS: graded struts, unit‑cell tiling, and complex structures with per‑feature control.
  • Export everywhere:
    • Inkjet/PolyJet: voxel/PNG stacks.
    • Toolpath printers: gradient‑aware slicing strategies (e.g., FFF).
    • Simulation: meshes with material sets for FEA.

How it fits together

  1. Model with pyvcad: build a tree of geometry + material nodes using parameters, loops, conditionals, or external data.
  2. Compile to volumetric forms and/or process‑specific formats.
  3. Export to PNG stacks, OpenVDB/NanoVDB, FEA meshes, or meshes/toolpaths for traditional slicers.
VCAD workflow: program → compile → export for printing or simulation.

Inputs & Outputs at a glance

Inputs

  • Geometry: meshes, STEP CAD, implicit surfaces, DICOM, FEA, voxels (OpenVDB/NanoVDB)
  • Materials: math expressions, Python/C++ callbacks, blending, image‑ or scan‑driven fields

Outputs

  • Printing: PNG stacks (inkjet) and meshes/toolpaths (toolpath printers)
  • Simulation: FEA‑ready meshes with material sets
  • Voxel: OpenVDB/NanoVDB
  • Rendering: Renderable previews

Radial color gradient gear.
Three‑component gradient Utah teapot.
Functionally graded screwdriver.
Scan‑to‑print medical model.
Graded lattice with soft/rigid regions.

Publications (OpenVCAD Project)

OpenVCAD spans multiple papers. Use these citations when referencing the framework or specific capabilities.

  1. OpenVCAD: An open‑source volumetric multi‑material geometry compiler (2024)
    Core framework; implicit volumetric design; inkjet/PolyJet workflows.
    Read our paper here (Additive Manufacturing)

  2. Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Gradient‑Aware Slicing (preprint, 2025)
    Extends VCAD to toolpath‑based systems (e.g., FFF) with gradient‑aware slicing.
    Read our paper here (Pre-print / In-submission)

  3. Implicit Modeling for 3D‑Printed Multi‑Material Computational Object Design via Python (preprint, 2025)
    Python‑first API (pyvcad), enhanced lattice workflows, and simulation‑informed design/export.
    Read our paper here (Pre-print / In-submission)

Cite Us (BibTeX)

@article{wade2024openvcad,
  title={OpenVCAD: An open source volumetric multi-material geometry compiler},
  author={Wade, Charles and Williams, Graham and Connelly, Sean and Kopec, Braden and MacCurdy, Robert},
  journal={Additive Manufacturing},
  year={2024}
}
@article{wade2025gradedtoolpath,
  title={Implicit Toolpath Generation for Functionally Graded Additive Manufacturing via Gradient-Aware Slicing},
  author={Wade, Charles and Beck, Devon and MacCurdy, Robert},
  journal={arXiv preprint arXiv:2505.08093},
  year={2025}
}
@misc{wade2025pyvcad,
      title={Implicit Modeling for 3D-printed Multi-material Computational Object Design via Python}, 
      author={Charles Wade and Devon Beck and Robert MacCurdy},
      year={2025},
      eprint={2509.15562},
      archivePrefix={arXiv},
      primaryClass={cs.GR},
      url={https://arxiv.org/abs/2509.15562}, 
}

Try OpenVCAD

OpenVCAD is freely available for academic, research, and hobbyist use under a non‑commercial license.
Code & Docs: https://github.com/MacCurdyLab/OpenVCAD-Public
OpenVCAD Studio (GUI IDE): https://github.com/MacCurdyLab/OpenVCAD-Public/wiki
For commercial evaluation/licensing, contact Charles Wade at charles.wade@colorado.edu.

OpenVCAD Studio: code, preview, export.

Contact

Charles Wadecharles.wade@colorado.edu