I'm trying to learn more about volume meshing and have decided to try to implement a simple volume mesher. The strategy I have chosen is to subdivide my space using an octree, refined based on some criteria. I have made sure that my octree is balanced, such that the difference between two neighbouring cells is no more than 1 (the so-called 2:1 rule).I now have to cut my cells into tetrahedrons. I have read that Body Centered Cubic (BCC) is a popular way to do this but unfortunately I have not found any literature that explains well how to handle differences between two neighbouring cubes of different levels.I have also seen that cutting cubes into 6 tetras as shown below is common, but again I have found nothing explaining how to handle cubes of different levels:http://www.ics.uci.edu/~eppstein/projects/tetra/sixcube.gifI would appreciate it if someone could explain how Octree cubes should be cut into tetras or perhaps refer me to a paper/presentation about this subject. 
Octree cubes to tetrahedrons
numerics;finite element;mesh generation
I found the following papers which describes clearly how to do a BCC mesh, and how to handle the hanging nodes:Adaptive and Quality Tetrahedral Mesh GenerationIsosurface StuffingThe following presentation, in addition to describing BCC, also describes Face Centred Cubic (FCC): Unbound Optimal Tetrahedral Mesh