Создание карты Stati c с наложением BIG - PullRequest
0 голосов
/ 16 января 2020

Я использую API MapBox для создания карты c с наложением. Для оверлея я передаю geo json в своем URL-адресе запроса:

FeatureCollection featureCollection = null;
try {
     InputStream inputStream = this.getAssets().open("track_points.geojson");
     String stringJson = convertStreamToString(inputStream);
     featureCollection = FeatureCollection.fromJson(stringJson);
} catch (Exception exception) {
     Timber.e("Exception Loading GeoJSON: %s" , exception.toString());
}

MapboxStaticMap mapboxStaticMap = MapboxStaticMap.builder()
                .accessToken(myToken)
                .width(700)
                .height(500)
                .retina(true)
                .cameraAuto(true)
                .geoJson(featureCollection)
                .build();

Он отлично работает ... НО есть ограничение:

Наложения не могут состоять из более 100 функций. Максимальная длина наложения составляет 2083 символа.

, как описано в документации: https://docs.mapbox.com/android/java/overview/static-image/

Я пытался уменьшить geo json с помощью алгоритмов, кратных нескольким, но это все еще для большого. Я говорю о файле geo json из 1717709 символов. Лучшее, что я сделал, это минимизировал его до 37 133, но с небольшой потерей аккреции. Невозможно уменьшить его до 2083 символов ...

И я знаю, что это возможно, потому что это сделал Страва. Посмотрите на эту активность стравы: enter image description here Трек (geo json), который я пытаюсь показать, точно такой же, я сделал отрывок из Стравы. Как вы можете видеть в левом нижнем углу, это написано «MapBox OpenStreetMap». И это карта stati c, потому что я не могу играть с ней

У кого-то есть идея? Спасибо за чтение:)

Извините за мой английский sh, Томас

...