2013-08-15 1 views
4

Как я могу справиться с перекрывающимися линиями в библиотеке карт листов?Листовка: как бороться с перекрывающимися линиями?

problem illustration

загрузить GeoJSON из SID сервера и сделать это прямо на карте. Если есть две идентичные записи, Лифлет рисует их дважды. Это может быть исправлено путем поиска точного дублирования на стороне сервера.

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

+0

В вашем случае Листовка будет рисовать оранжевую линию и синюю линию отдельно. Если они пересекаются, Листовка отобразит их как показано. В этом случае, каков ваш желаемый результат? Если оранжевая линия обрезается? Синяя линия обрезается? Что вы хотите? –

+0

Вы нашли решение? –

ответ

0

Похоже, что линии визуализируются с непрозрачностью полилинии Литолета по умолчанию 0,5. Если вы инстанцирование ломаных себя в коде, вы можете переопределить непрозрачность, чтобы сделать линии непрозрачны таким образом:

var myPolyLine = new L.Polyline(myPoints, { opacity: 1 }); 

Линии, которая будет отображаться на вершине затем будет линия, которая была добавлена ​​к карте последней (один или другой будет на вершине, если вы не сделаете их непрозрачными и одинаковыми). Но это может быть спорным, если вы загружаете в GeoJSON непосредственно и не имеют контроля над тем, как листовка делает это.