Another one is
_Hydrostatics . Obviously intended for ship’s hulls. You need to specify a waterline elevation, and it will calculate the displacement (among other specifics) of any single surface or polysurface as long as the part below the waterline is closed. If it is not closed, you will still get waterline length, beam etc., but displacement will be missing. It will not start to sink though… . Of course displacement will only equal inside volume as long as your surface is single, i.e. if you have your tumbler designed such that the inside and outside of the glass are one and the same polysurface, it will give a false result.