appendPolygonText method
void
appendPolygonText()
Converts a Polygon
to <Polygon Text> format, then
appends it to the writer.
@param polygon the Polygon
to process
@param useFormatting flag indicating that
@param level the indentation level
@param indentFirst flag indicating that the first {@code Coordinate} of the sequence should be indented for
better visibility
@param writer the output writer to append to
@param formatter the formatter to use for writing ordinate values.
Implementation
void appendPolygonText(
Polygon polygon,
List<Ordinate> outputOrdinates,
bool useFormatting,
int level,
bool indentFirst,
StringBuffer writer,
NumberFormat formatter) {
if (polygon.isEmpty()) {
writer.write("EMPTY");
} else {
if (indentFirst) indent(useFormatting, level, writer);
writer.write("(");
appendSequenceText(polygon.getExteriorRing().getCoordinateSequence(),
outputOrdinates, useFormatting, level, false, writer, formatter);
for (int i = 0; i < polygon.getNumInteriorRing(); i++) {
writer.write(", ");
appendSequenceText(polygon.getInteriorRingN(i).getCoordinateSequence(),
outputOrdinates, useFormatting, level + 1, true, writer, formatter);
}
writer.write(")");
}
}