Grid generation, finite elements, and geometric design