Class GeoJsonWriter


  • public class GeoJsonWriter
    extends Object
    Writes Geometrys as JSON fragments in GeoJSON format.

    The current GeoJSON specification is https://tools.ietf.org/html/rfc7946.

    The GeoJSON specification states that polygons should be emitted using the counter-clockwise shell orientation. This is not enforced by this writer.

    The GeoJSON specification does not state how to represent empty geometries of specific type. The writer emits empty typed geometries using an empty array for the coordinates property.

    Author:
    Martin Davis, Paul Howells, Vivid Solutions
    • Field Detail

    • Constructor Detail

      • GeoJsonWriter

        public GeoJsonWriter()
        Constructs a GeoJsonWriter instance.
      • GeoJsonWriter

        public GeoJsonWriter​(int decimals)
        Constructs a GeoJsonWriter instance specifying the number of decimals to use when encoding floating point numbers.
        Parameters:
        decimals - the number of decimal places to output
    • Method Detail

      • setEncodeCRS

        public void setEncodeCRS​(boolean isEncodeCRS)
        Sets whether the GeoJSON crs property should be output. The value of the property is taken from geometry SRID.
        Parameters:
        isEncodeCRS - true if the crs property should be output
      • setForceCCW

        public void setForceCCW​(boolean isForceCCW)
        Sets whether the GeoJSON should be output following counter-clockwise orientation aka Right Hand Rule defined in RFC7946 See RFC 7946 Specification for more context.
        Parameters:
        isForceCCW - true if the GeoJSON should be output following the RFC7946 counter-clockwise orientation aka Right Hand Rule
      • write

        public String write​(Geometry geometry)
        Writes a Geometry in GeoJson format to a String.
        Parameters:
        geometry - the geometry to write
        Returns:
        String GeoJson Encoded Geometry
      • write

        public void write​(Geometry geometry,
                          Writer writer)
                   throws IOException
        Writes a Geometry in GeoJson format into a Writer.
        Parameters:
        geometry - Geometry to encode
        writer - Stream to encode to.
        Throws:
        IOException - throws an IOException when unable to write the JSON string