An algorithm is described for constructing C l co-convexity preserving interpolants to arbitrary sequences of points and possible tangents. The interpolants can be chosen to consist of cubic and parabolic pieces. The main tool is the numerical computation of C 2 convexity preserving interpolants to convex data arising from the minimization of certain functionals.