Идеи для разработчиков геопространственного ПО с открытым исходным кодом

Материал из GIS-Lab
Перейти к навигации Перейти к поиску

QGIS

Кратко Подробнее Язык Обсуждение Взялся
генератор отчетов полноценный генератор отчетов, что-то похожее на Fast/FreeReport
интеграция fTools в библиотеку анализа перенос из модуля в ядро, вынос в API
добавление пообъектных инструментов геопроцессинга
доработка новой символики поддержка нескольких библиотек условных знаков, группировка знаков по категориям и древовидное их отображение в библиотеке
wireframe-mode возможность переключать «на лету» стиль отрисовки слоя (сложный/простой)
генерализация линейных (и полигональных?) слоёв «на лету» упрощение сложных объектов перед отрисовкой
пересмотр и доработка ветки threading_branch адаптация и интеграция существующего кода
поддержка Tile Cache
visual georeferencing tool
использование многопопоточности и OpenCL в fTools и других библиотеках QGIS
генерализация векторных данных с сохранением топологии

GDAL

Кратко Подробнее Язык Обсуждение Взялся
коррелятор
драйвер SXF для OGR
драйвер OSM XML для OGR

Подробнее

Генератор отчетов

Сейчас есть только «компоновки» (макеты карты), которые позволяют создавать печатные карты с некоторыми элементами оформления. Возможность создания более-менее сложных отчетов (карта, форматированный текст, данные из атрибутивных таблиц, графики, выполнение расчетов) отсутствует. В качестве образца можно взять Fast/FreeReport, NCReport, CrystalReport

Портирование fTools

Цель: оптимизация библиотеки векторного анализа Сейчас fTools реализованы на Python и не представлены в API. Имеются проблемы с производительностью, результат всегда записывается в новый shape-файл. Необходимо переписать инструменты на С++ с выносом операций в отдельный поток, обеспечить возможность как создания нового shape-файла, так и создания слоя в памяти.

Пообъектовое редактирование

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

Визуальный привязчик растров

Цель: ускорение и облегчение процесса привязки. Географическая привязка изображений на лету. Текущий инструмент - статический, работает так, загружаем растр в спец. модуль, расставляем точки, выбираем настройки, запускаем процесс трансформации, ждем, получаем результат - оцениваем точность. Визуальный процесс привязки работает так: загружаем растр в канвас, ставим первую точку - растр делает shift, ставим вторую точку, растр делает scale, ставим третью - растр делает transform и все на лету, при двигании точек соответственно перетягивается растр. С точки зрения алгоритмов все в кугисе для этого уже есть.

Режим Wireframe

Цель: ускорение работы с векторными слоями. Скорость отрисовки векторных слоёв при прочих равных условиях зависит от сложности и количества используемых условных знаков. В некоторых ситуациях (например, при редактировании) нет необходимости во всех красивостях, но важна скорость отрисовки. Необходимо реализовать переключение на простые стили (тонкая линия, полигон без заливки, окружность малого радиуса без заливки) и обратно по запросу пользователя.

Генерализация на лету

Цель: ускорение работы с векторными слоями. Еще один способ повысить скорость отрисовки - генерализация (упрощение) объектов. Пока только для линейных слоёв. Т.е. перед тем как выполнить отрисовку уменьшаем количество узлов в линии, и за счет некоторого огрубления получаем выигрыш в скорости. При этом необходимо учитывать, что при переходе в режим редактирования должны показываться все узлы, а не только оставшиеся после генерализации