{target.data.line.rank}
{target.boat.getPhotosHtml('#img#')}
{target.boat.name}
{target.boat.getSailorsHtml('#fname# #lname#')}

Start{µ.toDate(target.data.boatClass.run.date,"FR:dddd dd mmmm ' at ' HH:MM 'FR'")}

Total distance{µ.toNumber(target.data.line.dtf," ¤1¤.")} nm

Position {µ.toDate(target.boat.track.currentLocation.timecode*1000,"FR:HH:MM")} FR
Heading {target.boat.track.currentLocation.heading} °
Speed {µ.toNumber(target.boat.track.currentLocation.getSpeed()," ¤1¤.")} kts
Hour retained {µ.toDate(target.data.line.date,"FR:HH:MM")} FR
Dist. to finish {µ.toNumber(target.data.line.dtf," ¤1¤.")} nm
Dist. to first +{µ.toNumber(target.data.line.dtl," ¤1¤.")} nm {µ.toNumber(Math.abs(target.data.line.dtlProgress)," ¤1¤.")} nm
Heading {target.data.line.heading} °
Speed | VMC {µ.toNumber(target.data.line.speed," ¤1¤.")} kts {µ.toNumber(target.data.line.vmg," ¤1¤.")} kts
Over 4 hours {µ.toNumber(target.data.line.dist4h/240*60," ¤1¤.")} kts {µ.toNumber(target.data.line.dist4h," ¤1¤.")} nm
overground {µ.toNumber(target.data.line.dog4h/240*60," ¤1¤.")} kts {µ.toNumber(target.data.line.dog4h," ¤1¤.")} nm
Over 24 hours {µ.toNumber(target.data.line.dist24h/1440*60," ¤1¤.")} kts {µ.toNumber(target.data.line.dist24h," ¤1¤.")} nm
overground {µ.toNumber(target.data.line.dog24h/1440*60," ¤1¤.")} kts {µ.toNumber(target.data.line.dog24h," ¤1¤.")} nm

Arrival{µ.toDate(target.boat.arrival.date,"FR:dd/mm/yyyy ' at ' HH:MM:ss 'FR'")}


Race time{µ.toRacetime(target.boat.arrival.racetime, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}

Penalty{µ.toRacetime(Math.abs(target.boat.arrival.penalty), "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}

Bonification{µ.toRacetime(Math.abs(target.boat.arrival.penalty), "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}

Official time{µ.toRacetime(target.boat.arrival.jury, "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}

Gap to first{µ.toRacetime(target.boat.arrival.gapToFirst, "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}

gap to previous{µ.toRacetime(target.boat.arrival.gapToPrevious, "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}


Over orthodromy{µ.toNumber(target.boat.arrival.orthoDistance, " ¤1¤.")} nm / {µ.toNumber(target.boat.arrival.orthoSpeed, " ¤1¤.")} kts

Overground{µ.toNumber(target.boat.arrival.overgroundDistance, " ¤1¤.")} nm / {µ.toNumber(target.boat.arrival.overgroundSpeed, " ¤1¤.")} kts

Cliquez sur le bateau pour le positionner
sur le temps intermédaire sélectionné
Pit Stop
Mode fantôme
Non localisé
À suspendu sa course
N'est pas encore parti
N'a pas pris le départ
N'a pas franchi la ligne de départ
N'a pas terminé la course
Disqualifié
CNS
A abandonné
{target.getPhotosHtml('#img#')}
{target.name}
{target.getSailorsHtml('#fname# #lname#')}
{target.comment}

Course des Caps 2025
Start on
Sunday 29 June 2025 at 14h00 FR
Update every hour
Split times at the gate
¤{target.line.rank}¤
{target.boat.getPhotosHtml('#img#')}
{target.boat.getIconHtml()}
{target.boat.name}
{target.boat.getSailorsHtml('#fname# #lname#')}
Start : {µ.toDate(target.boatClass.run.date,"FR:dddd dd mmmm ' at ' HH:MM 'FR'")}
Total distance : {µ.toNumber(target.line.dtf," ¤1¤.")} nm
Time at the gate : ¤{µ.toRacetime(target.boat.splittime.time, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
¤{µ.toNumber(target.boat.splittime.sog," ¤1¤.")}¤ nds
Gap to first : +¤{µ.toRacetime(target.boat.splittime.gap2firstBoat, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
since previous gate : ¤{µ.toRacetime(target.boat.splittime.time2prev, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
¤{µ.toNumber(target.boat.splittime.sog," ¤1¤.")}¤ nds
Time retained for calculation : ¤{µ.toDate(target.line.date,"FR:HH:MM' FR'")}¤
¤{target.line.heading}¤ °
¤{µ.toNumber(target.line.speed," ¤1¤.")}¤ kts
¤{µ.toNumber(target.line.dtf," ¤1¤.")}¤ nm
+¤{µ.toNumber(target.line.dtl," ¤1¤.")}¤ nm
Arrived le ¤{µ.toDate(target.boat.arrival.date,"FR:dd/mm/yyyy ' à ' HH:MM:ss 'FR'")}¤
In ¤{µ.toRacetime(target.boat.arrival.racetime, "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
Pit Stop
Stealth mode
Not localised
Suspend racing
Not yet started
Did not start the race
Did not cross the start line
Did not finish the race
Disqualified
CNS
Retired
¤{target.line.rank}¤
{target.boat.getPhotosHtml('#img#')}
{target.boat.name}
{target.boat.getSailorsHtml('#fname# #lname#')}
Waiting to start
Arrived
Racing
In pit stop
In stealth mode
Not localized
Suspends racing
Not yet started
Did not start
Did not cross the line
NDid not finished
Disqualified
CNS
Retired
Parcours
Date and time of start ¤{µ.toDate(target.boatClass.run.date,"FR:dddd dd mmmm ' at ' HH:MM 'FR'")}¤
Distance to sail ¤{µ.toNumber(target.line.dtf," ¤1¤.")}¤ nautical miles
Tableau de bord
N S E W {target.boat.getIconHtml()}
¤{target.line.heading}¤°
20 35 5 25 40 10 15 30 0
¤{µ.toNumber(target.line.speed,'¤1¤.')}¤ nds
¤{µ.toNumber(target.line.vmg,'¤1¤.')}¤ nds
Environnement
¤{target.line.windspeed/10}¤ kts ¤{target.line.winddir}¤°
¤{target.line.tempair/10}¤°C
¤{target.line.waveheight/10}¤m
¤{target.line.tempwater/10}¤°C
Distances
¤{µ.toNumber(target.boatClass.run.length - target.line.dtf," ¤1¤.")}¤ nm
¤{µ.toNumber(target.line.dtf," ¤1¤.")}¤ nm
¤{µ.toNumber(target.line.dtl," ¤1¤.")}¤ nm
¤{µ.toNumber(target.line.advance," ¤1¤.")}¤ nm
Over 4 hours ¤{µ.toNumber(target.line.dist4h," ¤1¤.")}¤ nm ¤{µ.toNumber(target.line.dist4h/240*60," ¤1¤.")}¤ kts
Over ground ¤{µ.toNumber(target.line.dog4h," ¤1¤.")}¤ nm ¤{µ.toNumber(target.line.dog4h/240*60," ¤1¤.")}¤ kts
Over 24 hours ¤{µ.toNumber(target.line.dist24h," ¤1¤.")}¤ nm ¤{µ.toNumber(target.line.dist24h/1440*60," ¤1¤.")}¤ kts
Over ground ¤{µ.toNumber(target.line.dog24h," ¤1¤.")}¤ nm ¤{µ.toNumber(target.line.dog24h/1440*60," ¤1¤.")}¤ kts
Split times
Résultats
Arrived ¤{µ.toDate(target.boat.arrival.date,"FR:dd/mm/yyyy ' at ' HH:MM:ss 'FR'")}¤
Race time ¤{µ.toRacetime(target.boat.arrival.racetime, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
Penalty ¤{µ.toRacetime(Math.abs(target.boat.arrival.penalty), "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
Bonification ¤{µ.toRacetime(Math.abs(target.boat.arrival.penalty), "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
Jury time ¤{µ.toRacetime(target.boat.arrival.jury, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
gap to leader ¤{µ.toRacetime(target.boat.arrival.gapToFirst, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
gap to previous ¤{µ.toRacetime(target.boat.arrival.gapToPrevious, "[0]d [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}¤
Over orthodromy ¤{µ.toNumber(target.boat.arrival.orthoDistance, " ¤1¤.")}¤ nm / ¤{µ.toNumber(target.boat.arrival.orthoSpeed, " ¤1¤.")}¤ kts
Over ground ¤{µ.toNumber(target.boat.arrival.overgroundDistance, " ¤1¤.")}¤ nm / ¤{µ.toNumber(target.boat.arrival.overgroundSpeed, " ¤1¤.")}¤ kts
 
{target.name}
{µ.toDate(target.data.timecode*1000,"FR:dd/mm/yyyy ' à ' HH:MM:ss 'FR'")}
{µ.toOrdinal(target.data.rank)} • {µ.toRacetime(target.data.time2prev, "[0]j [1]h [2]min [3]s¤[0]h [1]min [2]s¤[0]min [1]s¤[0]s¤¤N/A")}
{µ.toNumber(target.data.dog2prev," ¤1¤.")} nm • {µ.toNumber(target.data.sog2prev," ¤1¤.")} nds
Check at least one line confirm the action confirm the deletion ? automatic typeDogger Bank B Dogger Bank C Dudgeon East Anglia One East Anglia Three Galloper North Galloper South Greater Gabbard North Greater Gabbard South Hornsea Humber Gateway Area updated every 5 minutes Hywind Inchape TSS Pas de Calais Lincs London Array Moray Neart na Gaoithe Race Bank Rampion Scroby Sands Seagreen Sheringham Shoal Sofia Thanet Triton Knoll Westernmost Rough TSS Casquets TSS Seven Stones TSS Scilly south TSS Fastnet Aberdeen Dogger Bank A Kincardine Floating Offshore TSS Scilly west TSS Ouessant TSS North Hinder TSS Off Botney Ground TSS Off Brown Ridge TSS Off TexelEastwards TSS SunkEast TSS Sunk North TSS Sunk South TSS West Friesland Blyth Gunfleet Dieppe Le Treport ZI Parc Eolien du Calvados AVURNAV 145 25 Fecamp Lulworth Inner Firing Range Straight Point Firing Range Centrale Electrique Paluel Hebrides Firing Range
Race tracker & calculation www.geovoile.com
TrackingYellowbrickwww.ybtracking.com