Surface-based mapping