Доброго времени суток. Прошу помощи сообщества:
Имеется такая задача: между двумя символами (точками) провести изогнутую линию со стрелкой на конце.
Вопросы:
1. Как лучше изогнуть линию, заданную двумя точками? (нынешнее решение: нахожу координаты третьей точки, рандомно добавляя от 0.25 до 0.75 от разницы между ординатами и абсциссами точек, после чего разбиваю линию на меньшие отрезки и интерполирую. Но так как разница между ординатами или абсциссами может быть незначительной, то и линия может почти не изогнуться).
2. Как нарисовать стрелки на концах линий средствами Mapserver? (нынешнее решение: используя GEOMTRANSFORM, добавляю на конец линии залитый символ 'V', нахожу угол между двумя последними точками, чтобы повернуть (POLAROFFSET) символ, чтобы стрелка указывала в центр символа на конце линии. Основная проблема: при масштабировании символов, стрелка смещается не по линии, а по углу, который задан, а так как линия кривая - угол меняется и стрелка съезжает с линии).
3. Доп. вопрос по кластеризации: Возможно ли, при кластеризации точек начала и конца линий между собой, заменять линии на линию между кластерами (имеющими новые координаты (между точками в кластере))?
Mapserver 7.7-dev / 7.6.
Приблизительное изображение необходимого:
Mapserver: линии - указатели.
-
- Новоприбывший
- Сообщения: 1
- Зарегистрирован: 05 июн 2020, 18:15
- Репутация: 0
- Откуда: РФ
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей