@Override public Point getRandomNode(RandomGenerator generator) { return delegate.getRandomNode(generator); }
@Override public Point getRandomNode(RandomGenerator generator) { return delegate.getRandomNode(generator); }
@Override public Point getRandomPosition(RandomGenerator rnd) { return graph.getRandomNode(rnd); }
@Test(expected = IllegalStateException.class) public void randomNodeEmptyGraph() { graph.getRandomNode(new MersenneTwister(234)); }
@Override public ImmutableList<AddParcelEvent> generate(long seed, TravelTimes travelModel, long endTime) { rng.setSeed(seed); final ImmutableList.Builder<AddParcelEvent> eventList = ImmutableList .builder(); final List<Double> times = announceTimeGenerator.generate(rng.nextLong()); final ImmutableList.Builder<Point> locsB = ImmutableList.builder(); for (int i = 0; i < times.size() * 2; i++) { locsB.add(graph.getRandomNode(rng)); } final Iterator<Point> locs = locsB.build().iterator(); for (final double time : times) { final long arrivalTime = DoubleMath.roundToLong(time, RoundingMode.FLOOR); final Point origin = locs.next(); final Point destination = locs.next(); checkEndTime(time, endTime); final Parcel.Builder parcelBuilder = Parcel .builder(origin, destination) .orderAnnounceTime(arrivalTime) .pickupDuration(pickupDurationGenerator.get(rng.nextLong())) .deliveryDuration(deliveryDurationGenerator.get(rng.nextLong())) .neededCapacity(neededCapacityGenerator.get(rng.nextLong())); timeWindowGenerator.generate(rng.nextLong(), parcelBuilder, travelModel, endTime); eventList.add(AddParcelEvent.create(parcelBuilder.buildDTO())); } return eventList.build(); }
@Test public void testRandomNode() { final RandomGenerator rnd = new MersenneTwister(456); for (int i = 0; i < 500; i++) { Graphs.addBiPath(graph, new Point(rnd.nextInt(), rnd.nextInt()), new Point(rnd.nextInt(), rnd.nextInt())); } final Graph<LengthData> unmod = Graphs.unmodifiableGraph(graph); final Point p1 = graph.getRandomNode(new MersenneTwister(123)); final Point p2 = unmod.getRandomNode(new MersenneTwister(123)); assertEquals(p1, p2); }
boolean flag = false; try { graph.getRandomNode(rg); } catch (final IllegalStateException e) { flag = true;
endTime * .8, RoundingMode.FLOOR)); b.addEvent(AddParcelEvent.create(Parcel .builder(g.getRandomNode(rng), g.getRandomNode(rng)) .orderAnnounceTime(announceTime) .pickupTimeWindow(TimeWindow.create(announceTime, endTime))