Я перехожу от создания карт в Illustrator к созданию их с помощью QGIS и реальных данных. Одна из вещей, которую я не смог воссоздать в QGIS, - это плавные изогнутые линии, которые я могу получить в Illustrator. Я не говорю о стилях Join и Cap, но о том, как отображается вся строка.
Я ищу ответ, который не включает в себя экспорт как SVG в Illustrator и завершение карты там.
Кроме того, я понимаю, что их можно считать неточным представлением, но по большей части эти карты служат для того, чтобы дать гонщикам представление о том, где они находятся, и не обязательно должны быть точным представлением.
Вот пример того, что я имею в виду:
Ответы:
Проверьте плагин Generalizer, он должен делать то, что вы хотите. Плагин имеет опции сглаживания, которые работают довольно хорошо.
Это не меняет способ визуализации ваших линий, но создает новый шейп-файл с применением сглаживания (или упрощения / обобщения).
источник
Используя плагин QGIS + GRASS:
Добавьте панель инструментов Grass из окна «Управление плагинами».
Ваши линии должны быть вектором травы, поэтому конвертируйте их в новый или существующий набор карт GRASS.
На панели инструментов GRASS выберите Инструменты GRASS ...
Ищите модуль: v.generalize ( учебник WIKI здесь )
Затем вы можете выбрать несколько различных обобщающих алгоритмов:
Обратите внимание на алгоритмы: Chaiken, Hermite или даже скользящее среднее. Также есть несколько других!
Различия можно увидеть в картинках вики:
Используя uDig + jgrasstools или grass:
Если вам сложно получить желаемый результат от vgeneralize от GRASS, попробуйте последнюю версию uDig с jgrasstools . Вы также можете взять траву из того же места, что и jgrasstools.
После установки и запуска uDig включите Spatial Toolbox : Window> Show View> Other ...
Снимите панель инструментов для удобства чтения (щелкните правой кнопкой мыши вкладку Spatial Toolbox> Detach ...):
Загрузите необходимые модули jgrasstools и grass (опционально):
Не забудьте установить параметры травы (указать исполняемый файл grass или файл bat в windows, или команду grass в linux, например, / usr / bin / grass), если вы также загрузите jar-файл grass:
В заключение! Используя инструменты из jgrasstools (не трава), вы можете легко обобщить линию с помощью Vector Processing> LineSmootherJaiTools
Убедитесь, что правильно настроили ввод и вывод (работает только с шейп-файлами, поэтому нет необходимости конвертировать ваши данные в наборы / местоположения для травы) :
Закончив настройку допуска на сглаживание (0,0 - 1,0) и ввода / вывода, нажмите кнопку «Воспроизведение» в окне «Пространственная панель инструментов» (вверху справа):
Полученные результаты:
источник
Есть и другой способ, возможно, только с версии QGIS 2.0:
Под Обработка> Панель инструментов вы можете получить доступ к инструментам GRASS и SAGA. Для сглаживания вы найдете v.generalize, а также упрощение линий из SAGA. Эти инструменты работают с обычными шейп-файлами, поэтому вектор травы не требуется:
Пакетный режим еще не так хорошо решен (щелкните правой кнопкой мыши в правом меню и выберите «Выполнить как пакет», поскольку каждый отдельный файл нужно выбирать вручную. Упомянутый выше плагин обобщителя позволяет проще выбирать множество файлов). , но это работает только сейчас, если не указан файл для сохранения, в противном случае плагин падает.
источник
Под гладким алгоритмом геометрии
Processing Toolbox -> QGis geoalghoritms -> Vector
.источник