Skip to content
This repository has been archived by the owner on May 21, 2024. It is now read-only.

Commit

Permalink
Merge branch 'main' of https://github.com/7map/7map into main
Browse files Browse the repository at this point in the history
  • Loading branch information
BSoDium committed May 14, 2021
2 parents 777ac4f + ed0a25f commit d724abb
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 2 deletions.
2 changes: 1 addition & 1 deletion doc/manuel-utilisateur.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ Utiliser les touches fléchées `→`, `←`, `↑`, `↓` pour s'orienter selon

## Données

Les données doivent être importées en [GeoJSON](https://fr.wikipedia.org/wiki/GeoJSON)
Les données sont au format [XML OSM](https://wiki.openstreetmap.org/wiki/OSM_XML), et peuvent être téléchargées gratuitement depuis via une [API REST](https://wiki.openstreetmap.org/wiki/API_v0.6#Retrieving_map_data_by_bounding_box:_GET_.2Fapi.2F0.6.2Fmap).
18 changes: 17 additions & 1 deletion doc/rapports/rapport.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
- [Organisation et répartition du travail](#organisation-et-répartition-du-travail)
- [Partie ``rendering``](#partie-rendering)
- [Partie ``data``](#partie-data)
- [1ère itération](#1ère-itération)
- [2ème itération](#2ème-itération)

## Organisation et répartition du travail

Expand Down Expand Up @@ -50,11 +52,13 @@ dans le moteur. Elle sera utilisée par la suite dans le programme principal afi

### Partie ``data``

#### 1ère itération

Le but de notre équipe est de fournir à l'équipe "rendering" les données nécessaires à l'affichage. Nous devons convertir des données sources (json) en objet Java utilisable par LWJGL.

Voici notre diagramme UML :

![diagramm](medias/diagram_data.png)
![diagramm](../medias/diagram_data.png)

Les objets de la carte sont des `feature`, par exemple l'ENSEEIHT, la D314, ...

Expand All @@ -66,3 +70,15 @@ Elle détermine les `feature` à afficher, et les convertit en `Mesh`.
Nous avons décidé d'utiliser le standard GeoJson pour le stockage des données.

Nous avons créé un parseur convertissant les `features` (objet GeoJson) à l'aide de la librairie [jackson](https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind).

#### 2ème itération

Nous nous sommes rendu compte que la plupart des cartes libres étaient au format XML ([OSM](https://wiki.openstreetmap.org/wiki/OSM_XML)). Nous avons donc implémenté un parser XML pour convertir les données reçues depuis l'API OSM vers les objets java que nous avions créés lors de la première itération.

> diagramme UML
Nous avons de plus automatisé la récupération des données cartographiques sur internet.

Pour des raisons d'optimisation, nous comptons utiliser le puissant algorithme de recherche de [MongoDB](https://www.mongodb.com/fr). Nous décidons donc d'enregistrer les données dans une base de données NoSQL au format Json.

Pour un affichage rapide en condition d'utilisation nous sommes en train de réfléchir à pré-calculer toutes les données d'affichage graphiques lors de la première lecture de la carte. Ainsi, les fois suivantes, les données seront plus à calculer, mais seulement à aller chercher dans la base de données.

0 comments on commit d724abb

Please sign in to comment.