finish accesible surface function. Cleaned efficient, works with mesh of low resolution, thus efficiency is not an issue. fixes #1. still need to implement test