2023-10-08 • Décollage 10:17:12 • 9m 48s • 5.89 km
vol
Frassette
Vol de 9m 48s depuis Frassette (décollage 10:17:12). Gain d’altitude 1 m, vitesse max 50.9 km/h.
Date de publication
8 octobre 2023
✈️ Résumé du vol
Le 2023-10-08, décollage à 10:17:12 depuis Frassette. Nicolas a volé 9m 48s avec sa voile Hook 5P, pour atterrir à Vionnaz. Vol caractérisé par un gain d’altitude de 1 m et une vitesse maximale de 50.9 km/h.
📊 Statistiques clés
Valeur
🛫 Décollage
10:17:12 (heure locale)
🛬 Atterrissage
10:27:01 (heure locale)
⏱️ Durée
10 min
📈 Distance totale
5.89 km
📏 Distance directe
2.54 km
🏔️ Alt. décollage
1356 m
🏔️ Alt. max
1356 m
🏔️ Alt. atterrissage
445 m
📊 Gain altitude
1 m
🚀 Vitesse max
50.9 km/h
⬆️ Taux montée max
0.6 m/s
⬇️ Taux chute max
5.2 m/s
📐 Finesse
2.9 :1
📡 Qualité GPS
100 %
🛰️ Alt. GPS max
1356 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-10-08-XSD-ULT-01_hike.md
📖 Mon récit de vol
Avec les copains et la famille !
Quelle belle organisation ! Manu et les enfants étaient en plaine avec Laure et les filles, pendant que Sam, Jean-Da et moi évoluions dans les airs. Ces moments où copains et famille se retrouvent autour de notre passion sont vraiment précieux.
Plein de joie dans ce vol partagé ! Il y a quelque chose de magique quand les gens qu’on aime sont réunis, certains au sol pour encourager, d’autres en l’air pour voler ensemble. Cette dimension familiale et amicale du parapente en fait bien plus qu’un simple sport - c’est un véritable art de vivre.
📸 Photos du vol
Galerie
2023-10-08-XSD-ULT-01_1
2023-10-08-XSD-ULT-01_2
2023-10-08-XSD-ULT-01_3
📡 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: 1356 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: "Frassette"subtitle: "2023-10-08 • Décollage 10:17:12 • 9m 48s • 5.89 km"date: "2023-10-08"categories: ["vol", "Frassette"]description: "Vol de 9m 48s depuis Frassette (décollage 10:17:12). Gain d'altitude 1 m, vitesse max 50.9 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-10-08-XSD-ULT-01")][[1]]```## ✈️ Résumé du volLe **2023-10-08**, décollage à **10:17:12** depuis **Frassette**. **Nicolas** a volé **9m 48s** avec sa voile **Hook 5P**, pour atterrir à **Vionnaz**. Vol caractérisé par un gain d'altitude de **1 m** et une vitesse maximale de **50.9 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-10-08-XSD-ULT-01')">🔍 Plein écran</button><button class="map-control-btn" onclick="window.open('../../data/exports/2023-10-08-XSD-ULT-01/flight_map.html', '_blank')">🔗 Ouvrir</button>::::::::: {.flight-map-wrapper #flight-map-2023-10-08-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-10-08-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-10-08-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-10-08-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-10-08-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-10-08-XSD-ULT-01.md`")}```## 📸 Photos du vol```{r photos, results='asis'}# Recherche du dossier photosphotos_dir <-file.path("../../img", "2023-10-08-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-10-08-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-10-08-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)*