public static Geometry makeBuffer(Graph graph) { Geometry geom = geometryCollectionFromVertices(graph).buffer(.04, 6); DouglasPeuckerSimplifier simplifier = new DouglasPeuckerSimplifier(geom); simplifier.setDistanceTolerance(0.00001); return simplifier.getResultGeometry(); }
public static Geometry simplify(Geometry geom, double distanceTolerance) { DouglasPeuckerSimplifier tss = new DouglasPeuckerSimplifier(geom); tss.setDistanceTolerance(distanceTolerance); return tss.getResultGeometry(); }
/** * Simplifies a geometry using a given tolerance. * * @param geom geometry to simplify * @param distanceTolerance the tolerance to use * @return a simplified version of the geometry */ public static Geometry simplify(Geometry geom, double distanceTolerance) { DouglasPeuckerSimplifier tss = new DouglasPeuckerSimplifier(geom); tss.setDistanceTolerance(distanceTolerance); return tss.getResultGeometry(); }
public static GeometryType simplify( GeometryType geom, double tolerance) throws FunctionExecutionException { DouglasPeuckerSimplifier douglasPeuckerSimplifier = new DouglasPeuckerSimplifier(getGeometry(geom)); douglasPeuckerSimplifier.setEnsureValid(false); douglasPeuckerSimplifier.setDistanceTolerance(tolerance); Geometry resultGeometry = douglasPeuckerSimplifier.getResultGeometry(); return getGeometryType(resultGeometry); }
public static GeometryType simplify( GeometryType geom, double tolerance) throws FunctionExecutionException { DouglasPeuckerSimplifier douglasPeuckerSimplifier = new DouglasPeuckerSimplifier(getGeometry(geom)); douglasPeuckerSimplifier.setEnsureValid(false); douglasPeuckerSimplifier.setDistanceTolerance(tolerance); Geometry resultGeometry = douglasPeuckerSimplifier.getResultGeometry(); return getGeometryType(resultGeometry, geom.getSrid()); }
public static GeometryType simplify( GeometryType geom, double tolerance) throws FunctionExecutionException { DouglasPeuckerSimplifier douglasPeuckerSimplifier = new DouglasPeuckerSimplifier(getGeometry(geom)); douglasPeuckerSimplifier.setEnsureValid(false); douglasPeuckerSimplifier.setDistanceTolerance(tolerance); Geometry resultGeometry = douglasPeuckerSimplifier.getResultGeometry(); return getGeometryType(resultGeometry, geom.getSrid()); }
@Override public void plot(Canvas canvas, Shape shape) { double density = canvas.getInputMBR().getWidth() * canvas.getInputMBR().getHeight() / ((double) canvas.getWidth() * canvas.getHeight()); OSMPolygon shape2 = (OSMPolygon)shape; Rectangle lakeMBR = shape2.getMBR(); if (lakeMBR.getWidth() * lakeMBR.getHeight() / density > 1.0) { SVGCanvas svgLayer = (SVGCanvas) canvas; try { DouglasPeuckerSimplifier simplifier = new DouglasPeuckerSimplifier(shape2.geom); simplifier.setDistanceTolerance(density); svgLayer.drawShape((int) shape2.id, simplifier.getResultGeometry()); } catch (Exception e) { // Skip } } }