The Pythagorean cup is a drinking vessel designed to drain its contents via siphon action if it is overfilled. If the cup is partially filled, it holds liquid which can be drunk in the usual fashion. If it is overfilled it drains the entire contents of the cup into the drinker's lap. This object was classically used as a warning of the dangers of gluttony and over-consumption.
Unfortunately, Pythagorean cups feature a distinctive central stem to house the siphon tube which drains the cup - see for instance http://www.thingiverse.com/thing:27533. This gives away the surprise and spoils some of the fun! Fortunately, modern 3D printing allows us to build a more devious cup, with a hidden siphon.
This object is a Pythagorean cup with the siphon tube concealed in the drinking vessel walls. The siphon tube traverses more than 300 degrees of the circumference of the rim, so a moderately filled cup will not drain when it is tilted. This object has been printed and tested, and is 100% functional! It makes a great brainteaser or science demonstration for students.
This object was originally printed on a Makerbot Replicator 2:
Material: Makerbot True Yellow PLA
Layer Thickness: 0.2 mm
Temp: 240 C
Infill Type: Hex
Infill Density: 20%
All other settings remained at the Makerware "standard" profile default values. The cup should be oriented in a standing fashion for printing.
For other printers and materials, the chief concern is producing a watertight or nearly watertight surface on the inside of the cup and siphon tube. If you have trouble achieving this, decrease the layer thickness to 0.1mm and bump up the number of shells. If this does not do the trick, tune your extruder for fatter extrusions.
The STL file produces a ~8 cm tall cup at native scale. The STL mesh is dense enough that it should scale up or down very nicely.
I have included the original Solidworks file used to produce the STL in case anyone would like to improve this design. If another file format is requested, please leave a comment.