private void polygon(final JsonGenerator jgen, final Polygon polygon) throws IOException { if (!polygon.getExterior().isEmpty()) { jgen.writeStartArray(); lineString(jgen, polygon.getExterior()); jgen.writeEndArray(); } if (!polygon.getInterior().isEmpty()) { jgen.writeStartArray(); lineString(jgen, polygon.getInterior()); jgen.writeEndArray(); } }
private void writeGeoPolygon(JsonGenerator json, final Polygon polygon) throws IOException { json.writeStartArray(); writeGeoPoints(json, polygon.getExterior()); json.writeEndArray(); if (!polygon.getInterior().isEmpty()) { json.writeStartArray(); writeGeoPoints(json, polygon.getInterior()); json.writeEndArray(); } }
private void polygons(final XMLStreamWriter writer, final Iterator<Polygon> itor, final boolean wrap) throws XMLStreamException { while (itor.hasNext()) { final Polygon polygon = itor.next(); if (wrap) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON, Constants.NS_GML); } if (!polygon.getExterior().isEmpty()) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_EXTERIOR, Constants.NS_GML); writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_LINEARRING, Constants.NS_GML); points(writer, polygon.getExterior().iterator(), false); writer.writeEndElement(); writer.writeEndElement(); } if (!polygon.getInterior().isEmpty()) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_INTERIOR, Constants.NS_GML); writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_LINEARRING, Constants.NS_GML); points(writer, polygon.getInterior().iterator(), false); writer.writeEndElement(); writer.writeEndElement(); } if (wrap) { writer.writeEndElement(); } } }
private void polygons(final XMLStreamWriter writer, final Iterator<Polygon> itor, final boolean wrap) throws XMLStreamException { while (itor.hasNext()) { final Polygon polygon = itor.next(); if (wrap) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON, Constants.NS_GML); } if (!polygon.getExterior().isEmpty()) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_EXTERIOR, Constants.NS_GML); writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_LINEARRING, Constants.NS_GML); points(writer, polygon.getExterior().iterator(), false); writer.writeEndElement(); writer.writeEndElement(); } for (int i = 0; i < polygon.getNumberOfInteriorRings(); i++) { writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_INTERIOR, Constants.NS_GML); writer.writeStartElement(Constants.PREFIX_GML, Constants.ELEM_POLYGON_LINEARRING, Constants.NS_GML); points(writer, polygon.getInterior(i).iterator(), false); writer.writeEndElement(); writer.writeEndElement(); } if (wrap) { writer.writeEndElement(); } } }
static private com.vividsolutions.jts.geom.Polygon convertPolygon( Polygon polygon) throws AssertionError { Coordinate[] coords = convertLineStringToPoints(polygon.getExterior()); LinearRing shell = GeometryUtils.GEOMETRY_FACTORY.createLinearRing(coords); LinearRing[] holes = null; if (polygon.getInterior() != null && polygon.getInterior().isEmpty()) { holes = new LinearRing[1]; holes[0] = GeometryUtils.GEOMETRY_FACTORY.createLinearRing(convertLineStringToPoints(polygon.getExterior())); } return GeometryUtils.GEOMETRY_FACTORY.createPolygon(shell, holes); }
static private com.vividsolutions.jts.geom.Polygon convertPolygon( Polygon polygon) throws AssertionError { Coordinate[] coords = convertLineStringToPoints(polygon.getExterior()); LinearRing shell = GeometryUtils.GEOMETRY_FACTORY.createLinearRing(coords); LinearRing[] holes = null; if (polygon.getInterior() != null && polygon.getInterior().isEmpty()) { holes = new LinearRing[1]; holes[0] = GeometryUtils.GEOMETRY_FACTORY.createLinearRing(convertLineStringToPoints(polygon.getExterior())); } return GeometryUtils.GEOMETRY_FACTORY.createPolygon(shell, holes); }