## com.vividsolutions.jts.operation.overlay.snap
Class SnapIfNeededOverlayOp

    java.lang.Object
      com.vividsolutions.jts.operation.overlay.snap.SnapIfNeededOverlayOp

public class SnapIfNeededOverlayOp
extends java.lang.Object

Performs an overlay operation using snapping and enhanced precision to improve the robustness of the result. This class only uses snapping if an error is detected when running the standard JTS overlay code. Errors detected include thrown exceptions (in particular, `TopologyException`) and invalid overlay computations.

Version:
  1.7
Author:
  Martin Davis

Constructor Summary
`SnapIfNeededOverlayOp(Geometry g1, Geometry g2)`

Method Summary
`static Geometry` `difference(Geometry g0, Geometry g1)`
`Geometry` `getResultGeometry(int opCode)`
`static Geometry` `intersection(Geometry g0, Geometry g1)`
`static Geometry` `overlayOp(Geometry g0, Geometry g1, int opCode)`
`static Geometry` `symDifference(Geometry g0, Geometry g1)`
`static Geometry` `union(Geometry g0, Geometry g1)`

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

Constructor Detail

### SnapIfNeededOverlayOp

    public SnapIfNeededOverlayOp(Geometry g1,
                                 Geometry g2)

Method Detail

### overlayOp

    public static Geometry overlayOp(Geometry g0,
                                     Geometry g1,
                                     int opCode)

### intersection

    public static Geometry intersection(Geometry g0,
                                        Geometry g1)

### union

    public static Geometry union(Geometry g0,
                                 Geometry g1)

### difference

    public static Geometry difference(Geometry g0,
                                      Geometry g1)

### symDifference

    public static Geometry symDifference(Geometry g0,
                                         Geometry g1)

### getResultGeometry

    public Geometry getResultGeometry(int opCode)