Class KMLWriter
java.lang.Object
org.locationtech.jts.io.kml.KMLWriter
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.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic StringThe KML standard valueabsolutefor use insetAltitudeMode(String).static StringThe KML standard valueclampToGroundfor use insetAltitudeMode(String).static StringThe KML standard valuerelativeToGroundfor use insetAltitudeMode(String). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidsetAltitudeMode(String altitudeMode) Sets the value output in thealtitudeModeelement.voidsetExtrude(boolean extrude) Sets the flag to be output in theextrudeelement.voidsetLinePrefix(String linePrefix) Sets a tag string which is prefixed to every emitted text line.voidsetMaximumCoordinatesPerLine(int maxCoordinatesPerLine) Sets the maximum number of coordinates to output per line.voidsetPrecision(int precision) Sets the maximum number of decimal places to output in ordinate values.voidsetTesselate(boolean tesselate) Sets the flag to be output in thetesselateelement.voidsetZ(double zVal) Sets the Z value to be output for all coordinates.Writes aGeometryin KML format as a string.voidvoidwrite(Geometry geometry, StringBuffer buf) Appends the KML representation of aGeometryto aStringBuffer.static StringwriteGeometry(Geometry geometry, double z) Writes a Geometry as KML to a string, using a specified Z value.static StringwriteGeometry(Geometry geometry, double z, int precision, boolean extrude, String altitudeMode) Writes a Geometry as KML to a string, using a specified Z value, precision, extrude flag, and altitude mode code.
-
Field Details
-
ALTITUDE_MODE_CLAMPTOGROUND
The KML standard valueclampToGroundfor use insetAltitudeMode(String). -
ALTITUDE_MODE_RELATIVETOGROUND
The KML standard valuerelativeToGroundfor use insetAltitudeMode(String). -
ALTITUDE_MODE_ABSOLUTE
The KML standard valueabsolutefor use insetAltitudeMode(String).
-
-
Constructor Details
-
KMLWriter
public KMLWriter()Creates a new writer.
-
-
Method Details
-
writeGeometry
-
writeGeometry
public static String writeGeometry(Geometry geometry, double z, int precision, boolean extrude, 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 writez- the Z value to useprecision- the maximum number of decimal places to writeextrude- the extrude flag to writealtitudeMode- the altitude model code to write- Returns:
- a string containing the KML geometry representation
-
setLinePrefix
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 theextrudeelement.- Parameters:
extrude- the extrude flag to output
-
setTesselate
public void setTesselate(boolean tesselate) Sets the flag to be output in thetesselateelement.- Parameters:
tesselate- the tesselate flag to output
-
setAltitudeMode
Sets the value output in thealtitudeModeelement.- 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
-
write
- Parameters:
geometry- the geometry to writewriter- the Writer to write to- Throws:
IOException- if an I/O error occurred
-
write
Appends the KML representation of aGeometryto aStringBuffer.- Parameters:
geometry- the geometry to writebuf- the buffer to write into
-