diff --git a/CHANGELOG.md b/CHANGELOG.md index 045cf951e..6559d22fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ - Changes from 5.20.0 - Features: - ADDED: all waypoints in responses now contain a distance property between the original coordinate and the snapped location. [#5255](https://github.com/Project-OSRM/osrm-backend/pull/5255) - - ADDED: if `fallback_speed` is used, a new structure `estimated_cells` will describe which cells contain estimated values [#5259](https://github.com/Project-OSRM/osrm-backend/pull/5259) + - ADDED: if `fallback_speed` is used, a new structure `fallback_speed_cells` will describe which cells contain estimated values [#5259](https://github.com/Project-OSRM/osrm-backend/pull/5259) - Table: - ADDED: new parameter `scale_factor` which will scale the cell `duration` values by this factor. [#5298](https://github.com/Project-OSRM/osrm-backend/pull/5298) diff --git a/docs/http.md b/docs/http.md index 314e8008a..56c290512 100644 --- a/docs/http.md +++ b/docs/http.md @@ -284,7 +284,7 @@ curl 'http://router.project-osrm.org/table/v1/driving/13.388860,52.517037;13.397 the i-th waypoint to the j-th waypoint. Values are given in meters. Can be `null` if no route between `i` and `j` can be found. Note that computing the `distances` table is currently only implemented for CH. If `annotations=distance` or `annotations=duration,distance` is requested when running a MLD router, a `NotImplemented` error will be returned. - `sources` array of `Waypoint` objects describing all sources in order - `destinations` array of `Waypoint` objects describing all destinations in order -- `estimated_cells` (optional) array of arrays containing `i,j` pairs indicating which cells contain estimated values based on `fallback_speed`. Will be absent if `fallback_speed` is not used. +- `fallback_speed_cells` (optional) array of arrays containing `i,j` pairs indicating which cells contain estimated values based on `fallback_speed`. Will be absent if `fallback_speed` is not used. In case of error the following `code`s are supported in addition to the general ones: @@ -386,7 +386,7 @@ All other properties might be undefined. 0 ] ], - "estimated_cells": [ + "fallback_speed_cells": [ [ 0, 1 ], [ 1, 0 ] ] diff --git a/docs/nodejs/api.md b/docs/nodejs/api.md index 4615618ee..ba3f18bd8 100644 --- a/docs/nodejs/api.md +++ b/docs/nodejs/api.md @@ -157,7 +157,7 @@ Returns **[Object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refer Values are given in seconds. **`sources`**: array of [`Ẁaypoint`](#waypoint) objects describing all sources in order. **`destinations`**: array of [`Ẁaypoint`](#waypoint) objects describing all destinations in order. -**`estimated_cells`**: (optional) if `fallback_speed` is used, will be an array of arrays of `row,column` values, indicating which cells contain estimated values. +**`fallback_speed_cells`**: (optional) if `fallback_speed` is used, will be an array of arrays of `row,column` values, indicating which cells contain estimated values. ### tile diff --git a/features/step_definitions/distance_matrix.js b/features/step_definitions/distance_matrix.js index e2387f3ea..594268d50 100644 --- a/features/step_definitions/distance_matrix.js +++ b/features/step_definitions/distance_matrix.js @@ -10,7 +10,7 @@ module.exports = function () { this.When(durationsRegex, function(table, callback) {tableParse.call(this, table, DURATIONS_NO_ROUTE, 'durations', callback);}.bind(this)); this.When(distancesRegex, function(table, callback) {tableParse.call(this, table, DISTANCES_NO_ROUTE, 'distances', callback);}.bind(this)); - this.When(estimatesRegex, function(table, callback) {tableParse.call(this, table, DISTANCES_NO_ROUTE, 'estimated_cells', callback);}.bind(this)); + this.When(estimatesRegex, function(table, callback) {tableParse.call(this, table, DISTANCES_NO_ROUTE, 'fallback_speed_cells', callback);}.bind(this)); }; const durationsParse = function(v) { return isNaN(parseInt(v)); }; @@ -21,7 +21,7 @@ function tableParse(table, noRoute, annotation, callback) { const parse = annotation == 'distances' ? distancesParse : (annotation == 'durations' ? durationsParse : estimatesParse); const params = this.queryParams; - params.annotations = ['durations','estimated_cells'].indexOf(annotation) !== -1 ? 'duration' : 'distance'; + params.annotations = ['durations','fallback_speed_cells'].indexOf(annotation) !== -1 ? 'duration' : 'distance'; var tableRows = table.raw(); @@ -65,7 +65,7 @@ function tableParse(table, noRoute, annotation, callback) { var json = JSON.parse(response.body); var result = {}; - if (annotation === 'estimated_cells') { + if (annotation === 'fallback_speed_cells') { result = table.raw().map(row => row.map(() => '')); json[annotation].forEach(pair => { result[pair[0]+1][pair[1]+1] = 'Y'; diff --git a/include/engine/api/table_api.hpp b/include/engine/api/table_api.hpp index 15dd6c6f2..d9ce9ca8d 100644 --- a/include/engine/api/table_api.hpp +++ b/include/engine/api/table_api.hpp @@ -48,7 +48,7 @@ class TableAPI final : public BaseAPI virtual void MakeResponse(const std::pair, std::vector> &tables, const std::vector &phantoms, - const std::vector &estimated_cells, + const std::vector &fallback_speed_cells, util::json::Object &response) const { auto number_of_sources = parameters.sources.size(); @@ -89,7 +89,7 @@ class TableAPI final : public BaseAPI if (parameters.fallback_speed != INVALID_FALLBACK_SPEED && parameters.fallback_speed > 0) { - response.values["estimated_cells"] = MakeEstimatesTable(estimated_cells); + response.values["fallback_speed_cells"] = MakeEstimatesTable(fallback_speed_cells); } response.values["code"] = "Ok"; @@ -179,10 +179,10 @@ class TableAPI final : public BaseAPI } virtual util::json::Array - MakeEstimatesTable(const std::vector &estimated_cells) const + MakeEstimatesTable(const std::vector &fallback_speed_cells) const { util::json::Array json_table; - std::for_each(estimated_cells.begin(), estimated_cells.end(), [&](const auto &cell) { + std::for_each(fallback_speed_cells.begin(), fallback_speed_cells.end(), [&](const auto &cell) { util::json::Array row; row.values.push_back(util::json::Number(cell.row)); row.values.push_back(util::json::Number(cell.column)); diff --git a/test/nodejs/table.js b/test/nodejs/table.js index 840c2c061..7f7fea006 100644 --- a/test/nodejs/table.js +++ b/test/nodejs/table.js @@ -243,7 +243,7 @@ tables.forEach(function(annotation) { }; osrm.table(options, function(err, response) { assert.equal(response[annotation].length, 2); - assert.strictEqual(response.estimated_cells, undefined); + assert.strictEqual(response.fallback_speed_cells, undefined); }); }); @@ -258,7 +258,7 @@ tables.forEach(function(annotation) { }; osrm.table(options, function(err, response) { assert.equal(response[annotation].length, 2); - assert.equal(response['estimated_cells'].length, 0); + assert.equal(response['fallback_speed_cells'].length, 0); }); });