Этикетка Declutter Круги с declut - PullRequest
1 голос
/ 01 мая 2020

Я использую openLayers для отображения тысяч кругов на карте. Однако при отображении всех точек это становится немного ошеломляющим для глаз. Чтобы помочь с этим, я добавил опцию declutter в векторный слой:

const allPointLayer = new VectorLayer({
            source: pointSource,
            visibility: true,
            style: scanLocationStyle,
            extent: this.extent,
            declutter: true,
        });

Это было несколько полезно, так как это могло бы динамически изменять отображаемые круги, которые были отрисованы.

Но теперь я хотел бы хотел бы добавить текст в круги, чтобы показать, сколько кругов "суммируется"

Я обнаружил, что в модуле ol / render / canvas есть группы DeclutterG http://webmail.rgurs.org/openlayers/apidoc/module-ol_render_canvas.html# ~ DeclutterGroup , но нет очевидного способа отредактировать текст для этой группы или найти размер массива. Вот другие фрагменты кода:

map = new Map({
            target: "map",
            view: new View({
                center: getCenter(this.extent),
                zoom: 15,
            }),
        });
const pointSource = new VectorSource({

            features: Collection,
            format: new GeoJSON(),
            style: scanLocationStyle,

        });
const style = new Style({
            image: circleStyle,
        });
        const allPointLayer = new VectorLayer({
            source: pointSource,
            visibility: true,
            style: style,
            extent: this.extent,
            declutter: true,
        });

Я добавил несколько изображений, чтобы помочь.

Спасибо за помощь! Разваленные круги

Не загроможденные круги

...