public Geometry buffer(double distance) { return lineString.buffer(distance); }
public Geometry buffer(double distance, int quadrantSegments) { return lineString.buffer(distance, quadrantSegments); }
public Geometry buffer(double distance, int quadrantSegments, int endCapStyle) { return lineString.buffer(distance, quadrantSegments, endCapStyle); }
private void joinStreets2Addresses() { for (JSONObject strtJSON : street2bndries.keySet()) { LineString ls = GeoJsonWriter.getLineStringGeometry( strtJSON.getJSONObject("geometry").getJSONArray("coordinates")); @SuppressWarnings("deprecation") Geometry buffer = ls.buffer(STREET_BUFFER_DISTANCE, 2, BufferOp.CAP_ROUND); if(buffer instanceof Polygon) { many2ManyJoin(strtJSON, (Polygon) buffer, addr2streets, addrPointsIndex); } else if(buffer instanceof MultiPolygon) { for(int i = 0; i < buffer.getNumGeometries(); i++) { Polygon p = (Polygon) buffer.getGeometryN(i); if(p.isValid()) { many2ManyJoin(strtJSON, p, addr2streets, addrPointsIndex); } } } } }
Geometry buffered=l.buffer(buffer*bufferMultiplier); if(buffered instanceof Polygon) { Polygon poly=(Polygon)decimate(buffered);
Geometry buffer = bufferCache.get(i); if (buffer == null) { buffer = cleaned.buffer(2); bufferCache.set(i, buffer);
public void execute(SplitPolygonRequest request, SplitPolygonResponse response) throws Exception { // convert to most accurate precision model Polygon polygon = null; try { polygon = (Polygon) converter.toJts(request.getPolygon()); } catch (Exception e) { // throw new GeomajasException(); } GeometryFactory factory = new GeometryFactory(new PrecisionModel(), polygon.getFactory().getSRID()); Polygon p = (Polygon) factory.createGeometry(polygon); LineString l = (LineString) factory.createGeometry(converter.toJts(request.getLineString())); int precision = 11; com.vividsolutions.jts.geom.Geometry buffered = factory.createGeometryCollection(null); while (buffered.isEmpty()) { buffered = l.buffer(Math.pow(10.0, -(precision--))); } com.vividsolutions.jts.geom.Geometry diff = p.difference(buffered); if (diff instanceof Polygon) { response.setPolygons(new Geometry[] {converter.toDto(diff)}); } else if (diff instanceof MultiPolygon) { Geometry[] polygons = new Geometry[diff.getNumGeometries()]; for (int i = 0; i < diff.getNumGeometries(); i++) { polygons[i] = converter.toDto(diff.getGeometryN(i)); // makePrecise(polygon.getPrecisionModel(), polygons[i]); } response.setPolygons(polygons); } }
j++; Geometry expected = gf.createLineString(array).buffer(distance); SimpleFeature sf = iterator.next(); assertTrue(expected.equals((Geometry) sf.getDefaultGeometry()));