[GRASS-user] v.generalize: does it take forever?

Markus Metz markus.metz.giswork at gmail.com
Sun Jan 4 11:54:07 PST 2015


On Wed, Dec 31, 2014 at 5:20 PM, Fábio Dias <fabio.dias at gmail.com> wrote:
>
> I fussed about the v.generalize code, thinking about pthread
> parallelization. The geometry part of the code is *really* fast and
> can be easily parallelized so it can run even faster. But, according
> to the profile google-perf gave me, the real bottleneck is inside the
> check_topo function (which uses static vars and inserts a new line
> into the vector, not only checks if it breaks topo - got stuck a while
> in there due to the misnomer). More specifically in the Rtree function
> used to check if one line intersects other lines.
>

The function used in check_topo is Vect_line_intersection() which does
much more than just testing for intersections. The process could be
made much faster if Vect_line_check_intersection() would be modified
such that connections by end points are ignored. But I don't know if
this would break other modules or other functionality.

Markus M


More information about the grass-user mailing list