changed class structure for FOV and improved algorithm