moved getSurfacePosition