/ThreeCSG

Constructive Solid Geometry (CSG) implementation for three.js

Primary LanguageJavaScriptMIT LicenseMIT

ThreeCSG

ThreeCSG provides a javascript implementation of Constructive Solid Geometry (CSG) concepts, optimized for three.js support.

Constructive Solid Geometry (CSG) is a modeling technique that uses Boolean operations like union and intersection to combine 3D solids. This library implements CSG operations on meshes elegantly and concisely using BSP trees. All edge cases involving overlapping coplanar polygons in both solids are correctly handled.

Notes

Tested against three.js r84.

This fork provides support for BufferGeometry, and preserves vertex normal and UV (channel 1) data between operations.

Author Attribution

License

  • ThreeCSG is Copyright (c) 2012 Chandler Prall, and provided under the MIT License.
  • csg.js is Copyright (c) 2011 Evan Wallace, and provided under the MIT License.