Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.vividsolutions.jts.operation.valid
Class IsValidOp

    java.lang.Object
      com.vividsolutions.jts.operation.valid.IsValidOp

public class IsValidOp
extends java.lang.Object

Implements the algorithsm required to compute the `isValid()` method for `Geometry`s. See the documentation for the various geometry types for a specification of validity.

Version:
  1.7

Constructor Summary
`IsValidOp(Geometry parentGeometry)`

Method Summary
`static Coordinate` | `findPtNotNode(Coordinate[] testCoords, LinearRing searchRing, GeometryGraph graph)` Find a point from the list of testCoords that is NOT a node in the edge for the list of searchCoords
`TopologyValidationError` | `getValidationError()`
`boolean` | `isValid()`
`static boolean` | `isValid(Coordinate coord)` Checks whether a coordinate is valid for processing.
`void` | `setSelfTouchingRingFormingHoleValid(boolean isValid)` Sets whether polygons using Self-Touching Rings to form holes are reported as valid.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### IsValidOp

    public IsValidOp(Geometry parentGeometry)

Method Detail

### isValid

    public static boolean isValid(Coordinate coord)

  Checks whether a coordinate is valid for processing. Coordinates are valid iff their x and y ordinates are in the range of the floating point representation.

  Parameters:
    `coord` - the coordinate to validate
  Returns:
    `true` if the coordinate is valid

### findPtNotNode

    public static Coordinate findPtNotNode(Coordinate[] testCoords,
                                           LinearRing searchRing,
                                           GeometryGraph graph)

  Find a point from the list of testCoords that is NOT a node in the edge for the list of searchCoords

  Returns:
    the point found, or `null` if none found

### setSelfTouchingRingFormingHoleValid

    public void setSelfTouchingRingFormingHoleValid(boolean isValid)

  Sets whether polygons using Self-Touching Rings to form holes are reported as valid. If this flag is set, the following Self-Touching conditions are treated as being valid:
  - the shell ring self-touches to create a hole touching the shell
  - a hole ring self-touches to create two holes touching at a point

  The default (following the OGC SFS standard) is that this condition is not valid (`false`).

  This does not affect whether Self-Touching Rings disconnecting the polygon interior are considered valid (these are considered to be invalid under the SFS, and many other spatial models as well). This includes "bow-tie" shells, which self-touch at a single point causing the interior to be disconnected, and "C-shaped" holes which self-touch at a single point causing an island to be formed.

  Parameters:
    `isValid` - states whether geometry with this condition is valid

### isValid

    public boolean isValid()

### getValidationError

    public TopologyValidationError getValidationError()

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD