Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Javascript/Jquery中如何获取svg中经过一定距离的直线坐标_Javascript_Jquery_Svg - Fatal编程技术网

在Javascript/Jquery中如何获取svg中经过一定距离的直线坐标

在Javascript/Jquery中如何获取svg中经过一定距离的直线坐标,javascript,jquery,svg,Javascript,Jquery,Svg,我在SO和google上搜索了很多,但找不到解决我具体问题的方法 我用svg中的三条线创建了一个三角形。我没有问题创建它,但现在我还想显示双方之间的角度弧。在两条线合并的顶点上方仅几英寸。这是我用来创建角度的路径,有点像使用路径的圆弧 <path d="M324,141 A50,50 0 0,1 336,164" stroke="#ef00ff" stroke-width="3" fill="none"></path> 顶点有x和y。 我使用的三条线的名称分别为li

我在SO和google上搜索了很多,但找不到解决我具体问题的方法

我用svg中的三条线创建了一个三角形。我没有问题创建它,但现在我还想显示双方之间的角度弧。在两条线合并的顶点上方仅几英寸。这是我用来创建角度的路径,有点像使用路径的圆弧

<path d="M324,141 A50,50 0 0,1 336,164" stroke="#ef00ff" stroke-width="3" fill="none"></path>

顶点有x和y。 我使用的三条线的名称分别为line1、line2和line3 正在使用鼠标移动和向下事件进行的测试。所以它是动态的,这就是为什么我必须在两条直线中的任何一条直线上,得到距离顶点几英寸的坐标,这样我就可以把它们放在我的弧路径上

如果有人想知道三角形的html,请告诉我。只有三条线互相连接

我没有那么多经验,但仍在学习。
谢谢。

对于一个顶点,我会这样做[1]。您需要循环
pts
数组,并对每个点执行相同的操作

请阅读我代码中的注释

//粉红色圆弧的半径
设r=15;
//绘制三角形的点
设pts=[
[2.75,-45],[38.97,22.5],[-38.97,22.5]
]
//计算第一条线的角度
设dx1=pts[0][0]-pts[1][0];
设dy1=pts[0][1]-pts[1][1];
设a1=数学常数2(dy1,dx1);
//计算圆弧的移动到点
设p1={
x:pts[1][0]+r*Math.cos(a1),
y:pts[1][1]+r*Math.sin(a1)
}
//计算第二条直线的角度
设dx2=pts[2][0]-pts[1][0];
设dy2=pts[2][1]-pts[1][1];
设a2=数学参数atan2(dy2,dx2)
//计算圆弧的端点
设p2={
x:pts[1][0]+r*Math.cos(a2),
y:pts[1][1]+r*Math.sin(a2)
}
//为圆弧构建d属性
设d=`M${p1.x},${p1.y}A${r},${r}0${p2.x},${p2.y}`
//设置圆弧的d属性
arc.setAttributeNS(空,“d”,d)
svg{border:solid;}


你能提供一个你想要实现的绘图示例吗?@perellorodrigo请看这个图。我只想要一个那样的圆弧,虽然我用直线来创建三角形,但我认为在我的情况下,你的解决方案应该稍加修改。我会尽力让你知道的。非常感谢。我接受它作为答案。只是想让你们知道,我刚刚试过,第一枪就成功了。非常感谢。