# Neural Shape Parsers for Constructive Solid Geometry

arXiv: https://arxiv.org/abs/1912.11393 · HTML: https://mlsanity.com/paper/1912.11393/

## Key facts

- Cited by 14 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 22 Dec 2019.

## Built on by (most cited first, 14 of 14)

- [SkexGen: Autoregressive Generation of CAD Construction Sequences with Disentangled Codebooks](https://mlsanity.com/paper/2207.04632/) (2022)
- [Hierarchical Neural Coding for Controllable CAD Model Generation](https://mlsanity.com/paper/2307.00149/) (2023)
- [Point2CAD: Reverse Engineering CAD Models from 3D Point Clouds](https://mlsanity.com/paper/2312.04962/) (2023)
- [From Perception to Programs: Regularize, Overparameterize, and Amortize](https://mlsanity.com/paper/2206.05922/) (2022)
- [A Survey of Methods for Converting Unstructured Data to CSG Models](https://mlsanity.com/paper/2305.01220/) (2023)
- [Learning to Infer 3D Shape Programs with Differentiable Renderer](https://mlsanity.com/paper/2206.12675/) (2022)
- [QuadricsNet: Learning Concise Representation for Geometric Primitives in Point Clouds](https://mlsanity.com/paper/2309.14211/) (2023)
- [SldprtNet: A Large-Scale Multimodal Dataset for CAD Generation in Language-Driven 3D Design](https://mlsanity.com/paper/2603.13098/) (2026)
- [P2CADNet: An End-to-End Reconstruction Network for Parametric 3D CAD Model from Point Clouds](https://mlsanity.com/paper/2310.02638/) (2023)
- [PS-CAD: Local Geometry Guidance via Prompting and Selection for CAD Reconstruction](https://mlsanity.com/paper/2405.15188/) (2024)
- [CADENA: Stepwise CAD Reverse Engineering](https://mlsanity.com/paper/2608.00799/) (2026)
- [SharpNet: Enhancing MLPs to Represent Functions with Controlled Non-differentiability](https://mlsanity.com/paper/2601.19683/) (2026)
- [GeoFusion-CAD: Structure-Aware Diffusion with Geometric State Space for Parametric 3D Design](https://mlsanity.com/paper/2603.21978/) (2026)
- [Extrusion Segmentation Strategy to improve CAD Reconstruction from Point Cloud](https://mlsanity.com/paper/2605.08971/) (2026)

## Abstract (arXiv)

Constructive Solid Geometry (CSG) is a geometric modeling technique that defines complex shapes by recursively applying boolean operations on primitives such as spheres and cylinders. We present CSGNe, a deep network architecture that takes as input a 2D or 3D shape and outputs a CSG program that models it. Parsing shapes into CSG programs is desirable as it yields a compact and interpretable generative model. However, the task is challenging since the space of primitives and their combinations can be prohibitively large. CSGNe uses a convolutional encoder and recurrent decoder based on deep networks to map shapes to modeling instructions in a feed-forward manner and is significantly faster than bottom-up approaches. We investigate two architectures for this task --- a vanilla encoder (CNN) - decoder (RNN) and another architecture that augments the encoder with an explicit memory module based on the program execution stack. The stack augmentation improves the reconstruction quality of the generated shape and learning efficiency. Our approach is also more effective as a shape primitive detector compared to a state-of-the-art object detector. Finally, we demonstrate CSGNet can be trained on novel datasets without program annotations through policy gradient techniques.
