The task of modeling a tongue fell on Joshuah. He designed the tongue using Rhino. Sectional cuts of a tongue were eyeballed in 2D from a sketch. These sectional contours were then used to define a 3D form using Rhino's loft command (which takes some finessing). The more sections the better the outcome. Once the form had been generated, the dimensions could be fine tuned; first to the true scale of a tongue, and then stretched to approximate different tongue shapes (pointed, normal, flat). Eventually the normal tongue was selected to be milled and cast.
Creating the mold was fairly straight forward. The tongue form was rotated so that the two-part mold would cut the tongue axially, minimizing hangover overhang in each half, and creating shallow molds which would later help with silicon compositing. The tongue was then boolean differenced out of the two blocks to form the negative mold. As the tongue geometry was fairly complex, this didn't work on the first try. Rhino is notorious for boolean fails. If geometry is ill-defined, or misaligned by any non-zero value, you're screwed. There are plenty of work-arounds, and sometimes even rotating the geometry by 90 degrees in any direction can solve the issue. In this case Rhino's explode command (typing this command can also be cathartic when dealing with a failed boolean for too long) was able to isolate the surface of each of the tongue halves, around which the wax cube could be reconstructed with simple surfaces. All surfaces were then combined using the join command to create a solid - a closed geometry essential for both boolean commands and for milling.
Milling went smoothly, and the results can be seen below.