Dropcutter oddities
A while ago I decided to implement the drop-cutter algorithm as part of an ongoing software project. I found very interesting Anders Wallin website and his Opencamlib software. But the project I was working on was java-based. Once I had a working implementation I realized that while most of the output made sense, there were a few odds points that were clearly wrong. In a nutshell, the idea of drop-cutter algorithm is that it works by simulating a tool is being dropped till it touches the 3D model whose tool-path we are trying to obtain. Using such a tool-path on a CNC machine equipped with the same tool, will render a geometrically accurate copy of the model. The algorithm checks, for each XY tool location, which is the highest Z-axis value that causes a contact point between the tool tip and the object's 3D model. We use a triangular mesh for our models (STL files). Three types of checks are performed: Whether the tool tip touches a triangle's vertex. Whether the t