MapBox: Как мне создать FeatureCollection программно? - PullRequest
0 голосов
/ 26 сентября 2019

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

Я застрял с этой проблемой раньше и в итоге использовал какое-то решение с утиной лентой, но оно победилоне работает сейчас.Кто-нибудь может пролить свет на это, пожалуйста?

1 Ответ

0 голосов
/ 30 сентября 2019

Вы можете создать FeatureCollection, используя существующий объект Feature или массив / список Feature объектов.Это можно превратить в метод, который вы можете использовать для генерации нового FeatureCollection всякий раз, когда вы получаете новый набор данных.

Учитывая предоставленную вами информацию, я собираюсь сделать некоторые предположения здесь- Я надеюсь, что следующий фрагмент кода поможет вам в правильном направлении:

public FeatureCollection getFeatureCollectionFromCoordinateList(List<Coordinate> coords) {
    List<Feature> pointsList = new ArrayList<>();

    for (Coordinate coord : coords) {
        Feature feature = Feature.fromGeometry(Point.fromLngLat(coord.getLongitude(), coord.getLatitude()));
        pointsList.add(feature);
    }

    return FeatureCollection.fromFeatures(pointsList);
}

В приведенном выше примере объект, который я использовал для представления данных с сервера, называется Coordinate, который я 'мы дали getLatitude() и getLongitude() метод для демонстрации использования широтной / продольной информации для создания Mapbox FeatureCollection из List из Feature объектов , которые созданы с использованием Feature.fromGeometry() метод , передавая Point.fromLngLat().

Обратите внимание, что это может быть не лучшим способом добиться того, чего вы пытаетесь достичь здесь.Тем не менее, я надеюсь, что это иллюстрирует другой способ, которым вы можете создать экземпляр FeatureCollection без чтения в JSON источнике данных.

...