public void findHull() { LOG.info("finding hull of graph..."); LOG.debug("using only stops? {}", useOnlyStops); if (bufferMeters < prototypeRoutingRequest.maxWalkDistance) LOG.warn("geographic filter buffer is smaller than max walk distance, this will probably yield incorrect results."); Graph graph= graphService.getRouter(prototypeRoutingRequest.routerId).graph; List<Geometry> geometries = new ArrayList<Geometry>(); for (Vertex v : graph.getVertices()) { if (useOnlyStops && ! (v instanceof TransitStop)) continue; Point pt = gf.createPoint(v.getCoordinate()); Geometry geom = crudeProjectedBuffer(pt, bufferMeters); geometries.add(geom); } Geometry multiGeom = gf.buildGeometry(geometries); LOG.info("unioning hull..."); hull = multiGeom.union(); LOG.trace("hull is {}", hull.toText()); // may lead to false rejections // DouglasPeuckerSimplifier simplifier = new DouglasPeuckerSimplifier(); }
Geometry u = geometryFactory.createMultiPolygon(allRings.toArray(new Polygon[allRings .size()])); u = u.union();
Collection<Geometry> buffers = bufferLists.get(threshold); geom = geom.union(); // combine all individual buffers in this contour into one if ( ! resultsProjected) geom = JTS.transform(geom, fromMeters); contours.put(threshold, geom);
/** * Computes the union of two geometries, * either of both of which may be null. * * @param g0 a Geometry * @param g1 a Geometry * @return the union of the input(s) * or null if both inputs are null */ private Geometry unionWithNull(Geometry g0, Geometry g1) { if (g0 == null && g1 == null) return null; if (g1 == null) return g0; if (g0 == null) return g1; return g0.union(g1); }
private Geometry repeatedUnion(List geoms) { Geometry union = null; for (Iterator i = geoms.iterator(); i.hasNext(); ) { Geometry g = (Geometry) i.next(); if (union == null) union = (Geometry) g.clone(); else union = union.union(g); } return union; }
/** * Encapsulates the actual unioning of two polygonal geometries. * * @param g0 * @param g1 * @return */ private Geometry unionActual(Geometry g0, Geometry g1) { /* System.out.println(g0.getNumGeometries() + ", " + g1.getNumGeometries()); if (g0.getNumGeometries() > 5) { System.out.println(g0); System.out.println(g1); } */ //return bufferUnion(g0, g1); return restrictToPolygons(g0.union(g1)); }
/** * Computes the set-theoretic union of two {@link Geometry}s, using enhanced precision. * @param geom0 the first Geometry * @param geom1 the second Geometry * @return the Geometry representing the set-theoretic union of the input Geometries. */ public Geometry union(Geometry geom0, Geometry geom1) { Geometry[] geom = removeCommonBits(geom0, geom1); return computeResultPrecision(geom[0].union(geom[1])); }
public double measure(Geometry g1, Geometry g2) { double areaInt = g1.intersection(g2).getArea(); double areaUnion = g1.union(g2).getArea(); return areaInt / areaUnion; }
Geometry result = geom0.union(geom1); return result;
Geometry union = int0.union(int1);
/** * @param a Geometry instance. * @param b Geometry instance * @return union of Geometries a and b */ public static Geometry union(Geometry a,Geometry b) { if(a==null || b==null) { return null; } return a.union(b); }
static public Geometry union(Geometry arg0,Geometry arg1) { if (arg0 == null || arg1 == null) return null; Geometry _this = arg0; return _this.union(arg1); }
static public Geometry union(Geometry arg0,Geometry arg1) { Geometry _this = arg0; return _this.union(arg1); }
/** * @param a Geometry instance. * @param b Geometry instance * @return union of Geometries a and b */ public static Geometry union(Geometry a,Geometry b) { if(a==null || b==null) { return null; } return a.union(b); }
/** * @param a Geometry instance. * @param b Geometry instance * @return union of Geometries a and b */ public static Geometry union(Geometry a,Geometry b) { if(a==null || b==null) { return null; } return a.union(b); }
private Geometry repeatedUnion(List geoms) { Geometry union = null; for (Iterator i = geoms.iterator(); i.hasNext(); ) { Geometry g = (Geometry) i.next(); if (union == null) union = (Geometry) g.clone(); else union = union.union(g); } return union; }
@Override public Item item(final QueryContext qc, final InputInfo ii) throws QueryException { return toElement(checkGeo(0, qc).union(checkGeo(1, qc)), qc); } }
public double measure(Geometry g1, Geometry g2) { double areaInt = g1.intersection(g2).getArea(); double areaUnion = g1.union(g2).getArea(); return areaInt / areaUnion; }
public static GeometryType union(GeometryType geom1, GeometryType geom2) throws FunctionExecutionException { Geometry g1 = getGeometry(geom1); Geometry g2 = getGeometry(geom2); return getGeometryType(g1.union(g2)); }
public static GeometryType union(GeometryType geom1, GeometryType geom2) throws FunctionExecutionException { Geometry g1 = getGeometry(geom1); Geometry g2 = getGeometry(geom2); return getGeometryType(g1.union(g2), geom1.getSrid()); }