isSimple method

bool isSimple()

Tests whether this {@link Geometry} is simple. The SFS definition of simplicity follows the general rule that a Geometry is simple if it has no points of self-tangency, self-intersection or other anomalous points.

Simplicity is defined for each {@link Geometry} subclass as follows:

  • Valid polygonal geometries are simple, since their rings must not self-intersect. isSimple tests for this condition and reports false if it is not met. (This is a looser test than checking for validity).
  • Linear rings have the same semantics.
  • Linear geometries are simple iff they do not self-intersect at points other than boundary points.
  • Zero-dimensional geometries (points) are simple iff they have no repeated points.
  • Empty Geometrys are always simple.

@return true if this Geometry is simple @see #isValid

Implementation

bool isSimple() {
  IsSimpleOp op = new IsSimpleOp.withGeom(this);
  return op.isSimple();
}