2017-07-26 62 views
0

我使用Matter JS,我试图将自己的SVG形状呈现给画布。尽管我仍然遇到错误,但仍然遵循其文档。这是一个工作演示我在网上找到:Matter JS - 无法呈现SVG路径

https://jsfiddle.net/gf3jLvjt/4/

你可以看到,路径正确地呈现在画布上。当我尝试更换示例中的<path />元素或整个<svg>时,控制台中出现错误。这里是我用我自己的SVG但得到错误的例子:

https://jsfiddle.net/gf3jLvjt/6/

我最好的猜测是,这是由我节省了SVG格式引起的,但我不确定如果a)这是正确的或b)我可以改变什么设置来解决这个问题。

欢呼

回答

0

我是新来Matter.js但它看起来像在你的代码的问题是,你没有使用正确Bodies.fromVertices

let body = Bodies.fromVertices(100 * i + 300, 200 + i * 30, vertexSets, { 
    isStatic: false, 
}, true, 0.01, 30); 

该文档要求向量而不是顶点。

Matter.Bodies.fromVertices(x, y, [[vector]], [options], [flagInternal=false], [removeCollinear=0.01], [minimumArea=10])]

http://brm.io/matter-js/docs/classes/Bodies.html

这导致bodylet body = ...)是不确定的。

不幸的是,我还不确定如何解决你的代码。