Hello users and developers I have performed some trials to test how actually work the various operators (or topological rules) implemented in the "spatial selection" tool .
- Operators "are the same as" and "intersect with": they works as I expected for all kinds of geometries. - Operator "are disjoint from": the spatial query returns an error (java.lang.NullPointerException) when I compare input layers (polygons, lines or points)with polygons selected in a mask layer. If I compare an input layer with features selected in the mask layer (lines or points), the spatial query performed with the above mentioned topological criterion returns all feature from the input layers, despite some of them touch or intersect almost one feature of the mask layer. Maybe I have not understood its correct meaning: how really it should works? - Operator "touch": points (in the input layer) are selected if they touch a vertex (but not simply the edge) of a polygon (in the mask layer)or one of the endpoints (but not other intermediate vertices) of a line feature (in the mask layer). If the mask layer is a point layer, no feature is selected from point input layer even if we have coincident points. Lines from the input layer result selected if one of their endpoint touch, in the mask layer, the endpoint (not an intermediate vertex) of a line feature , or a single point, or a vertex (not simply the edge) of the boundary of a polygon feature. Using a polygon layer as input and a polygon layer as mask, "touch" select only polygons for which only a segment (side) of the perimeter of the input polygon is contained in a larger segment of the mask polygon, but not the reciprocal (very strange behaviour); if the rest of the input polygon overlaps the mask polygon, no selection occurs. Using polygon layer as input and line layer as mask, the polygons selected by "touch" are those for which lthe line (mask) feature lies entirely on the perimeter of the polygon or if the end of the line touches the vertex of the polygon and the line is not overlapped to the interior of the polygon. Using polygon layer as input and point layer as mask, polygons are selected if one vertex of the perimeter is coincident with one point of the mask layer. -Operator "cross over": lines (input) are selected if an endpoint touches the edge or the interior (not the vertex) of a polygon (mask), or if any point of the line touches a vertex of a polygon, but not if an intermediate vertex of the line touches the edge of a polygon or if only the endpoint of the line touches the vertex of a polygon. [...] to be continued Have I misunderstood something on how operators work, or really some adjustment to the rules of spatial query are needed? Best regards -- ing. Ernesto Sferlazza responsabile nodo provinciale di Agrigento del SITR Sicilia resp. gruppo Sistema Informativo Territoriale Provincia regionale di Agrigento sede istituzionale: piazza Aldo Moro, 1 - 92100 AGRIGENTO sede operativa: via Acrone, 27 - 92100 AGRIGENTO cell. 3392718463 (personale) 3316874296 (aziendale) tel. uff 0922593752 _______________________________________________ Gvsig_internacional mailing list [email protected] http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional
