what's the difference betwwen rect() and geometry()?