Перейти к основному содержимому

Деревья на карте

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

Внешний вид деревьев

Также вы можете настроить отображение деревьев в зависимости от графического режима: см. подробнее в инструкции 3D-модели.

Настройка стилевых слоёв​

  1. Откройте Редактор стилей.

  2. Добавьте новый слой и выберите тип 3D-модель.

  3. На вкладке Данные раскройте список Деревья и выберите нужные типы растительности.

    Данные деревьев

  4. Расположите стилевые слои с деревьями в отдельной группе, после площадных и линейных объектов, но до слоёв с POI (иконками, обозначающими объекты на карте): деревья носят декоративный характер и не должны загораживать собой POI.

    Порядок слоев с деревьями в стилях

Текущий вид слоя с лиственными деревьями:

Лиственные деревья

Рандомизация​

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

Выражение random​

Чтобы добавить рандомизацию, задайте стилевые выражения на вкладке Стиль.

Выражение random имеет два аргумента, которые задают диапазон, в котором будет генерироваться случайное значение:

["random", 1, 5]

Результатом выражения random является число с плавающей точкой.

Рандомизация размера​

  1. Перейдите в раздел Размер и нажмите Редактировать JSON.

  2. Добавьте следующее выражение:

    ["random", 0.3, 0.6]

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

Рандомизация поворота​

  1. Перейдите в раздел Поворот и нажмите Редактировать JSON.

  2. Добавьте следующее выражение:

    ["literal", [0, 0, ["random", 0, 180]]]

    Рандомизировать поворот, если речь идет о деревьях, лучше только вокруг оси Z. Иначе деревья, помимо вращения вокруг ствола, будут искривляться в стороны. В выражении выше поворот задаётся отдельно по трём осям: вокруг осей X и Y поворот не выполняется (0), а вокруг оси Z выполняется рандомизированно, в диапазоне от 0 до 180 градусов.

Рандомизация смещения​

  1. Перейдите в раздел Смещение и нажмите Редактировать JSON.

  2. Добавьте следующее выражение:

    ["literal", [["random", 0, 3], ["random", 0, 3], 0]]

    Рандомизировать смещение модели лучше только в осях X и Y, чтобы она не "взлетала в воздух". В выражении выше смещение задается отдельно по трём осям: по осям X и Y смещение выполняется рандомизированно, в диапазоне от 0 до 3 единиц, а по оси Z смещение не происходит (0).

Итоговый вид​

подсказка

Вы можете посмотреть настройки стилевого слоя в готовом стиле. Для доступа к настройкам авторизуйтесь в Редакторе стилей и нажмите Создать копию.