added export for corrected via points
This commit is contained in:
parent
e3361cc113
commit
2682981da9
@ -61,7 +61,9 @@ public final class OsmTrack {
|
||||
public String name = "unset";
|
||||
|
||||
protected List<MatchedWaypoint> matchedWaypoints;
|
||||
protected List<OsmNodeNamed> correctedWaypoints;
|
||||
public boolean exportWaypoints = false;
|
||||
public boolean exportCorrectedWaypoints = false;
|
||||
|
||||
public void addNode(OsmPathElement node) {
|
||||
nodes.add(0, node);
|
||||
|
||||
@ -221,6 +221,7 @@ public final class RoutingContext {
|
||||
|
||||
public String outputFormat = "gpx";
|
||||
public boolean exportWaypoints = false;
|
||||
public boolean exportCorrectedWaypoints = false;
|
||||
|
||||
public OsmPrePath firstPrePath;
|
||||
|
||||
|
||||
@ -41,6 +41,7 @@ public class RoutingEngine extends Thread {
|
||||
private boolean finished = false;
|
||||
|
||||
protected List<OsmNodeNamed> waypoints = null;
|
||||
protected List<OsmNodeNamed> correctedWaypoints = null;
|
||||
List<OsmNodeNamed> extraWaypoints = null;
|
||||
protected List<MatchedWaypoint> matchedWaypoints;
|
||||
private int linksProcessed = 0;
|
||||
@ -262,6 +263,7 @@ public class RoutingEngine extends Thread {
|
||||
}
|
||||
oldTrack = null;
|
||||
track.exportWaypoints = routingContext.exportWaypoints;
|
||||
track.exportCorrectedWaypoints = routingContext.exportCorrectedWaypoints;
|
||||
filename = outfileBase + i + "." + routingContext.outputFormat;
|
||||
switch (routingContext.outputFormat) {
|
||||
case "gpx":
|
||||
@ -975,6 +977,10 @@ public class RoutingEngine extends Thread {
|
||||
hasDirectRouting = true;
|
||||
}
|
||||
}
|
||||
for (MatchedWaypoint mwp : matchedWaypoints) {
|
||||
//System.out.println(FormatGpx.getWaypoint(mwp.waypoint.ilon, mwp.waypoint.ilat, mwp.name, null));
|
||||
//System.out.println(FormatGpx.getWaypoint(mwp.crosspoint.ilon, mwp.crosspoint.ilat, mwp.name+"_cp", null));
|
||||
}
|
||||
|
||||
routingContext.hasDirectRouting = hasDirectRouting;
|
||||
|
||||
@ -1030,6 +1036,7 @@ public class RoutingEngine extends Thread {
|
||||
|
||||
matchedWaypoints.get(matchedWaypoints.size() - 1).indexInTrack = totaltrack.nodes.size() - 1;
|
||||
totaltrack.matchedWaypoints = matchedWaypoints;
|
||||
totaltrack.correctedWaypoints = correctedWaypoints;
|
||||
totaltrack.processVoiceHints(routingContext);
|
||||
totaltrack.prepareSpeedProfile(routingContext);
|
||||
|
||||
@ -1183,6 +1190,13 @@ public class RoutingEngine extends Thread {
|
||||
|
||||
setNewVoiceHint(t, last, lastJunctions, newJunction, newTarget);
|
||||
|
||||
if (correctedWaypoints == null) correctedWaypoints = new ArrayList<>();
|
||||
OsmNodeNamed n = new OsmNodeNamed();
|
||||
n.ilon = newJunction.getILon();
|
||||
n.ilat = newJunction.getILat();
|
||||
n.name = startWp.name + "_corr";
|
||||
correctedWaypoints.add(n);
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
||||
@ -227,6 +227,8 @@ public class RoutingParamCollector {
|
||||
}
|
||||
} else if (key.equals("exportWaypoints")) {
|
||||
rctx.exportWaypoints = (Integer.parseInt(value) == 1);
|
||||
} else if (key.equals("exportCorrectedWaypoints")) {
|
||||
rctx.exportCorrectedWaypoints = (Integer.parseInt(value) == 1);
|
||||
} else if (key.equals("format")) {
|
||||
rctx.outputFormat = ((String) value).toLowerCase();
|
||||
} else if (key.equals("trackFormat")) {
|
||||
|
||||
@ -161,6 +161,7 @@ public class BRouterWorker {
|
||||
track = cr.getFoundTrack();
|
||||
if (track != null) {
|
||||
track.exportWaypoints = rc.exportWaypoints;
|
||||
track.exportCorrectedWaypoints = rc.exportCorrectedWaypoints;
|
||||
if (pathToFileResult == null) {
|
||||
switch (writeFromat) {
|
||||
case OUTPUT_FORMAT_KML:
|
||||
|
||||
@ -78,6 +78,10 @@ public class ServerHandler extends RequestHandler {
|
||||
if (exportWaypointsStr != null && Integer.parseInt(exportWaypointsStr) != 0) {
|
||||
track.exportWaypoints = true;
|
||||
}
|
||||
exportWaypointsStr = params.get("exportCorrectedWaypoints");
|
||||
if (exportWaypointsStr != null && Integer.parseInt(exportWaypointsStr) != 0) {
|
||||
track.exportCorrectedWaypoints = true;
|
||||
}
|
||||
|
||||
if (format == null || "gpx".equals(format)) {
|
||||
result = new FormatGpx(rc).format(track);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user