added calculation of visible area