This is an introductory textbook for undergraduates studying mathematics, engineering or computer science, explaining how differential and computational geometry are used to explain the mathematics of curves and surfaces. It assumes only a basic knowledge of vector and matrix algebra, and is filled with exercises, solutions and worked examples. The text explains the often complex mathematics which lies behind computer graphics or computer aided design.