Skip to content
Snippets Groups Projects

Routing algorithm

Merged yolas01 requested to merge routing_algorithm into main
8 unresolved threads
11 files
+ 639
11
Compare changes
  • Side-by-side
  • Inline
Files
11
@@ -4,13 +4,17 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import de.fuberlin.navigator.routingserver.model.AdressRequest;
import de.fuberlin.navigator.routingserver.model.MapMatcher;
import de.fuberlin.navigator.routingserver.model.Coordinates;
import de.fuberlin.navigator.routingserver.model.RoutingRequest;
import de.fuberlin.navigator.routingserver.utility.ApplyShortestPath;
import de.fuberlin.navigator.routingserver.utility.MapMatcher;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import java.io.IOException;
import java.util.List;
@RestController
public class RoutingController {
@@ -29,10 +33,18 @@ public class RoutingController {
public ArrayNode route(@RequestBody RoutingRequest routingRequest) {
log("/route", RequestMethod.POST, MediaType.APPLICATION_JSON, routingRequest);
//TODO real route generation
//route generation
List<Coordinates> path = ApplyShortestPath.getShortestPath(routingRequest);
ArrayNode arrayNode = mapper.createArrayNode();
arrayNode.add(
for (Coordinates coordinate : path) {
arrayNode.add(
mapper.createArrayNode()
.add(coordinate.getLat())
.add(coordinate.getLon())
);
}
/*arrayNode.add(
mapper.createArrayNode()
.add(50.34565)
.add(8.14056)
@@ -46,11 +58,12 @@ public class RoutingController {
mapper.createArrayNode()
.add(50.34551)
.add(8.13901)
);
);*/
return arrayNode;
}
/**
* Method is a dummy for now. Answers with a coordinate pair
* @return JSON coordinate pair
@@ -63,15 +76,15 @@ public class RoutingController {
log("/adressmatching", RequestMethod.POST, MediaType.APPLICATION_JSON, adressRequest);
// resolve adress with map matching method
double[] coordinates = MapMatcher.getCoordinates(adressRequest.getAdress());
Coordinates coordinates = MapMatcher.getCoordinates(adressRequest.getAdress());
ObjectNode objectNode = mapper.createObjectNode();
objectNode.put("coordinates",
mapper.createObjectNode()
.put("lat",coordinates[0])
.put("lon",coordinates[1])
.put("lat",coordinates.getLat())
.put("lon",coordinates.getLon())
);
objectNode.put("error_code", 0);
Loading