我正在构建一个道路编辑器,可以在其中将预定义的路段拖动到一起,然后将它们组合到连接的道路上。这些线段之一是右曲线。
该曲线绘制为SVG(使用D3弧路径功能),并具有两个手柄以直接在SVG内更改半径和长度(黑色小圆圈更改长度,黑色小方形更改半径)。我在手柄上使用了d3拖动处理程序。
要计算新的圆心角,请执行以下操作:
只有在圆弧从PI / 2开始时才有效,如图所示。如果我添加具有任意起始角度的其他弧(请参见下图,红色弧),则我的解决方案将无法工作。
我正在寻找一种通用的解决方案,因此无论其起始角度如何,它都能适用于任何弧形。