Skip to content

Commit

Permalink
Merge pull request #375 from IGNF/fix/route-pieton-fastest
Browse files Browse the repository at this point in the history
Fix/route pieton fastest
  • Loading branch information
elias75015 authored Mar 21, 2024
2 parents 8b00f89 + ec3c1f9 commit e4ff08e
Show file tree
Hide file tree
Showing 9 changed files with 111 additions and 126 deletions.
46 changes: 2 additions & 44 deletions DRAFT_CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,35 +5,19 @@
## Summary

Seconde release adaptative à la Géoplateforme : les extensions Geoportail pour OpenLayers deviennent les extensions Géoplateforme pour OpenLayers.
L'ensemble des widgets et fonctionnalités des extensions Géoplateforme pour OpenLayers utilisent les services de la Géoplateforme avec cette release 3.4.0.

## Changelog

* [Added]

* [Changed]

- Branchement des extensions Géoplateforme pour OpenLayers aux services d'isochrone et d'itineraire de la géoplateforme via la bibliothèque d'accès aux services Géoplateforme en version 3.4.0 (4ca0acec9f8f2ea9b2ef1509448377e31a83c0a8)
- Branchement des extensions Géoplateforme pour OpenLayers au service altimétrique de la géoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/ol-3.4.0-beta4)
- Ajout possible de couches à accès restreint via une fichier de configuration custom (https://github.com/IGNF/geoportal-extensions/releases/tag/ol-3.4.0-beta3)
- les widgets utilisent désormais par défaut les services d'autocomplétion et de geocodage direct et inverse de la Geoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/ol-3.4.0-beta2)
- le paramétrage d'un proxy pour utiliser le control d'import de couches est rendu facultatif (6a0c931abf6b26456e84a513453b52941d6fa6f6)
- Utilisation des services bêta Géoplateforme de diffusion par la classe Config. Le paramètre apiKey devient facultatif pour l'appel à la fonction getConfig : s'il est non spécifié, la configuration de toutes les données est récupérée (https://github.com/IGNF/geoportal-extensions/releases/tag/ol-3.4.0-beta)
- L'ajout de couches de type "geoportalLayer" est branché sur les services bêta de diffusion de la Géoplateforme
- Mise à jour de la documentation pour release Extensions Geoplateforme (49ec092bc17fa6e5667a581cf7d78509614e7940)

* [Deprecated]

* [Removed]

* [Fixed]

- searchEngine laisse le q= vide si recherche avancée par parcelle cadastrale (2577e30fae3123dfbe0ed3b1aa406ffc5d3702bc)
- correction du logger en mode verbose sur tous les environnements (636a26a39ac2df5832fd268e26fbf98ed51bd519)
- searchEngine : affichage plus fin des résultats du service de Geocodage (3174df0d16703988661d785a2fb4f02bcf5ad751)
- mise à jour des fichiers de style mapbox utilisés par les exemples (f0c95f06d8a06f106373bf9b0b4f7381d20a8b22)
- divers correctifs sur le build par modules (910430c671c7da8d0f5b420719ed76ee5ec9b58b)
- widget itineraire utilise ressource bdtopo-valhalla dans le cas d'un itinéraire pieton en mode fastest (6675d287eb028170dea5d0dbdae2acaed51359ca)

* [Security]

Expand All @@ -46,32 +30,19 @@ L'ensemble des widgets et fonctionnalités des extensions Géoplateforme pour Op
## Summary

Seconde release adaptative à la Géoplateforme : les extensions Geoportail pour Leaflet deviennent les extensions Géoplateforme pour Leaflet.
L'ensemble des widgets et fonctionnalités des extensions Géoplateforme pour Leaflet utilisent les services de la Géoplateforme avec cette release 2.4.0.

## Changelog

* [Added]

* [Changed]

- Branchement des extensions Géoplateforme pour Leaflet aux services d'isochrone et d'itineraire de la géoplateforme via la bibliothèque d'accès aux services Géoplateforme en version 3.4.0 (4ca0acec9f8f2ea9b2ef1509448377e31a83c0a8)
- Branchement des extensions Géoplateforme pour OpenLayers au service altimétrique de la géoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/leaflet-2.4.0-beta4)
- Ajout possible de couches à accès restreint via une fichier de configuration custom (https://github.com/IGNF/geoportal-extensions/releases/tag/leaflet-2.4.0-beta3)
- les widgets utilisent désormais par défaut les services d'autocomplétion et de geocodage direct et inverse de la Geoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/leaflet-2.4.0-beta2)
- Utilisation des services bêta Géoplateforme de diffusion par la classe Config. Le paramètre apiKey devient facultatif pour l'appel à la fonction getConfig : s'il est non spécifié, la configuration de toutes les données est récupérée (https://github.com/IGNF/geoportal-extensions/releases/tag/leaflet-2.4.0-beta)
- L'ajout de couches de type "geoportalLayer" est branché sur les services bêta de diffusion de la Géoplateforme
- Mise à jour de la documentation pour release Extensions Geoplateforme (49ec092bc17fa6e5667a581cf7d78509614e7940)

* [Deprecated]

* [Removed]

* [Fixed]

- correction du logger en mode verbose sur tous les environnements (636a26a39ac2df5832fd268e26fbf98ed51bd519)
- mise à jour des fichiers de style mapbox utilisés par les exemples (f0c95f06d8a06f106373bf9b0b4f7381d20a8b22)
- divers correctifs sur le build par modules (910430c671c7da8d0f5b420719ed76ee5ec9b58b)
- widget itineraire utilise ressource bdtopo-valhalla dans le cas d'un itinéraire pieton en mode fastest (92439bc421cc5f6ee1f10e069f2aa468e2b971b6)

* [Security]

Expand All @@ -85,31 +56,18 @@ L'ensemble des widgets et fonctionnalités des extensions Géoplateforme pour Le
## Summary

Seconde release adaptative à la Géoplateforme : les extensions Geoportail pour iTowns deviennent les extensions Géoplateforme pour iTowns.
L'ensemble des widgets et fonctionnalités des extensions Géoplateforme pour iTowns utilisent les services de la Géoplateforme avec cette release 2.5.0.

## Changelog

* [Added]

* [Changed]

- Utilisation de la bibliothèque d'accès aux services Géoplateforme en version 3.4.0 (4ca0acec9f8f2ea9b2ef1509448377e31a83c0a8)
- Branchement des extensions Géoplateforme pour iTowns au service altimétrique de la géoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/itowns-2.5.0-beta4)
- Ajout possible de couches à accès restreint via une fichier de configuration custom (https://github.com/IGNF/geoportal-extensions/releases/tag/itowns-2.5.0-beta3)
- les widgets utilisent désormais par défaut les services d'autocomplétion et de geocodage direct et inverse de la Geoplateforme (https://github.com/IGNF/geoportal-extensions/releases/tag/itowns-2.5.0-beta2)
- Utilisation des services bêta Géoplateforme de diffusion par la classe Config. Le paramètre apiKey devient facultatif pour l'appel à la fonction getConfig : s'il est non spécifié, la configuration de toutes les données est récupérée (https://github.com/IGNF/geoportal-extensions/releases/tag/leaflet-2.5.0-beta)
- L'ajout de couches de type "geoportalLayer" est branché sur les services bêta de diffusion de la Géoplateforme
- Mise à jour de la documentation pour release Extensions Geoplateforme (49ec092bc17fa6e5667a581cf7d78509614e7940)

* [Deprecated]

* [Removed]

* [Fixed]

- BuildingControl : Style tuiles vectorielles "standard.json" utilisé hébergé sur la Geoplateforme (90bb57ae28f559b46bedb8dd694e18cea282ed89)

* [Security]

---
Binary file not shown.
Binary file not shown.
Binary file not shown.
50 changes: 25 additions & 25 deletions build/scripts/release/package-itowns.json
Original file line number Diff line number Diff line change
@@ -1,46 +1,46 @@
{
"scripts" : {},
"peerDependencies" : {},
"version" : "2.5.0",
"author" : "IGNF",
"date" : "19/03/2024",
"repository" : {
"type" : "git",
"url" : "https://github.com/IGNF/geoportal-extensions.git"
},
"license" : "CECILL-B",
"directories" : {},
"homepage" : "https://geoservices.ign.fr/documentation/utilisation_web/extension-itowns.html",
"module" : "src/Itowns/index.js",
"keywords" : [
"geoportail",
"geoplateforme",
"plugin",
"javascript",
"Itowns"
],
"devDependencies" : {},
"types" : "src/Itowns/index.d.ts",
"dependencies" : {
"geoportal-access-lib" : "3.4.0",
"itowns" : "2.38.2",
"proj4" : "2.7.5",
"node-fetch" : "^2.6.1",
"sortablejs" : "1.14.0",
"three" : "0.137.5",
"loglevel" : "1.6.7",
"xmldom" : "^0.1.27"
},
"bugs" : {},
"files" : [
"dist/",
"src/",
"LICENCE.md",
"README.md",
"package.json"
],
"peerDependencies" : {},
"license" : "CECILL-B",
"repository" : {
"type" : "git",
"url" : "https://github.com/IGNF/geoportal-extensions.git"
"types" : "src/Itowns/index.d.ts",
"dependencies" : {
"proj4" : "2.7.5",
"xmldom" : "^0.1.27",
"sortablejs" : "1.14.0",
"node-fetch" : "^2.6.1",
"three" : "0.137.5",
"geoportal-access-lib" : "3.4.0",
"loglevel" : "1.6.7",
"itowns" : "2.38.2"
},
"name" : "geoportal-extensions-itowns",
"scripts" : {},
"bundleDependencies" : [],
"devDependencies" : {},
"description" : "French Geoportal Extensions for iTowns",
"main" : "dist/GpPluginItowns-src.js",
"directories" : {},
"bundleDependencies" : [],
"homepage" : "https://geoservices.ign.fr/documentation/utilisation_web/extension-itowns.html",
"bugs" : {},
"version" : "2.5.0",
"module" : "src/Itowns/index.js"
"date" : "19/03/2024"
}
64 changes: 32 additions & 32 deletions build/scripts/release/package-leaflet.json
Original file line number Diff line number Diff line change
@@ -1,46 +1,46 @@
{
"peerDependencies" : {},
"name" : "geoportal-extensions-leaflet",
"scripts" : {},
"types" : "src/Leaflet/index.d.ts",
"date" : "19/03/2024",
"bugs" : {},
"keywords" : [
"geoportail",
"plugin",
"javascript",
"leaflet",
"publish"
],
"bundleDependencies" : [],
"homepage" : "https://geoservices.ign.fr/documentation/utilisation_web/extension-leaflet.html",
"dependencies" : {
"loglevel" : "1.6.6",
"leaflet" : "1.7.1",
"sortablejs" : "1.8.4",
"node-fetch" : "^2.6.1",
"proj4" : "2.7.5",
"geoportal-access-lib" : "3.4.0",
"proj4leaflet" : "1.0.2",
"leaflet-draw" : "1.0.4",
"xmldom" : "^0.1.27"
},
"files" : [
"dist/",
"src/",
"LICENCE.md",
"README.md",
"package.json"
],
"date" : "19/03/2024",
"main" : "dist/GpPluginLeaflet-src.js",
"bugs" : {},
"module" : "src/Leaflet/index.js",
"dependencies" : {
"xmldom" : "^0.1.27",
"loglevel" : "1.6.6",
"proj4" : "2.7.5",
"leaflet-draw" : "1.0.4",
"geoportal-access-lib" : "3.4.0",
"node-fetch" : "^2.6.1",
"sortablejs" : "1.8.4",
"proj4leaflet" : "1.0.2",
"leaflet" : "1.7.1"
},
"bundleDependencies" : [],
"scripts" : {},
"version" : "2.4.0",
"devDependencies" : {},
"homepage" : "https://geoservices.ign.fr/documentation/utilisation_web/extension-leaflet.html",
"directories" : {},
"repository" : {
"url" : "https://github.com/IGNF/geoportal-extensions.git",
"type" : "git"
"type" : "git",
"url" : "https://github.com/IGNF/geoportal-extensions.git"
},
"description" : "French Geoportal Extension for Leaflet",
"peerDependencies" : {},
"directories" : {},
"name" : "geoportal-extensions-leaflet",
"main" : "dist/GpPluginLeaflet-src.js",
"version" : "2.4.0",
"license" : "CECILL-B",
"keywords" : [
"geoportail",
"plugin",
"javascript",
"leaflet",
"publish"
]
"description" : "French Geoportal Extension for Leaflet",
"devDependencies" : {}
}
48 changes: 24 additions & 24 deletions build/scripts/release/package-openlayers.json
Original file line number Diff line number Diff line change
@@ -1,42 +1,42 @@
{
"scripts" : {},
"files" : [
"dist/",
"src/",
"LICENCE.md",
"README.md",
"package.json"
],
"license" : "CECILL-B",
"types" : "src/OpenLayers/index.d.ts",
"peerDependencies" : {},
"version" : "3.4.0",
"date" : "19/03/2024",
"devDependencies" : {},
"bugs" : {},
"license" : "CECILL-B",
"keywords" : [
"geoportail",
"geoplateforme",
"plugin",
"javascript",
"OpenLayers"
],
"name" : "geoportal-extensions-openlayers",
"version" : "3.4.0",
"repository" : {
"type" : "git",
"url" : "https://github.com/IGNF/geoportal-extensions.git"
},
"dependencies" : {
"proj4" : "2.7.5",
"sortablejs" : "1.14.0",
"node-fetch" : "^2.6.1",
"eventbusjs" : "0.2.0",
"loglevel" : "1.6.6",
"@mapbox/mapbox-gl-style-spec" : "13.20.1",
"xmldom" : "^0.1.27",
"sortablejs" : "1.14.0",
"ol" : "6.9.0",
"geoportal-access-lib" : "3.4.0",
"ol" : "6.9.0"
"@mapbox/mapbox-gl-style-spec" : "13.20.1",
"proj4" : "2.7.5",
"loglevel" : "1.6.6",
"node-fetch" : "^2.6.1"
},
"directories" : {},
"module" : "src/OpenLayers/index.js",
"repository" : {
"url" : "https://github.com/IGNF/geoportal-extensions.git",
"type" : "git"
},
"date" : "19/03/2024"
"name" : "geoportal-extensions-openlayers",
"scripts" : {},
"files" : [
"dist/",
"src/",
"LICENCE.md",
"README.md",
"package.json"
],
"peerDependencies" : {},
"bugs" : {}
}
16 changes: 16 additions & 0 deletions src/Leaflet/Controls/Route.js
Original file line number Diff line number Diff line change
Expand Up @@ -674,6 +674,21 @@ var Route = L.Control.extend(/** @lends L.geoportalControl.Route.prototype */ {
this._currentComputation = options.computation;
this._currentExclusions = options.exclusions;

// on recupere les éventuelles options du service passées par l'utilisateur
var routeOptions = this.options.routeOptions;

// OVERLOAD : la resource bd-topo-osrm ne gère pas le calcul piéton en mode fastest
// dans ce cas, on utilise valhalla dans le cas d'une utilisation par défaut du widget
// sans paramétrage de resource explicitement demandé
var routeResource;
if (!routeOptions.resource) {
if (this._currentComputation === "fastest" && this._currentTransport === "Pieton") {
routeResource = "bdtopo-valhalla";
}
} else {
routeResource = routeOptions.resource;
}

if (typeof this.options.routeOptions.geometryInInstructions === "undefined") {
this.options.routeOptions.geometryInInstructions = true;
}
Expand All @@ -689,6 +704,7 @@ var Route = L.Control.extend(/** @lends L.geoportalControl.Route.prototype */ {
viaPoints : step,
graph : this._currentTransport,
routePreference : this._currentComputation,
resource : routeResource,
exclusions : this._currentExclusions,
geometryInInstructions : this.options.routeOptions.geometryInInstructions,
distanceUnit : "m", // surcharge obligatoire !
Expand Down
13 changes: 12 additions & 1 deletion src/OpenLayers/Controls/Route.js
Original file line number Diff line number Diff line change
Expand Up @@ -1091,6 +1091,17 @@ var Route = (function (Control) {
// on recupere les éventuelles options du service passées par l'utilisateur
var routeOptions = this.options.routeOptions;

// OVERLOAD : la resource bd-topo-osrm ne gère pas le calcul piéton en mode fastest
// dans ce cas, on utilise valhalla dans le cas d'une utilisation par défaut du widget
// sans paramétrage de resource explicitement demandé
var routeResource;
if (!routeOptions.resource) {
if (this._currentComputation === "fastest" && this._currentTransport === "Pieton") {
routeResource = "bdtopo-valhalla";
}
} else {
routeResource = routeOptions.resource;
}
// gestion du protocole et du timeout
// le timeout est indispensable sur le protocole JSONP.
var _protocol = routeOptions.protocol || "XHR";
Expand All @@ -1117,7 +1128,7 @@ var Route = (function (Control) {
distanceUnit : "m",
timeOut : _timeout,
protocol : _protocol,
resource : routeOptions.resource,
resource : routeResource,
// callback onSuccess
onSuccess : function (results) {
logger.log(results);
Expand Down

0 comments on commit e4ff08e

Please sign in to comment.