Virtual Walls for Lewis
Lewis is a robot in need of a way of recognizing virtual walls. Lewis takes 360 laser readings over a span of 180 degress. Each laser reading contains the distance from the robot to an intercepted object. He uses that information to avoid obstacles while moving in space. The virtual walls module takes in two coordinate points in the xy plane used to define a simple virtual wall. Using C++, mathematical equations are performed to find the intersection, if any, of the robot's laser and the virtual wall. If there is an intersection, the laser's distance value is altered to accomodate the distance to the virtual wall. The procedure is repeated for every one of his lasers. This module is needed in order for Lewis to be restricted from entering any forbidden spaces.