Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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 如何转换SVG';c';曲线到三次贝塞尔曲线列表?_Javascript_Svg_Bezier - Fatal编程技术网

Javascript 如何转换SVG';c';曲线到三次贝塞尔曲线列表?

Javascript 如何转换SVG';c';曲线到三次贝塞尔曲线列表?,javascript,svg,bezier,Javascript,Svg,Bezier,我有一个路径如下: d=“m 0,0 38.913455.481 c 7.122,83.37 6.816164.779 13.005236.077 18.924218.078 232.099308.663 268.399493.918 16.874,86.119-37.253229.874-42.144323.022-7.527143.381 69.579142.669 104.526244.648” 我不太明白它是如何表现出来的 我猜它被转换为多条简单的三次贝塞尔曲线列表,但是如何转换呢?每次

我有一个路径如下:

d=“m 0,0 38.913455.481 c 7.122,83.37 6.816164.779 13.005236.077 18.924218.078 232.099308.663 268.399493.918 16.874,86.119-37.253229.874-42.144323.022-7.527143.381 69.579142.669 104.526244.648”

我不太明白它是如何表现出来的

我猜它被转换为多条简单的三次贝塞尔曲线列表,但是如何转换呢?每次我应该以什么作为控制点、起点、终点

这里的坐标到底是什么?和什么有关

我对SVG图形完全陌生,(在我看来)w3参考并没有提供足够的细节


如果这有助于我的目标,那就是在画布上逐点用javascript表示这条曲线。

您似乎有,而不是二次曲线。规范文本解释了控制点是什么以及它们相对于什么(通常是上一次移动/直线/曲线的终点)

这里举例来说,
c
之后的树点是control1,control2,end?第一个起点将是
m
之后的第二点?对第一个问题是的,不确定你在第二个问题中所说的“第二点”是什么意思。可以肯定的是,如果我理解清楚
c1,12,23,34,45,56,6
将变成
c1,12,23,3C7,78,89,9
?是的。为什么不创建一个SVG文件并尝试一下呢?阅读规范有什么困难?非常清楚:嗯,不是真的。一开始我认为这意味着这是一条12点(12度)的贝塞尔曲线,在我意识到应该将它分割成多条三次曲线之前,我实现了这条曲线。所以我的观点是,正如我在评论中提到的,这一章写得很糟糕,缺乏重要的细节。我同意,当你用三个以上的点来理解C或C时,规范并不清楚它的含义。