private List<? extends PolyLine> processResult(final Geometry intersections) { final List<PolyLine> result = new ArrayList<>(); if (intersections instanceof GeometryCollection) { final GeometryCollection collection = (GeometryCollection) intersections; final int numGeometries = collection.getNumGeometries(); for (int n = 0; n < numGeometries; n++) { final Geometry geometry = collection.getGeometryN(n); result.addAll(processResult(geometry)); } } else if (intersections instanceof com.vividsolutions.jts.geom.Polygon) { result.add(new JtsPolygonConverter() .backwardConvert((com.vividsolutions.jts.geom.Polygon) intersections)); } else if (intersections instanceof LineString) { result.add(new JtsPolyLineConverter().backwardConvert((LineString) intersections)); } return result; } }
@Override public Polygon backwardConvert(final String wkt) { com.vividsolutions.jts.geom.Polygon geometry = null; final WKTReader myReader = new WKTReader(); try { geometry = (com.vividsolutions.jts.geom.Polygon) myReader.read(wkt); } catch (final ParseException | ClassCastException e) { throw new CoreException("Cannot parse wkt : {}", wkt); } return new JtsPolygonConverter().backwardConvert(geometry); }
@Override public Polygon backwardConvert(final byte[] wkb) { com.vividsolutions.jts.geom.Polygon geometry = null; final WKBReader myReader = new WKBReader(); try { geometry = (com.vividsolutions.jts.geom.Polygon) myReader.read(wkb); } catch (final ParseException | ClassCastException e) { throw new CoreException("Cannot parse wkb : {}", WKBWriter.toHex(wkb)); } return new JtsPolygonConverter().backwardConvert(geometry); }
.backwardConvert((Polygon) geometry); return atlas.subAtlas(polygon, cutType);
@Override public MultiPolygon backwardConvert(final Set<com.vividsolutions.jts.geom.Polygon> object) { final MultiMap<Polygon, Polygon> result = new MultiMap<>(); for (final com.vividsolutions.jts.geom.Polygon polygon : object) { final Polygon outer = POLYGON_CONVERTER.backwardConvert(polygon); if (outer == null) { continue; } for (int n = 0; n < polygon.getNumInteriorRing(); n++) { final LinearRing ring = new LinearRing( polygon.getInteriorRingN(n).getCoordinateSequence(), FACTORY); final Polygon inner = LINEAR_RING_CONVERTER.backwardConvert(ring); result.add(outer, inner); } if (polygon.getNumInteriorRing() == 0) { // Make sure the outer still exists if the inners are not there. result.put(outer, new ArrayList<>()); } } return new MultiPolygon(result); }
.backwardConvert((Polygon) geometry); final Iterable<? extends Shard> shards = sharding.shards(polygon); for (final Shard shard : shards)