Карта показана без построек

Я ищу рендеринг экструзии 3D-зданий в приложении React-Native с использованием github / mapbox / react-native-mapbox-gl

Я создал собственную карту в MapBox Studio, добавил следующую строку в style.json и загрузил карту в Mapbox Studio.

{
    "id": "buildings",
    "type": "fill-extrusion",
    "source": "composite",
    "source-layer": "building",
    "minzoom": 15,
    "filter": [
        "all",
        [
            "==",
            "extrude",
            "true"
        ],
        [
            ">",
            "height",
            1
        ]
    ],
    "paint": {
        "fill-extrusion-color": "hsl(206, 7%, 61%)",
        "fill-extrusion-height": {
            "type": "identity",
            "property": "height"
        },
        "fill-extrusion-base": {
            "type": "identity",
            "property": "min_height"
        },
        "fill-extrusion-opacity": 1,
        "fill-extrusion-translate-anchor": "viewport"
    }
}

В mapbox-studio здания отображаются, как и ожидалось, но когда я возвращаюсь в свое приложение React-Native, карта отображается, но без зданий.

Вы, ребята, знаете, как отображать здания в 3D с помощью response-native-mapbox-gl sdk?

Спасибо.

Снимок экрана студии mapbox Скриншот карты React-Native


person Maxence Machu    schedule 24.07.2017    source источник
comment
3D-здания поддерживаются только в последних версиях iOS и Android. Вам нужно будет обновить версию привязок, которые вы используете, если у вас не самая последняя версия.   -  person mollymerp    schedule 24.07.2017
comment
@mollymerp Привет, спасибо за anwser, все кажется актуальным, я использую response-native-mapbox-gl v.5.2.0 и использую здания данных из Mapbox Streets V7 в MapBox Studio, у вас есть подсказка?   -  person Maxence Machu    schedule 25.07.2017
comment
у тебя есть решение? Я тоже ищу то же самое   -  person Khurshid Ansari    schedule 12.04.2020
comment
@KhurshidAnsari, не могли бы вы попробовать мой ответ и сказать, что он решил вашу проблему?   -  person Maxence Machu    schedule 14.04.2020


Ответы (1)


Исправление совместимости для этой проблемы:

  1. Добавьте новый слой для своей пользовательской карты в Mapbox Studio

    • Source: Mapbox Streets V7 (building)
    • Тип: экструзия с заполнением
  2. Изменить стиль. Нажмите Высота, а затем - Изменить JSON (внизу панели).

Редактировать информацию JSON

Затем вставьте следующий код:

{
  "type": "identity",
  "property": "height"
}
  1. Вставьте и опубликуйте свой стиль и используйте его как стиль MapBox для своей карты в React-Native.
person Maxence Machu    schedule 14.04.2020
comment
У меня есть решение для реакции на родной. Фактическое реагирование на собственное выражение mapbox принимает выражение по-другому, в отличие от mapbox gl js. Ваш код предназначен для mapbox gl js. - person Khurshid Ansari; 14.04.2020