该代码的最终目标是确保客户定义的形状实际上可以由我们的......呃机器加工.要做到这一点,我们将指定的形状向内偏移到钻头的半径,然后向外向外偏移相同的量,从而将任何太小的部分弄圆,以实际适合钻头.对于多边形偏移,我们使用的是Angus Johnson的Clipper库,版本5.1.6(c ++).
但是从图中可以看出,这导致了一些意想不到的形状.在图片中,我使用-radius偏移原始形状(绿色,大部分被后面的绘图覆盖),ClipperLib::OffsetPolygon
以获得黄色形状,然后偏移半径以获得红色形状.
理论上,对于链接中显示的情况,这应该导致红色形状完全匹配绿色形状.
如果出现上述结果可能会出现什么问题?