Openlayers 4 векторная карта - PullRequest
0 голосов
/ 01 июня 2018

Я создаю сайт панели мониторинга и использую векторный слой для выбора вардов (в этом прототипе я использую ESSEX UK со всеми палатами внутри, см. Изображение)

enter image description here

и это код, который я использую.

http://openlayers.org/en/latest/examples/select-features.html?q=selec

проблема заключается в том, что при создании файла геоджон из картыfile (единственное поле внутри файла карты - это имя прихода и код, не слишком много информации), размер начинает становиться немного большим только для этого фрагмента карты и загружается довольно медленно, и как только я попытался загрузитьфайл большего размера (почти 6 МБ) и Openlayers не удается его загрузить, теперь мне нужно создать еще один прототип, но для всей Великобритании (только регионы, без приходов).

какой формат поддерживается от OL4 к вектору?Могу ли я добиться чего-то подобного с другим форматом, отличным от GeoJson?

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

1 Ответ

0 голосов
/ 04 июня 2018

Существует много способов решения проблем производительности рендеринга векторных данных на стороне клиента.

Прежде всего, немного странно, что вы не можете рендерить 6 МБ векторных данных с помощью openlayers.По моему опыту (в основном с OpenLayers 2), 6 МБ не так уж многоОднако это сильно зависит от возможностей клиента.В чем проблема с загрузкой?Тайм-аут?Замораживание?Не отвечает панорамирование / масштабирование?

Вы можете визуализировать данные на стороне сервера, используя WMS или тайлы.Вы можете использовать mapserver или геосервер, например.Затем, чтобы выбрать объекты, вы можете использовать запрос GetFeatureInfo.

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

Возможно, ваши векторные данные слишком "детализированы"для ваших целей.Вы можете упростить их, чтобы уменьшить количество точек каждой геометрии.См. Инструмент GRASS v.generalize.

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

ИМХО, если ваше приложение должно работать в старых браузерах /ПК, то вам нужно визуализировать на стороне сервера.

...