Hallo,

GraphHopper kann das auch, wenn man eine Anfrage mit einem Custom Model (geht nur als HTTP-Post-Anfrage) verfasst:

{
  "profile": "truck",
  "points": [[{LON1},{LAT1}],[{LON2},{LAT2}]],
  "custom_model": {
    "speed": [{
      "if": "MAXWEIGHT < 16",
      "multiply_by": "0.0"
    },
    {
      "if": "MAXHEIGHT < 3.5",
      "multiply_by": "0.0"
    }]
  }
}

Die obige Anfrage wird für Kanten mit einer Durchfahrtshöhe von weniger als 3,5 m oder einer Gewichtsbeschränkung von weniger 16 Tonnen die Geschwindigkeit mit 0.0 multiplizieren (d.h. unendliche Reisezeit, also unendliche Kosten).

Das kann man auch über die Weboberfläche von GraphHopper so eingeben (etwas versteckt). Wenn man seine eigene GraphHopper-Instanz hostet, kann man auch ein Routingprofil mit diesem Kostenmodell fest konfigurieren und auch Contraction Hierarchies als Berechnungsbeschleunigung für dieses Profil aktivieren.

Viele Grüße

Michael, der GraphHopper für zahlende Kundschaft hostet