Try to speedup pt calculation
This commit is contained in:
parent
50bdc0083d
commit
bb509f9ab6
3 changed files with 9 additions and 4 deletions
|
@ -103,6 +103,7 @@ public class TransportRoutePlanner {
|
||||||
}
|
}
|
||||||
sgms.clear();
|
sgms.clear();
|
||||||
sgms = ctx.getTransportStops(stop.x31, stop.y31, true, sgms);
|
sgms = ctx.getTransportStops(stop.x31, stop.y31, true, sgms);
|
||||||
|
ctx.visitedStops++;
|
||||||
for (TransportRouteSegment sgm : sgms) {
|
for (TransportRouteSegment sgm : sgms) {
|
||||||
if (ctx.calculationProgress != null && ctx.calculationProgress.isCancelled) {
|
if (ctx.calculationProgress != null && ctx.calculationProgress.isCancelled) {
|
||||||
return null;
|
return null;
|
||||||
|
@ -200,9 +201,11 @@ public class TransportRoutePlanner {
|
||||||
private List<TransportRouteResult> prepareResults(TransportRoutingContext ctx, List<TransportRouteSegment> results) {
|
private List<TransportRouteResult> prepareResults(TransportRoutingContext ctx, List<TransportRouteSegment> results) {
|
||||||
Collections.sort(results, new SegmentsComparator(ctx));
|
Collections.sort(results, new SegmentsComparator(ctx));
|
||||||
List<TransportRouteResult> lst = new ArrayList<TransportRouteResult>();
|
List<TransportRouteResult> lst = new ArrayList<TransportRouteResult>();
|
||||||
System.out.println(String.format("Calculated %.1f seconds, found %d results, visited %d routes, loaded %d tiles (%d ms read, %d ms total),",
|
System.out.println(String.format("Calculated %.1f seconds, found %d results, visited %d routes / %d stops, loaded %d tiles (%d ms read, %d ms total), loaded ways %d (%d wrong)",
|
||||||
(System.currentTimeMillis() - ctx.startCalcTime) / 1000.0, results.size(), ctx.visitedRoutesCount,
|
(System.currentTimeMillis() - ctx.startCalcTime) / 1000.0, results.size(),
|
||||||
ctx.quadTree.size(), ctx.readTime / (1000 * 1000), ctx.loadTime / (1000 * 1000)));
|
ctx.visitedRoutesCount, ctx.visitedStops,
|
||||||
|
ctx.quadTree.size(), ctx.readTime / (1000 * 1000), ctx.loadTime / (1000 * 1000),
|
||||||
|
ctx.loadedWays, ctx.wrongLoadedWays));
|
||||||
for(TransportRouteSegment res : results) {
|
for(TransportRouteSegment res : results) {
|
||||||
if (ctx.calculationProgress != null && ctx.calculationProgress.isCancelled) {
|
if (ctx.calculationProgress != null && ctx.calculationProgress.isCancelled) {
|
||||||
return null;
|
return null;
|
||||||
|
@ -650,6 +653,7 @@ public class TransportRoutePlanner {
|
||||||
// stats
|
// stats
|
||||||
public long startCalcTime;
|
public long startCalcTime;
|
||||||
public int visitedRoutesCount;
|
public int visitedRoutesCount;
|
||||||
|
public int visitedStops;
|
||||||
public int wrongLoadedWays;
|
public int wrongLoadedWays;
|
||||||
public int loadedWays;
|
public int loadedWays;
|
||||||
public long loadTime;
|
public long loadTime;
|
||||||
|
|
|
@ -4,7 +4,7 @@ public class TransportRoutingConfiguration {
|
||||||
|
|
||||||
public static final String KEY = "public_transport";
|
public static final String KEY = "public_transport";
|
||||||
|
|
||||||
public int ZOOM_TO_LOAD_TILES = 14;
|
public int ZOOM_TO_LOAD_TILES = 15;
|
||||||
|
|
||||||
public int walkRadius = 1500; // ? 3000
|
public int walkRadius = 1500; // ? 3000
|
||||||
|
|
||||||
|
|
|
@ -112,6 +112,7 @@ public class MapUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets distance in meters
|
* Gets distance in meters
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue