Есть ли способ конвертировать изображение SVG в набор координат - PullRequest
0 голосов
/ 20 апреля 2019

Я пытаюсь перенести игру на Matter.js, и большая проблема, с которой я столкнулся, - это вставка старого SVG-изображения большого пути в игру.

Я бы просто полностью переделал это вручную, но пути такие большие, что это заняло бы часы.Я думаю, было бы намного проще, если бы я мог преобразовать изображение SVG в объект SVG в Matter.js.

Так есть ли простой способ сделать это?

1 Ответ

0 голосов
/ 30 апреля 2019

Как вариант, вы можете проанализировать SVG в массиве координат, используя что-то вроде svg path polyfill .

Ниже приведен мой фрагмент кода. Если вы используете DOM, вы получите что-то более точное.

fetchResource(svg1File)
        .then((svgString) => this.toXML(svgString))
        .then(xml => this.extractPaths(xml))
        .then(svgPaths => this.toCoords(svgPaths))
        .then(vertexSets => {
           //then for each vertex set
           //Matter.Bodies.fromVertices(width / 2, (i + 1) * 100, vertexSets[i], {
        })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...