考虑将红线作为点序列给出
我正在寻找一种算法来创建粗黑形状的轮廓(也作为一系列点),以便它们整齐有序。轮廓也应遵守与自身的最小距离。
我可以使用什么算法来实现这一点?
最佳答案
您将需要两种类型的 offsetting algorithms :
- 在两个方向上偏移曲线以产生轨迹
- 向内偏移闭合曲线以生成一个或多个更小的闭合多边形。
令 r 为到红线的距离,b 为黑线/轨道之间所需的壁厚。
- 使用算法 1 将红线偏移 r。这可能会产生一个自身重叠的轨迹,即具有“类似 Blob ”的区域。
- 使用算法 2 向内偏移红线。使用二进制搜索找到形状一分为二或消失的距离 d。如果 d > b,则向内偏移 d - b 以产生第二个区域。否则算法失败。
- 从第一个区域中减去第二个区域。
关于algorithm - 轮廓矢量形状算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5372494/