Страница 1 из 1

Вычисление "средней" линии в GRASS

Добавлено: 15 июн 2012, 13:45
Александр Мурый
Вычисление "средней" линии может быть полезно для некоторых задач, например, для "усреднения" нескольких GPS-треков, записанных вдоль одной дороги.

Для решения задачи был написан модуль для GRASS (shell-скрипт) v.to.averline. Он использует простой алгоритм, описанный здесь.

Параметры модуля:

Код: Выделить всё

GRASS 6.4.2svn (arrows_test):~ > v.to.averline -help

Description:
 Find "average" line(s) of input vector map. Results differ depending on vector type: lines/boundaries or polygons. NOTE: Lines/boundaries must have the same direction.

Keywords:
 vector

Usage:
 v.to.averline input=name output=name [ave_dist=value] [ave_segm=value]
   [--overwrite] [--verbose] [--quiet]

Flags:
 --o   Allow output files to overwrite existing files
 --v   Verbose module output
 --q   Quiet module output

Parameters:
     input   Name of input vector map
    output   Name of output vector map
  ave_dist   Average distance to vectors sampling. Affects the shape of output "average" line.
  ave_segm   Average number of vectors segments. Affects the shape of output "average" line.
Результат работы модуля зависит от типа данных (линии, границы полигонов или сами полигоны).
На заметку: линии/границы должны иметь одинаковое направление.

Примеры:
averline_results_small.png
averline_results_small.png (44.25 КБ) 12925 просмотров

Re: Вычисление "средней" линии в GRASS

Добавлено: 15 июн 2012, 19:38
rhot
Класс! Спасибо!

Re: Вычисление "средней" линии в GRASS

Добавлено: 15 июн 2012, 21:24
Александр Мурый
Буду рад, если кому-то пригодится это поделие :)

Кстати, теоретически возможно ещё прикрутить к модулю более продвинутый вариант с GPSBabel и R-скриптом, как расписано на OSM-вики... (?)

Re: Вычисление "средней" линии в GRASS

Добавлено: 15 июн 2012, 21:59
rhot
Ммм,.. там gpsbabel, наверное, не нужен...