Uniform subdivision algorithms for curves and surfaces