Pixi.js如何在Container中容纳内容

时间:2019-06-03 20:12:51

标签: snap.svg paperjs pixi.js

我是PixiJS的新手,我想知道是否可以渲染来自GeoJSON文件的多边形,以便所有内容都适合该PIXI容器。 我需要以某种方式缩小坐标,因为我只能看到一半的多边形。而且我想与多边形互动,例如选择多边形,分配新的填充颜色等。

目前,我正在使用SVG进行此操作,但是移动设备的性能对于6000多个多边形来说是可怕的。

这是我到目前为止尝试过的:

    var app = new PIXI.Application({
            width: window.innerWidth,
            height: window.innerHeight,
            backgroundColor: 0x2c3e50
        });

var totalShapes = feat.features.length;
            for (var i = 1; i <= totalShapes - 1; i++) {
                var shape = feat.features[i];
                var vertices = shape.geometry.coordinates;

                var arrCoordinates = [];
                for (var j = 1; j <= vertices[0].length - 1; j++) {
                    var coordinate = vertices[0][j];

                    arrCoordinates.push(coordinate[0]);
                    arrCoordinates.push(coordinate[1]);
                }

                var g = new PIXI.Graphics();
                g.beginFill(1);
                g.lineColor = 0xffffff;
                g.lineStyle(1, 0xffffff);
                g.drawPolygon(
                    arrCoordinates
                );

                g.endFill();


                app.stage.addChild(g);
            }

我从多边形的每个顶点获取坐标,并将其传递给drawPolygon函数。

Pixi.js是该项目的正确库吗?还是应该使用Paper.js或snap.svg?有什么建议吗?

0 个答案:

没有答案