We wrote a C++ program and a MATLAB script to create and display vertical cellular decompositions of a polygonal room and obstacles. You can click arbitrary points inside the room to find paths between the points.
One thing not mentioned in the video is that the input polygons need to be in general position. Specifically, this means that no two points can have the same x-coordinate. This limitation could be prevented by randomly randomly changing the x-coordinate positions of the input and reversing the changes once the program is done, but that solution is somewhat messy and has its own set of problems.
very nice! I've just made something similar in C#
BlaiseTaylor 1 year ago