Vol de 8m 35s depuis Torgon (virage) (décollage 09:30:08). Gain d’altitude 0 m, vitesse max 50.4 km/h.
Date de publication
20 août 2023
✈️ Résumé du vol
Le 2023-08-20, décollage à 09:30:08 depuis Torgon (virage). Nicolas a volé 8m 35s avec sa voile Hook 5P, pour atterrir à Vionnaz. Vol caractérisé par un gain d’altitude de 0 m et une vitesse maximale de 50.4 km/h.
📊 Statistiques clés
Valeur
🛫 Décollage
09:30:08 (heure locale)
🛬 Atterrissage
09:38:44 (heure locale)
⏱️ Durée
9 min
📈 Distance totale
3.9 km
📏 Distance directe
1.55 km
🏔️ Alt. décollage
1056 m
🏔️ Alt. max
1060 m
🏔️ Alt. atterrissage
450 m
📊 Gain altitude
0 m
🚀 Vitesse max
50.4 km/h
⬆️ Taux montée max
0.2 m/s
⬇️ Taux chute max
6.8 m/s
📐 Finesse
2.6 :1
📡 Qualité GPS
100 %
🛰️ Alt. GPS max
1060 m
📈 Profil d’altitude
🏃 Vitesse au sol
⬆️⬇️ Montées et chutes
🗺️ Trace de vol
Vue d’ensemble
Carte interactive
🗺️ Carte interactive du vol
🥾 Hike & Fly
🚗 Accès direct en véhicule
💡 Pour ajouter des infos hike & fly, créer le fichier : doc/2023-08-20-XSD-ULT-01_hike.md
📖 Mon récit de vol
Petit vol du matin sous le dôme de chaleur
Un vol matinal parfait sous ce fameux dôme de chaleur ! Jean-Da et Sam étaient de la partie pour cette sortie matinale, toujours très sympa de voler ensemble.
Les conditions étaient idéales pour ce type de vol tranquille - la fraîcheur matinale avant que la chaleur ne s’installe, cette atmosphère si particulière du petit matin en montagne. Un vol qui procure un vrai contentement, simple et authentique. Ces moments matinaux sont précieux avant que la journée ne devienne trop chaude.
📸 Photos du vol
Galerie
2023-08-20-XSD-ULT-01_1
2023-08-20-XSD-ULT-01_2
📡 Informations techniques (IGC)
Qualité des données GPS
Validité GPS: 100% des points validés
Sources d’altitude: GPS pour affichage, barométrique pour calculs de vario
Altitude GPS max: 1060 m
Métadonnées automatiques
Ce vol a été traité depuis un fichier IGC avec extraction automatique des métadonnées (pilote, parapente, date).
Vol enregistré avec Ultrabip - Analysé automatiquement Template optimisé avec Claude
Code source
---title: "Torgon (virage)"subtitle: "2023-08-20 • Décollage 09:30:08 • 8m 35s • 3.9 km"date: "2023-08-20"categories: ["vol", "Torgon (virage)"]description: "Vol de 8m 35s depuis Torgon (virage) (décollage 09:30:08). Gain d'altitude 0 m, vitesse max 50.4 km/h."---```{r setup, include=FALSE}knitr::opts_chunk$set(echo =FALSE, warning =FALSE, message =FALSE)library(jsonlite)library(DT)# Chargement des données du voldb <-fromJSON("../../data/processed/flights.json", simplifyVector =FALSE)flight <- db$flights[sapply(db$flights, function(f) f$id =="2023-08-20-XSD-ULT-01")][[1]]```## ✈️ Résumé du volLe **2023-08-20**, décollage à **09:30:08** depuis **Torgon (virage)**. **Nicolas** a volé **8m 35s** avec sa voile **Hook 5P**, pour atterrir à **Vionnaz**. Vol caractérisé par un gain d'altitude de **0 m** et une vitesse maximale de **50.4 km/h**.```{r conditions, results='asis'}# Affichage des conditions si renseignéesconditions <-""if (!is.null(conditions) && conditions !=""&&!is.na(conditions) && conditions !=""&& conditions !="NA") {cat("### 🌤️ Conditions\n")cat(conditions, "\n\n")}```## 📊 Statistiques clés```{r stats-summary}# Tableau simple des stats principalesstats_data <-data.frame("🛫 Décollage"=paste(flight$takeoff_time, "(heure locale)"),"🛬 Atterrissage"=paste(flight$landing_time, "(heure locale)"),"⏱️ Durée"=paste(round(flight$duration_minutes), "min"),"📈 Distance totale"=paste(flight$total_distance_km, "km"),"📏 Distance directe"=paste(flight$straight_distance_km, "km"),"🏔️ Alt. décollage"=paste(flight$takeoff_coords$elevation, "m"),"🏔️ Alt. max"=paste(flight$max_elevation, "m"),"🏔️ Alt. atterrissage"=paste(flight$landing_coords$elevation, "m"),"📊 Gain altitude"=paste(flight$elevation_gain_total, "m"),"🚀 Vitesse max"=paste(flight$max_speed_kmh, "km/h"),"⬆️ Taux montée max"=paste(flight$max_climb_rate, "m/s"),"⬇️ Taux chute max"=paste(flight$max_sink_rate, "m/s"),"📐 Finesse"=ifelse(is.null(flight$glide_ratio) ||is.na(flight$glide_ratio) ||length(flight$glide_ratio) ==0, "N/A", paste(flight$glide_ratio, ":1")),check.names =FALSE)# Nouvelles métriques IGC si disponibles (avec vérification sécurisée)if (!is.null(flight$data_quality_percent) &&!is.na(flight$data_quality_percent) && flight$data_quality_percent !="") { stats_data[["📡 Qualité GPS"]] <-paste(flight$data_quality_percent, "%")}if (!is.null(flight$elevation_gps_available) &&isTRUE(flight$elevation_gps_available) &&!is.null(flight$max_elevation_gps) &&!is.na(flight$max_elevation_gps) && flight$max_elevation_gps !="") { stats_data[["🛰️ Alt. GPS max"]] <-paste(flight$max_elevation_gps, "m")}knitr::kable(t(stats_data), col.names ="Valeur",align ="c")```## 📈 Profil d'altitude::: {.flight-chart}:::## 🏃 Vitesse au sol ::: {.flight-chart}:::## ⬆️⬇️ Montées et chutes::: {.flight-chart}:::## 🗺️ Trace de vol### Vue d'ensemble::: {.flight-chart}:::### Carte interactive::: {.flight-map-container}::: {.map-header}**🗺️ Carte interactive du vol**::: {.map-controls}<button class="map-control-btn" onclick="toggleFullscreen('2023-08-20-XSD-ULT-01')">🔍 Plein écran</button><button class="map-control-btn" onclick="window.open('../../data/exports/2023-08-20-XSD-ULT-01/flight_map.html', '_blank')">🔗 Ouvrir</button>::::::::: {.flight-map-wrapper #flight-map-2023-08-20-XSD-ULT-01}```{r map, out.width="100%", out.height="400px", results='asis'}# Inclusion de la carte en tant que iframe pour éviter les conflicts HTMLmap_path <-file.path("../../data/exports", "2023-08-20-XSD-ULT-01", "flight_map.html")cat(sprintf('<iframe src="%s" width="100%%" height="400px" frameborder="0" style="border-radius: 6px;"></iframe>', map_path))```::::::```{js}functiontoggleFullscreen(flightId) {const mapWrapper =document.getElementById('flight-map-'+ flightId);const isFullscreen = mapWrapper.classList.contains('fullscreen');if (isFullscreen) {// Sortir du plein écran mapWrapper.classList.remove('fullscreen');const overlay =document.querySelector('.fullscreen-overlay');if (overlay) overlay.remove(); } else {// Entrer en plein écran mapWrapper.classList.add('fullscreen');// Ajouter un bouton de fermetureconst overlay =document.createElement('div'); overlay.className='fullscreen-overlay'; overlay.innerHTML='✕ Fermer'; overlay.onclick= () =>toggleFullscreen(flightId);document.body.appendChild(overlay); }}// Échapper avec la touche ESCdocument.addEventListener('keydown',function(e) {if (e.key==='Escape') {const mapWrapper =document.querySelector('.flight-map-wrapper.fullscreen');if (mapWrapper) {const flightId = mapWrapper.id.replace('flight-map-','');toggleFullscreen(flightId); } }});```## 🥾 Hike & Fly```{r hike-info, results='asis'}# Recherche d'un fichier hike & flyhike_file <-file.path("../../doc", paste0("2023-08-20-XSD-ULT-01", "_hike.md"))if (file.exists(hike_file)) {# Lecture et affichage des infos hike hike_content <-readLines(hike_file, warn =FALSE)cat(paste(hike_content, collapse ="\n"))} else {cat("🚗 *Accès direct en véhicule*\n\n")cat("💡 Pour ajouter des infos hike & fly, créer le fichier : `doc/2023-08-20-XSD-ULT-01_hike.md`")}```## 📖 Mon récit de vol```{r story, results='asis'}# Recherche d'un fichier récitstory_file <-file.path("../../doc", paste0("2023-08-20-XSD-ULT-01", ".md"))if (file.exists(story_file)) {# Lecture et affichage du récit story_content <-readLines(story_file, warn =FALSE)cat(paste(story_content, collapse ="\n"))} else {cat("*Pas de récit disponible pour ce vol.*\n\n")cat("💡 Pour ajouter un récit, créer le fichier : `doc/2023-08-20-XSD-ULT-01.md`")}```## 📸 Photos du vol```{r photos, results='asis'}# Recherche du dossier photosphotos_dir <-file.path("../../img", "2023-08-20-XSD-ULT-01")if (dir.exists(photos_dir)) {# Lister toutes les images image_files <-list.files( photos_dir, pattern ="\\.(jpg|jpeg|png|gif)$", ignore.case =TRUE,full.names =FALSE )if (length(image_files) >0) {cat("### Galerie\n\n")# Afficher chaque imagefor (img in image_files) { img_path <-file.path("../../img", "2023-08-20-XSD-ULT-01", img) img_name <- tools::file_path_sans_ext(img)cat(sprintf("\n\n", img_name, img_path)) } } else {cat("*Dossier photos vide.*") }} else {cat("*Pas de photos disponibles pour ce vol.*\n\n")cat("💡 Pour ajouter des photos, créer le dossier : `img/2023-08-20-XSD-ULT-01/`")}``````{r igc-info, results='asis'}# Affichage des infos techniques IGC si disponibles (avec vérifications)if (!is.null(flight$data_quality_percent) &&!is.na(flight$data_quality_percent) && flight$data_quality_percent !="") {cat("## 📡 Informations techniques (IGC)\n\n")cat("### Qualité des données GPS\n")cat(sprintf("- **Validité GPS**: %s%% des points validés\n", flight$data_quality_percent))if (!is.null(flight$elevation_gps_available) &&isTRUE(flight$elevation_gps_available)) {cat("- **Sources d'altitude**: GPS pour affichage, barométrique pour calculs de vario\n")if (!is.null(flight$max_elevation_gps) &&!is.na(flight$max_elevation_gps) && flight$max_elevation_gps !="") {cat(sprintf("- **Altitude GPS max**: %s m\n", flight$max_elevation_gps)) } } else {cat("- **Source d'altitude**: Barométrique uniquement (affichage + calculs)\n") }cat("\n### Métadonnées automatiques\n")cat("Ce vol a été traité depuis un fichier IGC avec extraction automatique des métadonnées (pilote, parapente, date).\n\n")}```---*Vol enregistré avec Ultrabip - Analysé automatiquement* *Template optimisé avec [Claude](https://claude.ai)*