Javascript d3-通过弧边计算元素的位置和旋转

Javascript d3-通过弧边计算元素的位置和旋转,javascript,d3.js,Javascript,D3.js,我开始玩d3,我想达到这个效果: 我做过圆弧的事情,但我不知道如何计算三角形的位置和旋转?这是我当前的代码: 您需要相应地设置变换属性: .attr("transform", "translate(" + Math.cos(convertValue(.127)-Math.PI/2)*70 + "," + Math.sin(convertValue(.127)-Math.PI/2)*70 + ")" + "rotate(" + ((convertV

我开始玩d3,我想达到这个效果:

我做过圆弧的事情,但我不知道如何计算三角形的位置和旋转?这是我当前的代码:

您需要相应地设置变换属性:

 .attr("transform",
    "translate(" + Math.cos(convertValue(.127)-Math.PI/2)*70 + "," +
          Math.sin(convertValue(.127)-Math.PI/2)*70 + ")" +
          "rotate(" + ((convertValue(.127)*180/Math.PI)+180) + ")")
如果你把三角形画成另一个方向,它会变得容易一些。更新了JSFIDLE。

您需要相应地设置转换属性:

 .attr("transform",
    "translate(" + Math.cos(convertValue(.127)-Math.PI/2)*70 + "," +
          Math.sin(convertValue(.127)-Math.PI/2)*70 + ")" +
          "rotate(" + ((convertValue(.127)*180/Math.PI)+180) + ")")

如果你把三角形画成另一个方向,它会变得容易一些。更新了JSFIDLE。

如果您在代码中以相反的方式绘制三角形,则会变得更容易一些,提示是指向上的。在我修改过的JSFIDLE中,它是指向下的,没有任何旋转。你能帮我转换一下吗?如何在圆弧路径上实现运动?现在我的箭从一个地方跳到另一个地方:或者我应该问另一个问题吗?我的弧有吐温。但是如何将这个二者连接到这个奇特的箭头上呢?如果你在代码中画一个相反的三角形,它会变得更容易一些,提示是指向上的。在我修改过的JSFIDLE中,它是指向下的,没有任何旋转。你能帮我转换一下吗?如何在圆弧路径上实现运动?现在我的箭从一个地方跳到另一个地方:或者我应该问另一个问题吗?我的弧有吐温。但是如何把这两个人和这支奇特的箭联系起来呢?