[GRASS5] [aaime@libero.it: [GRASS-bugs] vector files: topology rules broken]

Hi vector gurus,

find attached a vector bug which seems to need our attention.
Maybe it's an v.spag issue?

Thanks,

Markus

Hi everybody,
in fact I read only after submitting bug that v.spag detects
line crossings, but... if I use v.spag over a vector file
containing only two lines crossing I end up with a new vector
file with lots of lines and nodes (much more than 4 lines and
5 nodes that I expected). I was still using grass5beta8, if
that bug has already been corrected, I apologize... I'm
downloading beta11, tomorrow I will made another try.
Bye
Andrea

Markus Neteler wrote:

Hi vector gurus,

find attached a vector bug which seems to need our attention.
Maybe it's an v.spag issue?

Thanks,

Markus

  ------------------------------------------------------------------------

Subject: [GRASS-bugs] vector files: topology rules broken
Date: Thu, 15 Feb 2001 15:36:43 GMT
From: aaime@libero.it ()
Reply-To: grass-bugs@geog.uni-hannover.de
To: grass-bugs@geog.uni-hannover.de, grass-bugs@intevation.de

Below is the result of your feedback form. It was submitted by
(aaime@libero.it) on Thursday, February 15, 2001 at 15:36:43
---------------------------------------------------------------------------

subject: vector files: topology rules broken

area: grass5beta11

platform: Linux/Intel

vendor: RedHat

cputype: Intel (i486, i586, pentium ...)

xwindows: Xfree 4.0.1

windowsmanager: KDE 2.x

tcltkver: -- select --

grassserver: Hannover site

grassversion: Linux/Intel binaries

cvsyesno: -- select --

compiler: -- select --

bugreport: Documentation (GRASS programmer manual, "Vector Maps" claims that vector files are made of nonintersecting curves, and a "Topology
rule" says that arcs should not cross each other. That's a standard
planar enforcement rule but... it's not enforced! I have digited
a file with 2 crossing lines, run v.support and it's still saying
"2 lines, 4 nodes". v.digit displays only four nodes. So, GRASS
does not split lines at crossing, and it doesn't create a node in
the crossing, nor it refuses to accept that bogus file.

name: Andrea Aime

---------------------------------------------------------------------------

REMOTE_HOST: monet7-176.comune.modena.it

----------------------------------------
If you want to unsubscribe from grass-bugs
mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass-bugs'

----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass5'

Andrea Aime wrote:

Hi everybody,
in fact I read only after submitting bug that v.spag detects
line crossings, but... if I use v.spag over a vector file
containing only two lines crossing I end up with a new vector
file with lots of lines and nodes (much more than 4 lines and
5 nodes that I expected). I was still using grass5beta8, if
that bug has already been corrected, I apologize... I'm
downloading beta11, tomorrow I will made another try.
Bye
Andrea

Hi Andrea

I have noted before that v.spag likes the lines to cross in a
well-behaved manner. If lines run over one another, they are not split
or are not processed correctly, or the module bombs out. ie, if you
have:

X------------X------------------------X
X-------------------------------------X

where the lines are supposed to be co-incident, you get:

X--X-X---X-X

and so on, or other errors.

I suspect that these problems come mostly from importing
double-digitised data, but it is certainly a problem if you are getting
duplicate lines from manual digitising.

I've sometimes found it helps a bit to run v.spag -i first (to do just
an identical lines check) then run the full check (without the -i
option). But v.spag -i cannot clean the example above, because tho'
these lines are co-incident, they are not identical. (Also this would
have to be re-run on the original)

We are planning for the future of vector processing that vector data
will be loaded up to a network structure before any kind of processing
is done. That will enforce a guarentee that all lines will be single,
and not run over each other (v.in.shape already uses such a structure).

Regards

David

PS. I've just checked v.spag on a `well-behaved' spaghetti map. It
splits OK, but doesn't label the newly created segments automatically. I
think we need some idea of a composite line to be built in dig_plus, a
bit like areas are composed from area edges and a point locator, but for
linear features..?

Markus Neteler wrote:
>
> Hi vector gurus,
>
> find attached a vector bug which seems to need our attention.
> Maybe it's an v.spag issue?
>
> Thanks,
>
> Markus
>
> ------------------------------------------------------------------------
>
> Subject: [GRASS-bugs] vector files: topology rules broken
> Date: Thu, 15 Feb 2001 15:36:43 GMT
> From: aaime@libero.it ()
> Reply-To: grass-bugs@geog.uni-hannover.de
> To: grass-bugs@geog.uni-hannover.de, grass-bugs@intevation.de
>
> Below is the result of your feedback form. It was submitted by
> (aaime@libero.it) on Thursday, February 15, 2001 at 15:36:43
> ---------------------------------------------------------------------------
>
> subject: vector files: topology rules broken
>
> area: grass5beta11
>
> platform: Linux/Intel
>
> vendor: RedHat
>
> cputype: Intel (i486, i586, pentium ...)
>
> xwindows: Xfree 4.0.1
>
> windowsmanager: KDE 2.x
>
> tcltkver: -- select --
>
> grassserver: Hannover site
>
> grassversion: Linux/Intel binaries
>
> cvsyesno: -- select --
>
> compiler: -- select --
>
> bugreport: Documentation (GRASS programmer manual, "Vector Maps" claims that vector files are made of nonintersecting curves, and a "Topology
> rule" says that arcs should not cross each other. That's a standard
> planar enforcement rule but... it's not enforced! I have digited
> a file with 2 crossing lines, run v.support and it's still saying
> "2 lines, 4 nodes". v.digit displays only four nodes. So, GRASS
> does not split lines at crossing, and it doesn't create a node in
> the crossing, nor it refuses to accept that bogus file.
>
> name: Andrea Aime
>
> ---------------------------------------------------------------------------
>
> REMOTE_HOST: monet7-176.comune.modena.it
>
> ----------------------------------------
> If you want to unsubscribe from grass-bugs
> mailing list write to:
> minordomo@geog.uni-hannover.de with
> subject 'unsubscribe grass-bugs'

----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass5'

----------------------------------------
If you want to unsubscribe from GRASS Development Team mailing list write to:
minordomo@geog.uni-hannover.de with
subject 'unsubscribe grass5'