IgcViewer – dwie natywne aplikacje Linux do analizy lotów szybowcowych z plików IGC

⏱️ Przewidywany czas czytania: 7 min

IgcViewer – dwie natywne aplikacje Linux do analizy lotów szybowcowych z plików IGC

Jeśli latasz na szybowcach, paralotniach lub bierzesz udział w zawodach szybowcowych, z pewnością znasz format plików IGC. To standardowy rejestrator lotu, który zawiera szczegółowe dane o trasie, wysokości, prędkości i punktach zwrotnych. Jednak surowy plik IGC to tylko zbiór danych – prawdziwą wartość zyskuje dopiero po wizualizacji i analizie.

Większość dostępnych narzędzi do analizy IGC to albo ciężkie, komercyjne programy, albo przestarzałe aplikacje, które nie wykorzystują potencjału nowoczesnych systemów Linux. IgcViewer to projekt, który zmienia to podejście – oferując dwie lekkie, natywne aplikacje desktopowe (jedną opartą na GTK3, drugą na Qt), które pozwalają na szybką i intuicyjną analizę lotów bezpośrednio na Twoim komputerze z Linuxem.

Czym są pliki IGC i dlaczego warto je analizować?

Format IGC (International Gliding Commission) to standard używany w lotnictwie szybowcowym do rejestracji danych z lotu. Każdy plik zawiera:

  • Ślad GPS: dokładną trasę przelotu z punktami kontrolnymi
  • Dane wysokości: zmiany wysokości w czasie, co pozwala na analizę termiki
  • Punkty zwrotne: oznaczone miejsca, które pilot musiał ominąć podczas zawodów
  • Czasy i daty: dokładny czas startu, lądowania i przelotu przez punkty
  • Dane z czujników: w zależności od rejestratora – prędkość, wznoszenia/opadania

Analiza tych danych po locie jest kluczowa dla rozwoju umiejętności pilota. Pozwala zrozumieć, gdzie znalazłeś najlepszą termikę, jak optymalnie wykorzystać warunki atmosferyczne i jak poprawić technikę lotu.

Dwie wersje, jeden cel – GTK i Qt

Projekt IgcViewer dostępny jest w dwóch wersjach, co daje użytkownikom wybór zgodnie z ich preferencjami środowiska graficznego:

gtk_IgcViewer – dla użytkowników GNOME i środowisk GTK

Wersja GTK3 została zaprojektowana z myślą o użytkownikach środowisk GNOME, XFCE, MATE i innych opartych na GTK. Aplikacja wykorzystuje:

  • GTK3: natywny interfejs dopasowany do środowiska
  • Cairo: wydajne renderowanie wykresów
  • WebKitGTK: zaawansowana wizualizacja mapy
  • Leaflet + OpenStreetMap: interaktywne mapy online bez opłat

qt_IgcViewer – dla użytkowników KDE i środowisk Qt

Wersja Qt skierowana jest do użytkowników środowiska KDE Plasma oraz innych opartych na Qt. Aplikacja napisana w C++ wykorzystuje pełnię możliwości frameworka Qt, zapewniając:

  • Natywny wygląd: idealna integracja z KDE i innymi środowiskami Qt
  • Wydajność: zoptymalizowany kod C++17
  • Przenośność: możliwość kompilacji na różne platformy (Linux, Windows)

Kluczowe funkcje obu wersji

Niezależnie od wybranej wersji (GTK lub Qt), IgcViewer oferuje bogaty zestaw funkcji analitycznych:

  • Interaktywna mapa lotu: wizualizacja trasy na mapie OpenStreetMap z możliwością przybliżania, oddalania i przesuwania
  • Profil wysokości: wykres zmian wysokości w czasie, pozwalający zidentyfikować kominy termiczne
  • Statystyki lotu: podstawowe dane takie jak czas lotu, maksymalna wysokość, średnia prędkość, dystans
  • Analiza termiki: identyfikacja stref wznoszenia i opadania, co jest kluczowe dla doskonalenia techniki
  • Wykrywanie maksimum: automatyczne zaznaczanie najwyższej osiągniętej wysokości i maksymalnej prędkości
  • Połączone podświetlanie: zaznaczenie punktu na wykresie automatycznie podświetla odpowiadające mu miejsce na mapie i odwrotnie
  • Wsparcie standardu IGC: kompatybilność z plikami z większości rejestratorów używanych w szybowcach, paralotniach i zawodach szybowcowych

Dlaczego natywne aplikacje Linux, a nie przeglądarka?

Wiele narzędzi do analizy IGC działa wyłącznie online lub wymaga instalacji ciężkich środowisk. IgcViewer stawia na podejście „native first”:

  • Szybkość: natywne aplikacje GTK/Qt uruchamiają się natychmiast, bez konieczności ładowania przeglądarki i skryptów JavaScript
  • Prywatność: pliki IGC pozostają na Twoim komputerze – nie są wysyłane do żadnych serwisów zewnętrznych
  • Praca offline: po załadowaniu mapy możesz analizować loty nawet bez połączenia z internetem
  • Integracja z systemem: natywne menu, skróty klawiszowe i zachowanie zgodne z konwencjami Twojego środowiska graficznego
  • Niskie zużycie zasobów: lekkie aplikacje C++ nie obciążają systemu tak jak przeglądarki internetowe

Wymagania systemowe i instalacja

Obie wersje IgcViewer wymagają systemu Linux oraz podstawowych narzędzi programistycznych do kompilacji.

Wymagania dla gtk_IgcViewer:

# Debian / Ubuntu:
sudo apt install build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.0-dev

# Fedora:
sudo dnf install gcc-c++ pkgconfig gtk3-devel webkit2gtk3-devel

# Arch Linux:
sudo pacman -S base-devel gtk3 webkit2gtk

Wymagania dla qt_IgcViewer:

# Debian / Ubuntu:
sudo apt install build-essential qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools

# Fedora:
sudo dnf install gcc-c++ qt5-qtbase-devel

# Arch Linux:
sudo pacman -S base-devel qt5-base

Kompilacja i uruchomienie:

Po zainstalowaniu zależności, proces kompilacji jest prosty:

# 1. Sklonuj wybrane repozytorium
git clone https://github.com/marcin-filipiak/gtk_IgcViewer.git
# lub
git clone https://github.com/marcin-filipiak/qt_IgcViewer.git

# 2. Przejdź do katalogu
cd gtk_IgcViewer
# lub
cd qt_IgcViewer

# 3. Skompiluj (dla wersji GTK)
./GCompileAndPack.sh

# 4. Uruchom
./igc_viewer

Dla wersji Qt proces może się nieznacznie różnić – szczegóły znajdziesz w dokumentacji w repozytorium.

Dla kogo jest IgcViewer?

IgcViewer to narzędzie stworzone z myślą o:

  • Pilotach szybowcowych: którzy chcą analizować swoje przeloty i doskonalić technikę lotu termicznego
  • Paralotniarzach: szukających prostego narzędzia do wizualizacji tras przelotów
  • Zawodnikach szybowcowych: przygotowujących się do konkursów i analizujących wyniki
  • Instruktorach lotu: którzy potrzebują narzędzia do omawiania lotów z uczniami
  • Entuzjastach lotnictwa: którzy chcą zobaczyć, jak wyglądał przelot na mapie
  • Użytkownikach Linuxa: ceniących natywne, lekkie aplikacje zamiast ciężkich rozwiązań webowych

Porównanie z innymi narzędziami

Na rynku istnieje kilka narzędzi do analizy IGC, ale większość z nich ma istotne ograniczenia:

  • SeeYou: potężne, komercyjne narzędzie, ale płatne i dostępne głównie na Windows
  • LXNAV Analyse: dedykowane dla rejestratorów LX, ograniczona kompatybilność
  • Narzędzia online: wymagają przesyłania plików do zewnętrznych serwerów, co budzi obawy o prywatność
  • Stare aplikacje GTK1/GTK2: niekompatybilne z nowoczesnymi systemami Linux

IgcViewer wypełnia lukę między tymi rozwiązaniami – jest darmowy, open-source, natywny dla Linuxa i szanuje prywatność użytkownika.

Rozwój i społeczność

Oba projekty są rozwijane jako open-source na licencji Apache-2.0. Oznacza to, że możesz:

  • Pobierać i używać aplikacji całkowicie za darmo
  • Modyfikować kod źródłowy według własnych potrzeb
  • Zgłaszać błędy i propozycje nowych funkcji przez GitHub Issues
  • Wnosić swój wkład przez pull requesty

Jeśli jesteś programistą C++ i chciałbyś dodać nowe funkcje (np. eksport do innych formatów, zaawansowaną analizę statystyczną, integrację z serwisami szybowcowymi), zachęcam do forkowania repozytoriów i współpracy.

Podsumowanie

IgcViewer to dowód na to, że do analizy danych lotniczych nie są potrzebne drogie, komercyjne programy. Dwie natywne aplikacje – jedna oparta na GTK3, druga na Qt – oferują szybki, intuicyjny i prywatny sposób na wizualizację i analizę lotów szybowcowych bezpośrednio na systemie Linux.

Niezależnie od tego, czy preferujesz środowisko GNOME, czy KDE, znajdziesz wersję idealnie dopasowaną do Twojego systemu. Oba projekty są lekkie, szybkie i w pełni funkcjonalne – gotowe do użycia zaraz po skompilowaniu.

Repozytoria:


Latasz na szybowcu lub paralotni? Używasz Linuxa do analizy swoich lotów? Podziel się swoimi doświadczeniami z IgcViewer w komentarzach!