[GRASS-user] v.select: exact meaning of disjoint operator

What exactly does the disjoint operator do in the GEOS operators of v.select (6.5+) ? It is described as

"disjoint - features do not spatially intersect"

Which sounds pretty much like the reverse of the intersect operator.

However, when I try the following in the nc_spm_06 NC data set:

v.extract input=roadsmajor@PERMANENT output=cary list=1004
v.select -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1 btype=area output=roads_disjoint_cary operator=disjoint

I get:

http://geog-pc40.ulb.ac.be/grass/misc/disjoint.png

whereas

v.select -r -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1 btype=area output=roads_reverse_intersect_cary operator=intersects

gives me:

http://geog-pc40.ulb.ac.be/grass/misc/reverse_intersect.png

Is this a bug in the disjoint operator, or am I misinterpreting its meaning ?

Moritz

Hi,

2009/6/26 Moritz Lennert <mlennert@club.worldonline.be>:

"disjoint - features do not spatially intersect"

Which sounds pretty much like the reverse of the intersect operator.

However, when I try the following in the nc_spm_06 NC data set:

v.extract input=roadsmajor@PERMANENT output=cary list=1004
v.select -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1
btype=area output=roads_disjoint_cary operator=disjoint

I get:

http://geog-pc40.ulb.ac.be/grass/misc/disjoint.png

whereas

v.select -r -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1
btype=area output=roads_reverse_intersect_cary operator=intersects

gives me:

http://geog-pc40.ulb.ac.be/grass/misc/reverse_intersect.png

Is this a bug in the disjoint operator, or am I misinterpreting its meaning

It's a bug in v.select. Fixed in r38250. Currently `ope=disjoint` =
`-r operator=intersect`. It would be better to change v.select's
algorithm to select features, and to remove this ugly hack.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa

On 05/07/09 15:13, Martin Landa wrote:

Hi,

2009/6/26 Moritz Lennert <mlennert@club.worldonline.be>:

"disjoint - features do not spatially intersect"

Which sounds pretty much like the reverse of the intersect operator.

However, when I try the following in the nc_spm_06 NC data set:

v.extract input=roadsmajor@PERMANENT output=cary list=1004
v.select -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1
btype=area output=roads_disjoint_cary operator=disjoint

I get:

http://geog-pc40.ulb.ac.be/grass/misc/disjoint.png

whereas

v.select -r -g ainput=roadsmajor@PERMANENT atype=line binput=cary@user1
btype=area output=roads_reverse_intersect_cary operator=intersects

gives me:

http://geog-pc40.ulb.ac.be/grass/misc/reverse_intersect.png

Is this a bug in the disjoint operator, or am I misinterpreting its meaning

It's a bug in v.select. Fixed in r38250. Currently `ope=disjoint` =
`-r operator=intersect`. It would be better to change v.select's
algorithm to select features, and to remove this ugly hack.

Ok, thanks for following up on this. Should we file a bug report for the selection algorithm ? Could you give me more details on the problems with it ?

Moritz

Hi,

2009/7/7 Moritz Lennert <mlennert@club.worldonline.be>:

Ok, thanks for following up on this. Should we file a bug report for the
selection algorithm ? Could you give me more details on the problems with it

the problem is that v.select was originally designed only for
'overlaps' operator. So only features with MBR from B which overlaps
MBR of feature from A are tested. Which is not the case of disjoint
operator.

Martin

--
Martin Landa <landa.martin gmail.com> * http://gama.fsv.cvut.cz/~landa