SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
Ngeo
New age mapping components library
Florent Gravin • 08.05.2017
Agenda
● Présentation ngeo
○ Présentation conceptuelle
○ Présentation technique
○ Demo des exemples
● Ngeo et geOrchestra
○ Etat des lieux
○ Les enjeux et les challenges de l’intégration
● Présentation GeoMapfish
● Proposition de roadmap
Historique, cheminement
1. Rappel des besoins
a. Site web cartographique responsive (desktop/tablet/smartphone)
b. Fonctionnalités carto hyper performantes (mobile)
c. Fonctionnalités SIG
d. Affichage 2D/3D
2. Démarche open source
a. Partager une librairie avec un maximum de projets/utilisateurs
b. Modularité, Souplesse et adaptivité à des projets spécifiques
c. Solidité de l’architecture, des tests et du workflow de développement pour récolter des
contributions
3. Choix effectués
a. OpenLayers, AngularJS, CesiumJS
b. Ngeo: 4000 commits, 27 contributeurs, 40 exemples fonctionnels
Ngeo
Librairie javascript Open Source
pour le développement
d’applications cartographiques
Modernité
● Technologies récentes
● Design moderne
Modularité
Déclinaison en niveaux de complexité
Responsive
Intégration dans des sites partenaires
Ngeo - Choix technologiques
Openlayers
● La plus complète des librairies carto
OpenSource
● Performante
● Communauté très active
AngularJS
● Superheroic javascript Framework
● Communauté massive
● Développé par Google
Ngeo: la philosophie
● Toolkit
● Composants atomiques
● Abstraction de la UI
● Librairie non intrusive
● Approche impérative
● Guidelines pour le développement AngularJs/Openlayers
● A jour avec les conventions Openlayers
Ngeo
L’architecture
Organisation du code
Compilation avancée
Exemples
Tests
Documentation
Guidelines
Ngeo: l’architecture
/src Directives, controllers, modules, externs
/test Tests des composants (karma, jasmine, phantomJs)
/examples Examples compilés
/contribs Contributions métiers
/jsdoc Documentation
Coeur buildé avec Closure Compiler
● Architecture évolutive pour suivre les tendances de l’écosystèmes javascript
● Perspectives de compatibilité modules ES6
Ngeo: la librairie
Services
● Gestionnaire couche de fond
● Decorateurs
● Permalien
● Impression
● ...
Directives
● Arbre des couches
● Géolocalisation
● Recherche
● Dessin
● ...
Fournit des composants coeurs pour la construction d’applications
cartographiques.
Ngeo: usage
controller.js
// Create the map
this.map = new ol.Map({
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})],
view: new ol.View({
center: [0, 0],
zoom: 2
})
});
//Fetch the layer tree
this.tree = $http.get(layertreeUrl);
view.html
<div ngeo-map="$ctrl.map"></div>
<div ngeo-layertree="$ctrl.tree"
ngeo-layertree-map="$ctrl.map">
</div>
Des exemples
https://camptocamp.github.io/ngeo/master/examples/
Gmf
Participation de la communauté
GeoMapfish dans Ngeo
Section contribution spécifique
Niveau de finition supérieur
Nouveaux services & directives
Composants clés en main
Templates d’application
● Mobile
● Desktop
Des exemples
https://camptocamp.github.io/ngeo/master/examples/contribs/gmf/
Dessin - Impression - Thèmes - Profile
Les templates
Desktop - Mobile
geOrchestra
Visualisation des données
géographiques
Plusieurs solutions proposées
● Non uniformité des technologies
utilisées
● Cibles & directions diverses
● Communautés différentes
Quels sont les besoin d’aujourd’hui ?
● Responsive
● Performance
● Modularité, configuration
Les besoins de demain ?
● Intégration 2D/3D
● Tuiles LIDAR
● Tuiles vecteur
Webmapping dans geOrchestra 16.12
Mapfishapp
● ExtJs
● GeoExt
● Openlayers2
● Look ancien
● Pas responsive
● Expert mode
Sviewer
● Jquery Mobile
● Openlayers3
● Très simple
● Non modulaire
Mviewer
● Jquery
● Openlayers 3
● Bootstrap
● Spécifique
● Communauté ?
geOrchestra: les attentes
Besoins utilisateurs
● Modernité
● Performance
● Plusieurs supports
Besoins administrateurs
● Modularité (déclinaison, configuration)
● Customisation (contribution, personnalisation)
● Intégration dans des sites partenaires
Ngeo &
geOrchestra
Intégration / convergence
Une librairie qui couvre déjà une
grande partie des fonctionnalités de
mapfishapp.
Une seule solution pour des
applications à la carte
● Support
● Complexité
● Applications métiers
La bibliothèque
● Composants coeur geOrchestra
● Composants métier
● Composants contributeurs
● Différents niveaux d’intégration (à partir du coeur de ngeo ou de composants plus élaborés)
Les applications
● Templates coeur pour différents support (desktop, mobile..)
● Déclinaison en niveau de complexité (expert, simple)
● Configuration et personnalisation
● Applications métiers annexes basées sur les mêmes composants
Ngeo & geOrchestra
Intégration sites partenaires
Api
● Pour quel public ?
● Difficile à maintenir
Iframe
● Pas de code, pas de maintenance
● Communication possible iframe/page source.
● Différents templates
● Exemple
http://basel-debug.camptocamp.net/mkuenzli/wsgi/static-ngeo/0/examples/
Ngeo: Les contributions
Plateformes nationales
● Suisse
● Luxembourg
Solutions Open Source
● Geonetwork
● GeoMapFish
Sites & portails
● Camptocamp
● Swissalpine
Intégration itérative et progressive
● Mise en place de l’architecture, intégration de ngeo dans geOrchestra.
● Livraison d’une application épurée (viewer simple mobile).
● Développement de nouveaux composants et templates plus complets
● Templates d’application niveau mapfishapp
Intégration: proposition de roadmap
Intégration dans
geOrchestra
ngeo/contribs/georchestra ?
Ngeo
https://github.com/camptocamp/ngeo
Florent Gravin
florent.gravin@camptocamp.com

Weitere ähnliche Inhalte

Ähnlich wie [Geocom2017] geOrchestra and ngeo

Twitter Bootstrap par Antoine Guédès et Cédric Dussart
Twitter Bootstrap par Antoine Guédès et Cédric DussartTwitter Bootstrap par Antoine Guédès et Cédric Dussart
Twitter Bootstrap par Antoine Guédès et Cédric DussartLa FeWeb
 
Tk02 Google Wave Et Html5 Fr
Tk02 Google Wave Et Html5 FrTk02 Google Wave Et Html5 Fr
Tk02 Google Wave Et Html5 FrValtech
 
Une librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceUne librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceACSG Section Montréal
 
Une librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceUne librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceACSG - Section Montréal
 
1er atelier technique - IGO2 - 17 mai 2017
1er atelier technique - IGO2 - 17 mai 20171er atelier technique - IGO2 - 17 mai 2017
1er atelier technique - IGO2 - 17 mai 2017igouverte
 
Bootcamp d'Initiation à Android - 2013/11/30
Bootcamp d'Initiation à Android  - 2013/11/30Bootcamp d'Initiation à Android  - 2013/11/30
Bootcamp d'Initiation à Android - 2013/11/30Horacio Gonzalez
 
Livre blanc Rubedo - Plateforme digitale open-source
Livre blanc Rubedo - Plateforme digitale open-sourceLivre blanc Rubedo - Plateforme digitale open-source
Livre blanc Rubedo - Plateforme digitale open-sourceRubedo, a WebTales solution
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologieekino
 
Mobilité, géomatique et HTML5 : une lune de miel à trois?
Mobilité, géomatique et HTML5 : une lune de miel à trois?Mobilité, géomatique et HTML5 : une lune de miel à trois?
Mobilité, géomatique et HTML5 : une lune de miel à trois?ACSG - Section Montréal
 
La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxChristophe Villeneuve
 
Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousjwajsberg
 
Responsive web design, enjeux et stratégies
Responsive web design, enjeux et stratégiesResponsive web design, enjeux et stratégies
Responsive web design, enjeux et stratégiesMehdi Kabab
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction MansouriMansouri Khalifa
 
Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011OSInet
 
Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...Microsoft Ideas
 
Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013Charbel Abdo
 
GDG Rennes - Bootcamp Initiation Android - Théorie
GDG Rennes - Bootcamp Initiation Android -  ThéorieGDG Rennes - Bootcamp Initiation Android -  Théorie
GDG Rennes - Bootcamp Initiation Android - ThéorieHoracio Gonzalez
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur AzureaOS Community
 

Ähnlich wie [Geocom2017] geOrchestra and ngeo (20)

Twitter Bootstrap par Antoine Guédès et Cédric Dussart
Twitter Bootstrap par Antoine Guédès et Cédric DussartTwitter Bootstrap par Antoine Guédès et Cédric Dussart
Twitter Bootstrap par Antoine Guédès et Cédric Dussart
 
Tk02 Google Wave Et Html5 Fr
Tk02 Google Wave Et Html5 FrTk02 Google Wave Et Html5 Fr
Tk02 Google Wave Et Html5 Fr
 
Une librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceUne librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre service
 
Une librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre serviceUne librairie de développement cartographique en libre service
Une librairie de développement cartographique en libre service
 
Objectif fluid&lt;fab />
Objectif fluid&lt;fab />Objectif fluid&lt;fab />
Objectif fluid&lt;fab />
 
1er atelier technique - IGO2 - 17 mai 2017
1er atelier technique - IGO2 - 17 mai 20171er atelier technique - IGO2 - 17 mai 2017
1er atelier technique - IGO2 - 17 mai 2017
 
Bootcamp d'Initiation à Android - 2013/11/30
Bootcamp d'Initiation à Android  - 2013/11/30Bootcamp d'Initiation à Android  - 2013/11/30
Bootcamp d'Initiation à Android - 2013/11/30
 
Livre blanc Rubedo - Plateforme digitale open-source
Livre blanc Rubedo - Plateforme digitale open-sourceLivre blanc Rubedo - Plateforme digitale open-source
Livre blanc Rubedo - Plateforme digitale open-source
 
Responsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, MéthodologieResponsive Web Design - Enjeux, Solutions, Méthodologie
Responsive Web Design - Enjeux, Solutions, Méthodologie
 
Mobilité, géomatique et HTML5 : une lune de miel à trois?
Mobilité, géomatique et HTML5 : une lune de miel à trois?Mobilité, géomatique et HTML5 : une lune de miel à trois?
Mobilité, géomatique et HTML5 : une lune de miel à trois?
 
Mobilité && SAP
Mobilité && SAPMobilité && SAP
Mobilité && SAP
 
La boîte à outils de développements dans Firefox
La boîte à outils de développements dans FirefoxLa boîte à outils de développements dans Firefox
La boîte à outils de développements dans Firefox
 
Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tous
 
Responsive web design, enjeux et stratégies
Responsive web design, enjeux et stratégiesResponsive web design, enjeux et stratégies
Responsive web design, enjeux et stratégies
 
UML Part1-Introduction Mansouri
UML Part1-Introduction MansouriUML Part1-Introduction Mansouri
UML Part1-Introduction Mansouri
 
Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011Drupal et le NoSQL - drupagora 2011
Drupal et le NoSQL - drupagora 2011
 
Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...Customer Show case : Mise en place d’une solution de gestion de projet avec l...
Customer Show case : Mise en place d’une solution de gestion de projet avec l...
 
Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013Exemple de mise en place d'une solution EPM 2013
Exemple de mise en place d'une solution EPM 2013
 
GDG Rennes - Bootcamp Initiation Android - Théorie
GDG Rennes - Bootcamp Initiation Android -  ThéorieGDG Rennes - Bootcamp Initiation Android -  Théorie
GDG Rennes - Bootcamp Initiation Android - Théorie
 
8 Rex : Mise en place de DevOps sur Azure
8   Rex : Mise en place de DevOps sur Azure8   Rex : Mise en place de DevOps sur Azure
8 Rex : Mise en place de DevOps sur Azure
 

Mehr von Camptocamp

ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?Camptocamp
 
10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERPCamptocamp
 
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Camptocamp
 
Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Camptocamp
 
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Camptocamp
 
Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Camptocamp
 
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISAGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISCamptocamp
 
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineAGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineCamptocamp
 
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDIAGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDICamptocamp
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISCamptocamp
 
NGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularNGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularCamptocamp
 
OpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerOpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerCamptocamp
 
MapFish Print 3
MapFish Print 3MapFish Print 3
MapFish Print 3Camptocamp
 
georchestra SDI: Project Status Report
georchestra SDI: Project Status Reportgeorchestra SDI: Project Status Report
georchestra SDI: Project Status ReportCamptocamp
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISCamptocamp
 
Présentation GeoMapFish
Présentation GeoMapFishPrésentation GeoMapFish
Présentation GeoMapFishCamptocamp
 
Une IDS scalable et résiliente avec geOrchestra & Docker
Une IDS scalable et résiliente avec geOrchestra & DockerUne IDS scalable et résiliente avec geOrchestra & Docker
Une IDS scalable et résiliente avec geOrchestra & DockerCamptocamp
 
geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDICamptocamp
 
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)Camptocamp
 

Mehr von Camptocamp (20)

ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?ERP et customisation : comment éviter l’usine à gaz ?
ERP et customisation : comment éviter l’usine à gaz ?
 
10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP10 points-clés incontournables pour réussir votre projet ERP
10 points-clés incontournables pour réussir votre projet ERP
 
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
Topsoft 2017: Praxisbericht: Welche Fehler bei der Implementierung eines ERP-...
 
Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017Geo mapfish 2_foss4g-eu_2017
Geo mapfish 2_foss4g-eu_2017
 
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
Ge orchestra open_source_inspire_sdi-project_status_foss4g-eu_2017
 
Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017Data processing qgis3_foss4g-eu_2017
Data processing qgis3_foss4g-eu_2017
 
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGISAGIT 2017: GeoMapFish_2.2, the open source WebGIS
AGIT 2017: GeoMapFish_2.2, the open source WebGIS
 
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map EngineAGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
AGIT 2017: Cesium 1.35, WebGL Virtual Globe and Map Engine
 
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDIAGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
AGIT 2017: geOrchestra 16.12, the open source INSPIRE SDI
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGIS
 
NGEO – OpenLayers meets Angular
NGEO – OpenLayers meets AngularNGEO – OpenLayers meets Angular
NGEO – OpenLayers meets Angular
 
OpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure CompilerOpenLayers 3 & Google Closure Compiler
OpenLayers 3 & Google Closure Compiler
 
MapFish Print 3
MapFish Print 3MapFish Print 3
MapFish Print 3
 
georchestra SDI: Project Status Report
georchestra SDI: Project Status Reportgeorchestra SDI: Project Status Report
georchestra SDI: Project Status Report
 
GeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGISGeoMapFish, the Open Source WebGIS
GeoMapFish, the Open Source WebGIS
 
Présentation GeoMapFish
Présentation GeoMapFishPrésentation GeoMapFish
Présentation GeoMapFish
 
OpenLayers 3
OpenLayers 3OpenLayers 3
OpenLayers 3
 
Une IDS scalable et résiliente avec geOrchestra & Docker
Une IDS scalable et résiliente avec geOrchestra & DockerUne IDS scalable et résiliente avec geOrchestra & Docker
Une IDS scalable et résiliente avec geOrchestra & Docker
 
geOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDIgeOrchestra, a free, modular and secure SDI
geOrchestra, a free, modular and secure SDI
 
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)
FOSS4G Europe 2015: OL3-Cesium (3D for OpenLayers)
 

[Geocom2017] geOrchestra and ngeo

  • 1. Ngeo New age mapping components library Florent Gravin • 08.05.2017
  • 2. Agenda ● Présentation ngeo ○ Présentation conceptuelle ○ Présentation technique ○ Demo des exemples ● Ngeo et geOrchestra ○ Etat des lieux ○ Les enjeux et les challenges de l’intégration ● Présentation GeoMapfish ● Proposition de roadmap
  • 3. Historique, cheminement 1. Rappel des besoins a. Site web cartographique responsive (desktop/tablet/smartphone) b. Fonctionnalités carto hyper performantes (mobile) c. Fonctionnalités SIG d. Affichage 2D/3D 2. Démarche open source a. Partager une librairie avec un maximum de projets/utilisateurs b. Modularité, Souplesse et adaptivité à des projets spécifiques c. Solidité de l’architecture, des tests et du workflow de développement pour récolter des contributions 3. Choix effectués a. OpenLayers, AngularJS, CesiumJS b. Ngeo: 4000 commits, 27 contributeurs, 40 exemples fonctionnels
  • 4. Ngeo Librairie javascript Open Source pour le développement d’applications cartographiques Modernité ● Technologies récentes ● Design moderne Modularité Déclinaison en niveaux de complexité Responsive Intégration dans des sites partenaires
  • 5. Ngeo - Choix technologiques Openlayers ● La plus complète des librairies carto OpenSource ● Performante ● Communauté très active AngularJS ● Superheroic javascript Framework ● Communauté massive ● Développé par Google
  • 6. Ngeo: la philosophie ● Toolkit ● Composants atomiques ● Abstraction de la UI ● Librairie non intrusive ● Approche impérative ● Guidelines pour le développement AngularJs/Openlayers ● A jour avec les conventions Openlayers
  • 7. Ngeo L’architecture Organisation du code Compilation avancée Exemples Tests Documentation Guidelines
  • 8. Ngeo: l’architecture /src Directives, controllers, modules, externs /test Tests des composants (karma, jasmine, phantomJs) /examples Examples compilés /contribs Contributions métiers /jsdoc Documentation Coeur buildé avec Closure Compiler ● Architecture évolutive pour suivre les tendances de l’écosystèmes javascript ● Perspectives de compatibilité modules ES6
  • 9. Ngeo: la librairie Services ● Gestionnaire couche de fond ● Decorateurs ● Permalien ● Impression ● ... Directives ● Arbre des couches ● Géolocalisation ● Recherche ● Dessin ● ... Fournit des composants coeurs pour la construction d’applications cartographiques.
  • 10. Ngeo: usage controller.js // Create the map this.map = new ol.Map({ layers: [ new ol.layer.Tile({ source: new ol.source.OSM() })], view: new ol.View({ center: [0, 0], zoom: 2 }) }); //Fetch the layer tree this.tree = $http.get(layertreeUrl); view.html <div ngeo-map="$ctrl.map"></div> <div ngeo-layertree="$ctrl.tree" ngeo-layertree-map="$ctrl.map"> </div>
  • 12. Gmf Participation de la communauté GeoMapfish dans Ngeo Section contribution spécifique Niveau de finition supérieur Nouveaux services & directives Composants clés en main Templates d’application ● Mobile ● Desktop
  • 15. geOrchestra Visualisation des données géographiques Plusieurs solutions proposées ● Non uniformité des technologies utilisées ● Cibles & directions diverses ● Communautés différentes Quels sont les besoin d’aujourd’hui ? ● Responsive ● Performance ● Modularité, configuration Les besoins de demain ? ● Intégration 2D/3D ● Tuiles LIDAR ● Tuiles vecteur
  • 16. Webmapping dans geOrchestra 16.12 Mapfishapp ● ExtJs ● GeoExt ● Openlayers2 ● Look ancien ● Pas responsive ● Expert mode Sviewer ● Jquery Mobile ● Openlayers3 ● Très simple ● Non modulaire Mviewer ● Jquery ● Openlayers 3 ● Bootstrap ● Spécifique ● Communauté ?
  • 17. geOrchestra: les attentes Besoins utilisateurs ● Modernité ● Performance ● Plusieurs supports Besoins administrateurs ● Modularité (déclinaison, configuration) ● Customisation (contribution, personnalisation) ● Intégration dans des sites partenaires
  • 18. Ngeo & geOrchestra Intégration / convergence Une librairie qui couvre déjà une grande partie des fonctionnalités de mapfishapp. Une seule solution pour des applications à la carte ● Support ● Complexité ● Applications métiers
  • 19. La bibliothèque ● Composants coeur geOrchestra ● Composants métier ● Composants contributeurs ● Différents niveaux d’intégration (à partir du coeur de ngeo ou de composants plus élaborés) Les applications ● Templates coeur pour différents support (desktop, mobile..) ● Déclinaison en niveau de complexité (expert, simple) ● Configuration et personnalisation ● Applications métiers annexes basées sur les mêmes composants Ngeo & geOrchestra
  • 20. Intégration sites partenaires Api ● Pour quel public ? ● Difficile à maintenir Iframe ● Pas de code, pas de maintenance ● Communication possible iframe/page source. ● Différents templates ● Exemple
  • 22.
  • 23. Ngeo: Les contributions Plateformes nationales ● Suisse ● Luxembourg Solutions Open Source ● Geonetwork ● GeoMapFish Sites & portails ● Camptocamp ● Swissalpine
  • 24. Intégration itérative et progressive ● Mise en place de l’architecture, intégration de ngeo dans geOrchestra. ● Livraison d’une application épurée (viewer simple mobile). ● Développement de nouveaux composants et templates plus complets ● Templates d’application niveau mapfishapp Intégration: proposition de roadmap