Как получить все видимые точки в границах вида карты в Azure Карты - PullRequest
0 голосов
/ 17 апреля 2020

Я искал и пытался использовать образец точки выбора в примере многоугольника, однако я не рисую новый многоугольник, а скорее уже на карте, чтобы использовать его в качестве границы выделения. У меня также есть много точек на карте, но некоторые из них не видны или, возможно, скрыты из-за коэффициента масштабирования, поэтому я хочу игнорировать все эти точки, даже если они находятся в многоугольнике выделения. Возможно ли это?

// searchArea is populated by click method
    function searchPolygon(searchArea) {
        var visiblePointsOnly = ???;
        var poly = searchArea.toJson(); // This is failing saying toJson not a function?

        // Calculate all points that are within the polygon area.
        var ptsWithin = turf.pointsWithinPolygon(visiblePointsOnly, poly);

        return ptsWithin;
    }

TIA! Рик ...

1 Ответ

0 голосов
/ 17 апреля 2020

Мне удалось выяснить это ... может быть, не лучшим, но он делает то, что мне нужно, чтобы сделать!

function searchPolygon(searchArea) {
    // Get points visible on map
    var points = pointLayer.getSource();

    if(points){
        var poly = searchArea.shapes[0].toJson();
        points = points.shapes[0].toJson();

        // Calculate all points that are within the polygon area.
        var ptsWithin = turf.pointsWithinPolygon(points, poly);
    }

    return ptsWithin;
}

Надеюсь, это поможет другим, нуждающимся в той же функциональности, ура! Рик ...

...