Scoring for hang gliding and paragliding competitions
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
__shake-build
build
cmd
comp
detour-via-sci
detour-via-uom
earth
flare-timing
fsdb
gap
igc
kml
latlng
lookup
mask
nix
route
scribe
siggy-chardust
span
stackage2nix
task
tasty-compare
test
tools/build_rules
track
units
vernix
www
zone
.gitattributes
.gitignore
.hlint.yaml
.travis.yml
BUILD.bazel
BUILDING.md
EXAMPLE.md
LICENSE.md
README.md
TESTING.md
WORKSPACE
build.bat
cabal-shake-build.sh
cabal.project
cabal.project.local
default-extensions.bzl
default-extensions.dhall
default-tests.dhall
defaults.dhall
forbes-2012
hlint.dhall
pier-shake-build.sh
pier.yaml
shell.nix
stack-cabal2nix.yaml
stack-dhall.yaml
stack-pier.yaml
stack-shake-build.sh
stack-stackage2nix.yaml
stack-yaml-packages.nix
stack.yaml

README.md

Flare Timing

Build Status

Flare Timing will show a pilot's competition score in detail but is currently a work in progress.

The official scoring program for hang gliding and paragliding competitions is FS. Its principal output for a competition task is an html table of pilot scores. In addition to the day's scores, there are columns in this table for the time on course, the distance flown and for the breakdown of the scored points among distance points, lead points, time points and arrival points.

Looking for examples? There is a good archive of past Forbes Flatlands competition results, for instance results for task 1 of the 19th World Hang Gliding Champs.

Commission Internationale de Vol Libre (CIVL - Hang Gliding and Paragliding Commission) is an Air Sport Commission (ASC) of the Fédération Internationale Aéronautique (FAI). CIVL produce FS. It is the work of paid and volunteer developers.

The scoring method is well documented. Principal documents are;

  • Sporting Code Section 7A - Annex GAP
    • The definitive guide produced and maintained by CIVL.
  • GAP 2002
    • A much shorter and less formal guide that is a good first read to gain an understanding of why GAP is needed and how it works.

Flare Timing provides a reference implementation of GAP and shows the working of how a pilot's score is calculated.

Usage

See the separate discussion of building and testing.

With an FS comp file and related track logs as inputs, score the comp;

  1. Extract the inputs with extract-input.
  2. Trace the shortest path to fly a task with task-length.
  3. Find pairs of fixes crossing over zones with cross-zone.
  4. Interpolate between crossing fixes for the time and place where a track tags a zone with tag-zone.
  5. Index fixes from the time of first crossing with align-time.
  6. Discard fixes that get further from goal and note leading area with discard-further.
  7. Mask a task over its tracklogs with mask-track.
  8. Group and count land outs with land-out.
  9. Score the competition with gap-point.

Documentation is available online at flare-timing.readthedocs.io and there's a worked example too.

License

Copyright Phil de Joux 2017-2018

This software is subject to the terms of the Mozilla Public License, v2.0. If a copy of the MPL was not distributed with this file, you can obtain one at http://mozilla.org/MPL/2.0/.