This is some interesting work! I was musing about another algorithm to achieve the same effect, as I was reading:
* First render the scene in 3D, from the viewer's position, using a perspective transformation with the right field-of-view to match the "bounding angle".
* Save the resulting Z-buffer into a texture.
* When rendering the 2D, top-down scene, you can consult the Z-buffer (now a texture) to see whether that pixel should be highlighted or not.
I think this is a technique that's already used, but almost complementarily, to calculate shadows from dynamic lights.