После того, как слой становится видимым, map.getCanvas () не содержит слой сразу. MapBox-ГЛ-JS - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь установить видимое свойство макета некоторых слоев на «видимый», используя метод setLayoutProperty в mapbox-gl-js.

this.toggleCanvasMarkersVisibility(true); // This code sets visibility to visible
// Create a snapshot of the map as follows:
this.map.getCanvas().toBlob(function (blob) {
                canvasContext.strokeStyle = '#CCCCCC';
                canvasContext.strokeRect(leftPosition, topPosition, width, height);
                var img = new Image();
                img.setAttribute("crossOrigin", "anonymous");
                var srcURL = URL.createObjectURL(blob);
                img.onload = function () {
                    canvasContext.drawImage(img, leftPosition, topPosition, width, height);
// Other operations
});

Слои, которые я только что установил как «видимые», еще не видны на карте. Как определить, являются ли они видимыми, кроме свойства visible, поскольку для свойства visible установлено значение visible? В результате PNG не состоит из маркеров. Любая помощь приветствуется!

...