donnees_20260325_142953

49,00 

Visualiser la ligne de visée (LOS) entre deux points géographiques

UGS : donnees_20260325_142953 Catégorie :

Fiche Descriptive Complète : Interface d’Analyse de Terrain (LOS)

🔷 INFORMATIONS GÉNÉRALES

Champ Détail

Nom du template terrain_analysis_dashboard.html

Version 1.1.0 (Migration Python vers Web)

Date de création 25/03/2026

Auteur / Designer Refoia Jeremy Tech

Type de page Dashboard Technique / Outil de Topographie

Objectif principal Visualiser la ligne de visée (LOS) entre deux points géographiques

🎯 DESCRIPTION FONCTIONNELLE

📌 Que fait ce template ?

Ce template est une interface de visualisation de données topographiques. Il permet de modéliser le relief du terrain (via interpolation) et de calculer mathématiquement si une Ligne de Visée est OBSTRUÉE ou DÉGAGÉE entre un « Chef de Partie » et une « Cible ». Il transforme les calculs de pente m=x2​−x1​y2​−y1​​ en un graphique dynamique.

📌 Public cible (Persona)

👤 Chef de Partie / Géomètre : Pour vérifier la faisabilité d’une mesure optique.

👤 Ingénieur Télécom : Pour valider la liaison hertzienne entre deux pylônes.

👤 Planificateur de Mission : Pour anticiper les obstacles naturels sur un trajet.

⚙️ SPÉCIFICATIONS TECHNIQUES

🌐 Environnement & Compatibilité

Standard HTML : HTML5 Sémantique

Framework CSS : Tailwind CSS (Layout) + Custom CSS (Graphiques)

Librairie Graphique : Chart.js ou Plotly.js (pour répliquer le rendu Matplotlib)

Responsive : ✅ Oui — Optimisé pour tablettes de chantier

📦 Dépendances / Assets

HTML

📥 ENTRÉES — CONTENU DYNAMIQUE

# Nom de la variable Type Obligatoire Description

1 distance_km float ✅ Oui Distance totale du segment (ex: 10km)

2 altitude_depart int ✅ Oui Altitude du point A (Chef de Partie)

3 altitude_cible int ✅ Oui Altitude du point B (Cible)

4 terrain_data array ✅ Oui Liste des points d’élévation (y_terrain)

5 is_obstructed bool ✅ Oui État calculé de la visibilité (Red/Green)

🧱 STRUCTURE DU FICHIER — DOM

index.html

📌 : Meta SEO, Viewport mobile, Google Fonts (Inter).

📌

🏗️

: Logo + Statut de connexion GPS.

🏗️

:

🧱 Section Paramètres : Formulaire pour saisir les altitudes et distances.

🧱 Section Visualisation :

: Zone de rendu du graphique (Relief + Ligne de visée).

* 🧱 **Section Résultat** : Badge dynamique (Vert « DÉGAGÉ » / Rouge « OBSTRUÉ »).

🏗️

: Coordonnées du projet + Bouton « Exporter en PDF/PNG ».

🎨 CHARTE GRAPHIQUE

🎨 Palette de Couleurs (Variables CSS)

CSS

:root {

–color-terrain: #9CA3AF; /* Gris (Alpha 0.3) pour le relief */

–color-safe: #22C55E; /* Vert pour visée dégagée */

–color-danger: #EF4444; /* Rouge pour obstruction */

–color-point: #3B82F6; /* Bleu pour les points A et B */

}

♿ ACCESSIBILITÉ & SEO

✅ Aria-live : Pour annoncer vocalement le changement de statut « Obstrué/Dégagé » lors de la mise à jour des calculs.

✅ Contrastes : La ligne de visée doit avoir une épaisseur de 2px minimum pour être lisible sur le fond gris du terrain.

✅ Labels : Tous les champs input (Altitude, Distance) possèdent des labels associés.

🧪 TESTS & VALIDATION

# Cas de test Action Résultat attendu

1 Obstruction Régler altitude cible < pic du terrain La ligne devient Rouge + Label OBSTRUÉ 2 Dégagement Augmenter altitude départ La ligne devient Verte + Label DÉGAGÉ 3 Export Cliquer sur "Sauvegarder" Téléchargement du graphique en 300 DPI 📝 EXEMPLE D'INTÉGRATION (Logique JS) JavaScript // Simulation de la logique Python en JS const calculateLOS = (x, yTerrain, m, b) => {

const lineOfSight = x.map(val => m * val + b);

const isObstructed = yTerrain.some((alt, i) => alt > lineOfSight[i]);

return isObstructed ? ‘RED’ : ‘GREEN’;

};

📌 Fiche générée par — Agent IA Refoia Jeremy Tech

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “donnees_20260325_142953”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *