从具有任意拓扑的线集创建偏移线轮廓

Create offset line contours from a line set with arbitrary topology

示例图片:

给定一组连接线(见示例图像中的粗黑线),如何生成一组形成环的偏移轮廓线(见细蓝线)?所有线的偏移量都是恒定的,等高线始终与其关联的线平行。

输入线拓扑是任意的:即它可能包含循环。请注意,轮廓循环的数量等于循环数加一。仅处理树拓扑(无循环)的解决方案也可能令人感兴趣。

有没有解决这个问题的论文或相关算法?

基本方法是构造角度的等分线(在右侧)并在其上绘制一个长度,使其达到所需的偏移量(一点三角函数)。并以 link 它们在循环中的遍历顺序。可以在免费端点使用不同的上限规则。

为此,您需要将几何表示为平面图(例如四边形)。也许在这里看看:https://mathoverflow.net/q/23811.

无论如何,这种方法不会避免可能出现的重叠,也不会避免自相交偏移。这些是需要全局方法的更困难的问题,类似于多边形并集问题。