[GRASS-dev] proper v.parallel behavior on strange input
Wolf Bergenheim
wolf+grass at bergenheim.net
Thu Jun 19 08:25:01 EDT 2008
On 18.06.2008 22:24, Росен Матев wrote:
> Hi,
>
> I propose that I cancel development of "clean_parallel()" (the
> function which removes loops), cause its proper behavior is not
> determined now (and it might not be possible to determine it).
> Instead, I'll start making function which generates "type B" lines,
> which will be more useful in buffer generation. What do you think
> about it?
I still think that both A and B have merit, depending on what you want
to do with the parallel lines. If it is meant to mark the the side of
the road that gets cleared for installation of say phone wires, and all
lines go in the direction of the traffic, then A is the way to go. If
you want to make buffers then B, no sorry C (B with holes), is the
correct way to go. Once you are dine with making parallel lines
according to B you need to go through the original line again to find
loops and for those loops punch holes.
As for the loop removal, ell if you can produce a function that can
produce loopless parallel lines, then by all means drop
clean_parallel(). Note that the the previous problem case also needs to
work ;). I'll also ponder on the parallel line algorithm.
Another way to go would be to emulate a CNC machine and place a circular
"tool" on top of the line and calculate a tangent at each corner to
connect two balls on the left and right side. But that might actually be
harder then going via parallel lines. I'm not sure. But it would allow
for all kinds of interesting buffer shapes.
--Wolf
--
<:3 )---- Wolf Bergenheim ----( 8:>
More information about the grass-dev
mailing list