added uniformSampleSurface() to shapes