MapGuide API Reference
 All Classes Functions Variables Enumerations Enumerator Friends
virtual bool MgGeometry::Crosses ( MgGeometry other) [virtual]

Given 2 geometries a and b, a.Crosses(b) is true if and only if the dimension of the intersection of the interior of a and the interior of b is less than the greater of the dimension of the interior of a and the dimension of the interior of b and the intersection of a and b is neither a nor b.

Remarks:
A Point cannot cross another geometry because the intersection of the Point with the other geometry is the Point.
Two MultiPoint geometries cannot cross one another because the dimension of the intersection of their interiors, namely the 0-dimension, is not less than the greater of the dimensions of their interiors, namely the 0-dimension.
[OGC99-049 ] implicitly excludes a Crosses relationship between 2 polygons. According to the definition, the possibility of such a relationship would require that the intersection of the interior of one polygon with that of another be a Point or Line.

Illustration

d, e and f are MultiPoint geometries.

crosses.png
.NET Syntax
virtual bool Crosses(MgGeometry other);
Java Syntax
virtual boolean Crosses(MgGeometry other);
PHP Syntax
virtual bool Crosses(MgGeometry other);
Parameters:
other(MgGeometry) The MgGeometry to test against this one.
Returns:
True if this geometry spatially crosses the other geometry, false otherwise.