## com.vividsolutions.jts.triangulate
Class VoronoiDiagramBuilder

    java.lang.Object
      com.vividsolutions.jts.triangulate.VoronoiDiagramBuilder

public class VoronoiDiagramBuilder
extends java.lang.Object

A utility class which creates Voronoi Diagrams from collections of points. The diagram is returned as a `GeometryCollection` of `Polygon`s, clipped to the larger of a supplied envelope or to an envelope determined by the input sites.

Author:
  Martin Davis

Constructor Summary
`VoronoiDiagramBuilder()` Creates a new Voronoi diagram builder.

Method Summary
`Geometry` `getDiagram(GeometryFactory geomFact)` Gets the faces of the computed diagram as a `GeometryCollection` of `Polygon`s, clipped as specified.
`QuadEdgeSubdivision` `getSubdivision()` Gets the `QuadEdgeSubdivision` which models the computed diagram.
`void` `setClipEnvelope(Envelope clipEnv)` Sets the envelope to clip the diagram to.
`void` `setSites(java.util.Collection coords)` Sets the sites (point or vertices) which will be diagrammed from a collection of `Coordinate`s.
`void` `setSites(Geometry geom)` Sets the sites (point or vertices) which will be diagrammed.
`void` `setTolerance(double tolerance)` Sets the snapping tolerance which will be used to improved the robustness of the triangulation computation.

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

Constructor Detail

### VoronoiDiagramBuilder

    public VoronoiDiagramBuilder()

  Creates a new Voronoi diagram builder.

Method Detail

### setSites

    public void setSites(Geometry geom)

  Sets the sites (point or vertices) which will be diagrammed. All vertices of the given geometry will be used as sites.

  Parameters:
    `geom` - the geometry from which the sites will be extracted.

### setSites

    public void setSites(java.util.Collection coords)

  Sets the sites (point or vertices) which will be diagrammed from a collection of `Coordinate`s.

### setClipEnvelope

    public void setClipEnvelope(Envelope clipEnv)

  Sets the envelope to clip the diagram to. The diagram will be clipped to the larger of this envelope or an envelope surrounding the sites.

  Parameters:
    `clipEnv` - the clip envelope.

### setTolerance

    public void setTolerance(double tolerance)

  Sets the snapping tolerance which will be used to improved the robustness of the triangulation computation. A tolerance of 0.0 specifies that no snapping will take place.

  Parameters:
    `tolerance` - the tolerance distance to use

### getSubdivision

    public QuadEdgeSubdivision getSubdivision()

  Gets the `QuadEdgeSubdivision` which models the computed diagram.

  Returns:
    the subdivision containing the triangulation

### getDiagram

    public Geometry getDiagram(GeometryFactory geomFact)

  Gets the faces of the computed diagram as a `GeometryCollection` of `Polygon`s, clipped as specified.

  Parameters:
    `geomFact` - the geometry factory to use to create the output
  Returns:
    the faces of the diagram