I’m interested in learning about how to implement these kind of geometry operations that 3d modelers like Blender, have, like splitting edges, bisecting faces, etc. I want to study different implementations of these 3d geometry modifier utilities. I was wondering if ThreeJS has any libraries for editing geometry? I’m aware of GitHub - gkjohnson/three-bvh-csg: A flexible, memory compact, fast and dynamic CSG implementation on top of three-mesh-bvh but it seems to be about boolean operations on geometry. I’m interested in the under-the-hood implementation of operations like:
The reason why I’m interested in ThreeJS is because I feel like it’d be a little bit simpler than the implementations that 3d engines like Blender or Unity have.
I second the recommendation of half-edge data structure… It’s pretty simple but creates the necessary scaffolding for a while bunch of geometric operations.
There is an implementation in threejs also, I think added/created by Mugen.