Modeling for 3d Printing