/** * Filter ways but do not analyze properties wayNodes will be filled with participating node * ids. * <p> * * @return true the current xml entry is a way entry and has nodes */ boolean filterWay(ReaderWay item) { // ignore broken geometry if (item.getNodes().size() < 2) return false; // ignore multipolygon geometry if (!item.hasTags()) return false; return encodingManager.acceptWay(item) > 0; }
long includeWay = encodingManager.acceptWay(way); if (includeWay == 0) return;
private Graph generatePathDetailsGraph() { final Graph g = new GraphBuilder(carManager).create(); final NodeAccess na = g.getNodeAccess(); na.setNode(1, 52.514, 13.348); na.setNode(2, 52.514, 13.349); na.setNode(3, 52.514, 13.350); na.setNode(4, 52.515, 13.349); na.setNode(5, 52.516, 13.3452); ReaderWay w = new ReaderWay(1); w.setTag("highway", "tertiary"); w.setTag("maxspeed", "50"); EdgeIteratorState tmpEdge; tmpEdge = g.edge(1, 2, 5, true).setName("1-2"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(4, 5, 5, true).setName("4-5"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); w.setTag("maxspeed", "100"); tmpEdge = g.edge(2, 3, 5, true).setName("2-3"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); w.setTag("maxspeed", "10"); tmpEdge = g.edge(3, 4, 10, true).setName("3-4"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); return g; }
@Test public void testRoutingFailsWithInvalidGraph_issue665() { GraphHopperStorage graph = new GraphHopperStorage( new RAMDirectory(), em, true, new GraphExtension.NoOpExtension()); graph.create(100); ReaderWay way = new ReaderWay(0); way.setTag("route", "ferry"); long includeWay = em.acceptWay(way); long relationFlags = 0; long wayFlags = em.handleWayTags(way, includeWay, relationFlags); graph.edge(0, 1).setDistance(247).setFlags(wayFlags); assertTrue(isGraphValid(graph, encoder)); }
@Test public void testCombination() { ReaderWay way = new ReaderWay(123); way.setTag("highway", "cycleway"); way.setTag("sac_scale", "hiking"); long flags = em.acceptWay(way); long edgeFlags = em.handleWayTags(way, flags, 0); assertFalse(encoder.isBackward(edgeFlags)); assertFalse(encoder.isForward(edgeFlags)); assertTrue(em.getEncoder("bike").isBackward(edgeFlags)); assertTrue(em.getEncoder("bike").isForward(edgeFlags)); }
tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(1, 2, 11000, true).setName("1-2"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(1, 4, 10000, true).setName("1-4"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(2, 5, 11000, true).setName("5-2"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(4, 7, 10000, true).setName("4-7"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(5, 8, 10000, true).setName("5-8"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(7, 8, 10000, true); PointList list = new PointList(); tmpEdge.setWayGeometry(list); tmpEdge.setName("7-8"); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge.setFlags(carManager.handleWayTags(w, carManager.acceptWay(w), 0)); tmpEdge = g.edge(8, 9, 20000, true); list.clear(); tmpEdge.setName("8-9");
/** * Filter ways but do not analyze properties wayNodes will be filled with participating node * ids. * <p> * @return true the current xml entry is a way entry and has nodes */ boolean filterWay( OSMWay item ) { // ignore broken geometry if (item.getNodes().size() < 2) return false; // ignore multipolygon geometry if (!item.hasTags()) return false; return encodingManager.acceptWay(item) > 0; }
/** * Filter ways but do not analyze properties wayNodes will be filled with participating node * ids. * <p> * * @return true the current xml entry is a way entry and has nodes */ boolean filterWay(ReaderWay item) { // ignore broken geometry if (item.getNodes().size() < 2) return false; // ignore multipolygon geometry if (!item.hasTags()) return false; return encodingManager.acceptWay(item) > 0; }
/** * Filter ways but do not analyze properties wayNodes will be filled with participating node * ids. * <p> * * @return true the current xml entry is a way entry and has nodes */ boolean filterWay(ReaderWay item) { // ignore broken geometry if (item.getNodes().size() < 2) return false; // ignore multipolygon geometry if (!item.hasTags()) return false; return encodingManager.acceptWay(item) > 0; }
long includeWay = encodingManager.acceptWay(way); if (includeWay == 0) { return;
long includeWay = encodingManager.acceptWay(way); if (includeWay == 0) return;
long includeWay = encodingManager.acceptWay(way); if (includeWay == 0) return;
long includeWay = encodingManager.acceptWay(way); if (includeWay == 0) return;