@prisoner849 I’m working with THREE.ShapeGeometry and not a buffer geometry. Honestly though, my lack of knowledge and unfamiliarity with buffer geometry, I am unable to respond to your question about non-indexed shape buffer geometry.
What I do know is that when the shape is created using THREE.ShapeGeometry, as described above, I do see vertices and faces like on any normal geometry.
What I was hoping was that there would be a way to look at the faces in the ShapeGeometry and be able to construct new geometry from faces that touch each other. At least that was one thought.
But then I am face with another challenge, where just because I am able to successfully extract the faces into groups (meaning faces that touch each other are consider a group), I would also have to know the order of the faces and vertices to reconstruct the geometry correctly correct? (coming from someone, I, who does not normally manually build geometry from scratch)
And from the looks of it, a lot of my searches do point back to the CSG library which is probably my best bet.