Class KMLWriter


  • public class KMLWriter
    extends java.lang.Object
    Writes a formatted string containing the KML representation of a JTS Geometry. The output is KML fragments which can be substituted wherever the KML Geometry abstract element can be used.

    Output elements are indented to provide a nicely-formatted representation. An output line prefix and maximum number of coordinates per line can be specified.

    The Z ordinate value output can be forced to be a specific value. The extrude and altitudeMode modes can be set. If set, the corresponding sub-elements will be output.

    • Constructor Summary

      Constructors 
      Constructor Description
      KMLWriter()
      Creates a new writer.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void setAltitudeMode​(java.lang.String altitudeMode)
      Sets the value output in the altitudeMode element.
      void setExtrude​(boolean extrude)
      Sets the flag to be output in the extrude element.
      void setLinePrefix​(java.lang.String linePrefix)
      Sets a tag string which is prefixed to every emitted text line.
      void setMaximumCoordinatesPerLine​(int maxCoordinatesPerLine)
      Sets the maximum number of coordinates to output per line.
      void setPrecision​(int precision)
      Sets the maximum number of decimal places to output in ordinate values.
      void setTesselate​(boolean tesselate)
      Sets the flag to be output in the tesselate element.
      void setZ​(double zVal)
      Sets the Z value to be output for all coordinates.
      java.lang.String write​(Geometry geom)
      Writes a Geometry in KML format as a string.
      void write​(Geometry geometry, java.io.Writer writer)
      Writes the KML representation of a Geometry to a Writer.
      void write​(Geometry geometry, java.lang.StringBuffer buf)
      Appends the KML representation of a Geometry to a StringBuffer.
      static java.lang.String writeGeometry​(Geometry geometry, double z)
      Writes a Geometry as KML to a string, using a specified Z value.
      static java.lang.String writeGeometry​(Geometry geometry, double z, int precision, boolean extrude, java.lang.String altitudeMode)
      Writes a Geometry as KML to a string, using a specified Z value, precision, extrude flag, and altitude mode code.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • ALTITUDE_MODE_CLAMPTOGROUND

        public static java.lang.String ALTITUDE_MODE_CLAMPTOGROUND
        The KML standard value clampToGround for use in setAltitudeMode(String).
      • ALTITUDE_MODE_RELATIVETOGROUND

        public static java.lang.String ALTITUDE_MODE_RELATIVETOGROUND
        The KML standard value relativeToGround for use in setAltitudeMode(String).
      • ALTITUDE_MODE_ABSOLUTE

        public static java.lang.String ALTITUDE_MODE_ABSOLUTE
        The KML standard value absolute for use in setAltitudeMode(String).
    • Constructor Detail

      • KMLWriter

        public KMLWriter()
        Creates a new writer.
    • Method Detail

      • writeGeometry

        public static java.lang.String writeGeometry​(Geometry geometry,
                                                     double z)
        Writes a Geometry as KML to a string, using a specified Z value.
        Parameters:
        geometry - the geometry to write
        z - the Z value to use
        Returns:
        a string containing the KML geometry representation
      • writeGeometry

        public static java.lang.String writeGeometry​(Geometry geometry,
                                                     double z,
                                                     int precision,
                                                     boolean extrude,
                                                     java.lang.String altitudeMode)
        Writes a Geometry as KML to a string, using a specified Z value, precision, extrude flag, and altitude mode code.
        Parameters:
        geometry - the geometry to write
        z - the Z value to use
        precision - the maximum number of decimal places to write
        extrude - the extrude flag to write
        altitudeMode - the altitude model code to write
        Returns:
        a string containing the KML geometry representation
      • setLinePrefix

        public void setLinePrefix​(java.lang.String linePrefix)
        Sets a tag string which is prefixed to every emitted text line. This can be used to indent the geometry text in a containing document.
        Parameters:
        linePrefix - the tag string
      • setMaximumCoordinatesPerLine

        public void setMaximumCoordinatesPerLine​(int maxCoordinatesPerLine)
        Sets the maximum number of coordinates to output per line.
        Parameters:
        maxCoordinatesPerLine - the maximum number of coordinates to output
      • setZ

        public void setZ​(double zVal)
        Sets the Z value to be output for all coordinates. This overrides any Z value present in the Geometry coordinates.
        Parameters:
        zVal - the Z value to output
      • setExtrude

        public void setExtrude​(boolean extrude)
        Sets the flag to be output in the extrude element.
        Parameters:
        extrude - the extrude flag to output
      • setTesselate

        public void setTesselate​(boolean tesselate)
        Sets the flag to be output in the tesselate element.
        Parameters:
        tesselate - the tesselate flag to output
      • setAltitudeMode

        public void setAltitudeMode​(java.lang.String altitudeMode)
        Sets the value output in the altitudeMode element.
        Parameters:
        altitudeMode - string representing the altitude mode
      • setPrecision

        public void setPrecision​(int precision)
        Sets the maximum number of decimal places to output in ordinate values. Useful for limiting output size.
        Parameters:
        precision - the number of decimal places to output
      • write

        public java.lang.String write​(Geometry geom)
        Writes a Geometry in KML format as a string.
        Parameters:
        geom - the geometry to write
        Returns:
        a string containing the KML geometry representation
      • write

        public void write​(Geometry geometry,
                          java.io.Writer writer)
                   throws java.io.IOException
        Writes the KML representation of a Geometry to a Writer.
        Parameters:
        geometry - the geometry to write
        writer - the Writer to write to
        Throws:
        java.io.IOException - if an I/O error occurred
      • write

        public void write​(Geometry geometry,
                          java.lang.StringBuffer buf)
        Appends the KML representation of a Geometry to a StringBuffer.
        Parameters:
        geometry - the geometry to write
        buf - the buffer to write into