91 lines
No EOL
3.7 KiB
Markdown
91 lines
No EOL
3.7 KiB
Markdown
# 📄 Structure du Projet et Diagrammes Mermaid
|
|
|
|
Fichier `architecture.md` contenant une description complète de l'application avec **6 diagrammes Mermaid** :
|
|
|
|
## 📁 Structure du Dossier
|
|
|
|
```
|
|
Point-Cloud-Classifier-HTMX/
|
|
├── agents.md
|
|
├── docker-compose.yml # Configuration Docker (2 services)
|
|
├── Dockerfile.builder
|
|
├── Dockerfile.entwine # Backend avec Entwine
|
|
├── Dockerfile.frontend # Frontend avec HTMX
|
|
├── pyproject.toml
|
|
├── requirements.txt
|
|
├── Roo.md # Contexte du projet
|
|
├── architecture.md # 📄 NOUVEAU - Documentation complète
|
|
├── backend/
|
|
│ ├── __init__.py
|
|
│ ├── config.py # Configuration backend
|
|
│ ├── main.py # FastAPI backend
|
|
│ ├── data/
|
|
│ │ ├── uploads/ # Fichiers LAS bruts
|
|
│ │ └── ept/ # Nuages convertis
|
|
│ ├── routes/
|
|
│ │ ├── upload.py # Routes upload
|
|
│ │ ├── viewer.py # Routes visualisation
|
|
│ │ └── admin.py # Routes admin
|
|
│ ├── services/
|
|
│ │ ├── converter.py # Conversion Entwine
|
|
│ │ ├── manifest.py # Gestion manifest.json
|
|
│ │ └── html_generator.py # Génération HTML Potree
|
|
│ └── static/
|
|
│ └── potree/ # Assets Potree
|
|
└── frontend/
|
|
├── api_client.py # Client HTTP async
|
|
├── config.py # Configuration frontend
|
|
├── main.py # FastAPI frontend
|
|
├── components/ # Composants HTMX
|
|
├── routes/
|
|
│ ├── upload.py
|
|
│ ├── viewer.py
|
|
│ ├── admin.py
|
|
│ └── crop.py
|
|
├── static/
|
|
│ └── potree/
|
|
└── templates/
|
|
├── index.html
|
|
└── partials/
|
|
├── cloud_list.html
|
|
├── viewer.html
|
|
├── crop.html
|
|
├── backend_config.html
|
|
├── debug_panel.html
|
|
├── health_status.html
|
|
└── upload_result.html
|
|
```
|
|
|
|
## 🔄 Diagrammes Mermaid
|
|
|
|
### 1. Vue d'ensemble de l'architecture
|
|
Architecture globale avec Frontend (8091), Backend (8000), Outils externes (Potree, PDAL, Entwine) et Stockage.
|
|
|
|
### 2. Flux principal d'upload et conversion
|
|
SequenceDiagram montrant les 14 étapes : Upload → Vérification → Conversion Entwine → Manifeste → Visualisation.
|
|
|
|
### 3. Flux de visualisation
|
|
Flowchart LR de la liste des nuages → sélection → embed Potree → chargement EPT → visualisation 3D.
|
|
|
|
### 4. Flux de crop (réduction du nuage)
|
|
SequenceDiagram du traitement PDAL : Sélection box 3D → Filtre LAS → Conversion EPT → Nouveau nuage.
|
|
|
|
### 5. Architecture des routes
|
|
Mindmap détaillant toutes les routes Frontend et Backend avec leurs endpoints.
|
|
|
|
### 6. Diagramme complet des interactions
|
|
Flowchart TB complet avec 26 étapes numérotées, classes colorées par type (utilisateur, frontend, backend, outils, stockage, externe).
|
|
|
|
### 7. Structure des dossiers EPT
|
|
Graph TD montrant la structure interne d'un dossier EPT (manifest, ept.json, tuiles, hiérarchie, sources).
|
|
|
|
## 🎯 Fonctionnalités Documentées
|
|
|
|
1. **Upload et Conversion** - LAS/LAZ/PLY → EPT
|
|
2. **Visualisation 3D** - Potree Viewer WebGL
|
|
3. **Administration** - Liste, Debug, Suppression
|
|
4. **Traitement PDAL** - Crop 3D
|
|
5. **Configuration Dynamique** - URLs configurables
|
|
6. **Monitoring** - Health check, espace disque
|
|
|
|
Le fichier `architecture.md` est prêt à être utilisé comme contexte pour un agent AI et pour la revue des fonctionnalités. |