Math 点的平行偏移(曲线/坡度)

Math 点的平行偏移(曲线/坡度),math,opengl,geometry,Math,Opengl,Geometry,我有一个点数组(CGPoints),它形成一条曲线,实际上不是一条真正的曲线,而是短线段。我需要那条曲线的平行偏移量。如果坡度较陡,向下移动曲线显然会导致线段变薄。有什么想法吗?您需要计算每段的长度,然后沿法线平移这些点 对于多段线-顶点处的法线是其跨接的两条线段法线的某种组合((n1+n2)/2?),因此在“偏移”曲线计算过程中可能需要考虑这一点 事实上,你所需要的只是正常的,如图所示 希望这有帮助。您需要计算每段的长度,然后沿法线平移点 对于多段线-顶点处的法线是其跨接的两条线段法线的某种组

我有一个点数组(CGPoints),它形成一条曲线,实际上不是一条真正的曲线,而是短线段。我需要那条曲线的平行偏移量。如果坡度较陡,向下移动曲线显然会导致线段变薄。有什么想法吗?

您需要计算每段的长度,然后沿法线平移这些点

对于多段线-顶点处的法线是其跨接的两条线段法线的某种组合((n1+n2)/2?),因此在“偏移”曲线计算过程中可能需要考虑这一点

事实上,你所需要的只是正常的,如图所示


希望这有帮助。

您需要计算每段的长度,然后沿法线平移点

对于多段线-顶点处的法线是其跨接的两条线段法线的某种组合((n1+n2)/2?),因此在“偏移”曲线计算过程中可能需要考虑这一点

事实上,你所需要的只是正常的,如图所示


希望这有帮助。

好的,我明白了,但我想到的第一个想法是,我需要额外的边缘点,我不知道如何计算它们。假设我有一个V-如果我计算切线并在那个方向上添加点,我会在V的底部得到一条水平线。我很难解释。为什么你需要额外的点?如果可能的话,请用图表解释。这就是我上面所说的“顶点的法线是相邻线段法线的组合”。在绿点的情况下-平均两个线段法线应将中心点正确移动到绿点目标点。好的,我明白了,但我想到的第一个想法是,我需要额外的边缘点,我不知道如何计算它们。假设我有一个V-如果我计算切线并在那个方向上添加点,我会在V的底部得到一条水平线。我很难解释。为什么你需要额外的点?如果可能的话,请用图表解释。这就是我上面所说的“顶点的法线是相邻线段法线的组合”。在绿点的情况下-平均两段法线应将中心点正确移动到绿点目标点。看