SVG路径中“M”,“c”和“z”的含义是什么?

时间:2016-09-18 08:10:33

标签: svg paperjs pathelement

http://paperjs.org/examples/

我正在尝试使用Chain创建一个自定义路径,我看到Tadpoles有一个预定义的心形路径,所以我试图复制它,但我不理解它的一些部分。

  

var heartPath = new Path('M514.69629,624.70313c-7.10205,-27.02441 -17.2373,-52.39453 -30.40576,-76.10059c-13.17383,-23.70703 -38.65137,-60.52246 -76.44434,-110.45801c-27.71631 ,-36.64355 -44.78174,-59.89355 -51.19189,-69.74414c-10.5376,-16.02979 -18.15527,-30.74951 -22.84717,-44.14893c-4.69727,-13.39893 -7.04297,-26.97021 -7.04297,-40.71289c0,-25.42432 8.47119 ,-46.72559 25.42383,-63.90381c16.94775,-17.17871 37.90527,-25.76758 62.87354,-25.76758c25.19287,0 47.06885,8.93262 65.62158,26.79834c13.96826,13.28662 25.30615,33.10059 34.01318,59.4375c7.55859,-25.88037 18.20898 ,-45.57666 31.95215,-59.09424c19.00879,-18.32178 40.99707,-27.48535 65.96484,-27.48535c24.7373,0 45.69531,8.53564 62.87305,25.5957c17.17871,17.06592 25.76855,37.39551 25.76855,60.98389c0,20.61377 -5.04102,42.08691 -15.11719,64.41895c-10.08203,22.33203 -29.54687,51.59521 -58.40723,87.78271c-37.56738,47.41211 -64.93457,86.35352 -82.11328,116.8125c-13.51758,24.0498 -23.82422,49.24902 -30.9209,75.58594z');

我不明白路径开头的 M 是什么意思,或某些值中的 c z 在路径的尽头。我试图在他们的文档或谷歌中找到有关它的信息,但我找不到我想要的东西,因为单个字母使搜索变得困难。

我试图在开始时移除 M 并且蝌蚪停止移动,所以我认为M可能意味着“移动”?删除 c 会改变心脏的形状,但删除 z 似乎不会改变任何内容。

2 个答案:

答案 0 :(得分:3)

M:移至

上面描述的命令“Move To”或M。它需要两个参数,一个坐标'x'和坐标'y'移动到。如果光标已经在页面的某个位置,则不会绘制任何线来连接这两个位置。 “移动到”命令出现在路径的开头,用于指定绘图应从哪里开始

z:关闭路径

此命令从当前位置绘制一条直线,返回到路径的第一个点。它通常位于路径节点的末尾,但并非总是如此。大写和小写命令之间没有区别。

c:Bezier Curves

三次曲线C是稍微复杂的曲线。 Cubic Beziers为每个点接受两个控制点。因此,要创建三次贝塞尔曲线,需要指定三组坐标。

来源:https://developer.mozilla.org/en/docs/Web/SVG/Tutorial/Paths

答案 1 :(得分:-3)

您要调用的构造函数是this

Path(, pathData)

其中pathData被描述为:

  

描述此路径几何的SVG路径数据

你应该阅读的文件是SVG的文件 正如@GerardoFurtado在评论中提到的,here是一个可能对您感兴趣的阅读。