3D Printing for high fidelity prototyping