From 4eeaa24870ca03be2cc6efd83db8e2db5df2db5f Mon Sep 17 00:00:00 2001
From: Mark Ross <mark.ross@atos.net>
Date: Wed, 7 Aug 2024 09:29:14 +0100
Subject: [PATCH] hot rod super speedway ccw

---
 .../personal_track_annotations.py             |  2 +
 src/tracks/hot_rod_speedway_ccw_track.py      | 97 +++++++++++++++++++
 src/tracks/tracks.py                          |  3 +-
 3 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 src/tracks/hot_rod_speedway_ccw_track.py

diff --git a/src/personalize/configuration/personal_track_annotations.py b/src/personalize/configuration/personal_track_annotations.py
index ec411da..d34e035 100644
--- a/src/personalize/configuration/personal_track_annotations.py
+++ b/src/personalize/configuration/personal_track_annotations.py
@@ -109,6 +109,8 @@
 
 hot_rod_speedway_annotations = []
 
+hot_rod_speedway_ccw_annotations = []
+
 hot_rod_super_speedway_annotations = []
 
 hot_rod_super_speedway_cw_annotations = []
diff --git a/src/tracks/hot_rod_speedway_ccw_track.py b/src/tracks/hot_rod_speedway_ccw_track.py
new file mode 100644
index 0000000..50d1fc7
--- /dev/null
+++ b/src/tracks/hot_rod_speedway_ccw_track.py
@@ -0,0 +1,97 @@
+#
+# DeepRacer Guru
+#
+# Version 3.0 onwards
+#
+# Copyright (c) 2021 dmh23
+#
+
+from src.tracks.track import Track
+import src.personalize.configuration.personal_track_annotations as config
+
+
+class HotRodSpeedwayCounterClockwiseTrack(Track):
+    def __init__(self):
+        super().__init__()
+
+        self._ui_name = "Hot Rod Speedway Counter Clockwise"
+        self._ui_description = "Featuring a short length of just 42.25m, the Hot Rod Speedway caters to speed loving dragsters with multiple fast running drag strips tied together by friendly sweeping turns. Expect to see blistering fast times this month as models rev their engines and burn rubber around this track."
+        self._ui_length_in_m = 42.25  # metres
+        self._ui_width_in_cm = 107  # centimetres   # TODO
+        self._world_name = "arctic_open_ccw"
+        self._track_sector_dividers = [50, 98, 135]
+        self._annotations = config.hot_rod_speedway_ccw_annotations
+        self._track_width = 1.067
+
+        self._track_waypoints = [(6.7659668560810085, 2.90388375668919), (6.636735439300539, 2.917999029159546), 
+                                 (6.507506828563805, 2.9321399685574048), (6.336883544921875, 2.9508105516433716), 
+                                 (6.0370399951934814, 2.9837015867233276), (5.7372050285339355, 3.0166724920272827), 
+                                 (5.437378883361816, 3.049723505973816), (5.1375620365142805, 3.082854390144348), 
+                                 (4.837752103805542, 3.116052985191345), (4.537940979003906, 3.1492419242858887), 
+                                 (4.2381274700164795, 3.18240749835968), (3.9383114576339735, 3.215549945831299), 
+                                 (3.6384929418563843, 3.2486695051193237), (3.338671922683716, 3.2817660570144653), 
+                                 (3.0388485193252563, 3.314842939376831), (2.7390295267105103, 3.3479565382003784), 
+                                 (2.4392169713974, 3.381129026412964), (2.1394104957580566, 3.414359450340271), 
+                                 (1.839606523513794, 3.447611093521118), (1.5398030281066895, 3.4808624982833862), 
+                                 (1.239998996257782, 3.5141149759292603), (0.9401950538158417, 3.5473694801330566), 
+                                 (0.6403903365135193, 3.580609083175659), (0.3406134992837906, 3.6142449378967285), 
+                                 (0.04080059006810188, 3.5886651277542114), (-0.2479386404156685, 3.5029895305633545), 
+                                 (-0.5138841420412064, 3.3617509603500366), (-0.7452452778816223, 3.169034004211426), 
+                                 (-0.9332519471645355, 2.933732032775879), (-1.077077031135559, 2.6688835620880127), 
+                                 (-1.2230153679847717, 2.405019998550415), (-1.3933158218860626, 2.156180500984192), 
+                                 (-1.5862610340118408, 1.9244535565376282), (-1.8014415502548218, 1.713245451450348), 
+                                 (-2.037254512310028, 1.5253520011901855), (-2.292003035545349, 1.364151120185852), 
+                                 (-2.5648614168167114, 1.2360018193721771), (-2.851674437522888, 1.143189400434494), 
+                                 (-3.1484274864196777, 1.090387612581253), (-3.4496265649795532, 1.0789172649383545), 
+                                 (-3.7495470046997106, 1.1089307665824897), (-4.0468034744262695, 1.1601702272891998), 
+                                 (-4.343497037887573, 1.2145799100399017), (-4.639662981033325, 1.2717924416065216), 
+                                 (-4.935333490371704, 1.3315127789974213), (-5.230529308319087, 1.3935348689556113), 
+                                 (-5.5252509117126465, 1.457778811454773), (-5.819485902786255, 1.5242125391960144), 
+                                 (-6.113199472427372, 1.592911064624787), (-6.40735745429993, 1.6588374972343447), 
+                                 (-6.707835912704468, 1.6815100312232971), (-7.007828950881958, 1.6542620658874512), 
+                                 (-7.2961685657501185, 1.5677029490470897), (-7.556291580200192, 1.4164592325687426), 
+                                 (-7.771472930908203, 1.206078976392746), (-7.920233964920044, 0.9456731081008911), 
+                                 (-8.04047417640686, 0.6690323501825333), (-8.161058187484741, 0.3925406485795975), 
+                                 (-8.281853914260864, 0.11614175513386726), (-8.402722358703613, -0.16022553481161594), 
+                                 (-8.523780345916748, -0.43650985509157), (-8.633906841278074, -0.7168892025947535), 
+                                 (-8.668351650238037, -1.0154661238193512), (-8.600843906402588, -1.307273507118225), 
+                                 (-8.419837474822998, -1.5458000302314758), (-8.164112329483034, -1.703638970851897), 
+                                 (-7.877083301544186, -1.7948515415191655), (-7.578639984130856, -1.8366774916648865), 
+                                 (-7.2773118019104, -1.8328760266304016), (-6.980661630630498, -1.780329942703248), 
+                                 (-6.697817802429199, -1.6766794323921204), (-6.438060522079468, -1.5240670442581177), 
+                                 (-6.208786487579346, -1.328630417585373), (-5.9935688972473145, -1.1174054145812988), 
+                                 (-5.748328447341919, -0.9428906738758087), (-5.464154958724976, -0.8463292568922043), 
+                                 (-5.163670063018799, -0.8544092178344727), (-4.867903470993042, -0.9126321822404861), 
+                                 (-4.588489055633545, -1.0244564414024353), (-4.349262356758118, -1.2064713835716248), 
+                                 (-4.161669015884399, -1.4416534900665283), (-4.019157886505127, -1.7074999809265137), 
+                                 (-3.8711084127426147, -1.9702889919281006), (-3.710705041885376, -2.2257040143013), 
+                                 (-3.534767985343933, -2.470652937889099), (-3.340537428855896, -2.7013274431228638), 
+                                 (-3.1252390146255493, -2.9124079942703247), (-2.8865835666656494, -3.0965540409088135), 
+                                 (-2.623975992202759, -3.2443634271621704), (-2.3401066064834595, -3.345202088356018), 
+                                 (-2.0423710346221924, -3.39084255695343), (-1.7412744760513306, -3.408980965614319), 
+                                 (-1.4401484727859497, -3.4266204833984375), (-1.1390075087547302, -3.444004535675049), 
+                                 (-0.8378579020500183, -3.4612385034561157), (-0.5367034673690796, -3.4783871173858643), 
+                                 (-0.23554519563913345, -3.4954675436019897), (0.06561622582376003, -3.512492537498474), 
+                                 (0.36678630113601685, -3.5292834043502808), (0.6679833233356476, -3.545267105102539), 
+                                 (0.9691871404647827, -3.561073422431946), (1.2703189849853516, -3.5791701078414917), 
+                                 (1.5713714957237244, -3.599792003631592), (1.8726399540901184, -3.613661050796509), 
+                                 (2.1742794513702393, -3.6149359941482544), (2.4759215116500854, -3.6148481369018555), 
+                                 (2.777563452720642, -3.6148600578308105), (3.0774619579315186, -3.589738607406616), 
+                                 (3.3647475242614746, -3.498821973800659), (3.6371735334396362, -3.369565010070801), 
+                                 (3.897325873374939, -3.2169889211654663), (4.147696614265442, -3.0487985610961914), 
+                                 (4.390161514282227, -2.869377970695495), (4.626114130020142, -2.68146800994873), 
+                                 (4.856592893600464, -2.486881494522095), (5.082371473312378, -2.2868555784225464), 
+                                 (5.304065465927124, -2.082311451435089), (5.522140979766846, -1.87391197681427), 
+                                 (5.736985206604004, -1.6621835827827454), (5.948900938034058, -1.447522521018982), 
+                                 (6.158135414123535, -1.2302475273609161), (6.36490797996521, -1.0106281340122223), 
+                                 (6.569396018981934, -0.7888800203800201), (6.771731853485107, -0.5651663020253181), 
+                                 (6.972010850906372, -0.3396089724265039), (7.170301198959351, -0.1123010516166687), 
+                                 (7.366633176803589, 0.11670000106096268), (7.56099796295166, 0.34737296658568084), 
+                                 (7.753326892852783, 0.57974524050951), (7.943495512008667, 0.8138896077871323), 
+                                 (8.13117003440857, 1.0500366687774658), (8.315423965454102, 1.2888596951961517), 
+                                 (8.490955352783203, 1.5340830087661743), (8.6196608543396, 1.80594003200531), 
+                                 (8.669559001922607, 2.1022634506225586), (8.611805438995361, 2.3955130577087402), 
+                                 (8.409825801849365, 2.614143967628479), (8.132158756256104, 2.7291054725646973), 
+                                 (7.835922002792358, 2.784738063812256), (7.536210536956789, 2.8188115358352657), 
+                                 (7.236423492431641, 2.8522220849990845), (6.9365944862365705, 2.885246992111206), 
+                                 (6.7659668560810085, 2.90388375668919)]
diff --git a/src/tracks/tracks.py b/src/tracks/tracks.py
index 8d41cff..86f2896 100644
--- a/src/tracks/tracks.py
+++ b/src/tracks/tracks.py
@@ -33,6 +33,7 @@
 from src.tracks.baja_turnpike_track import BajaTurnpikeTrack
 from src.tracks.baja_highway_track import BajaHighwayTrack
 from src.tracks.hot_rod_speedway_track import HotRodSpeedwayTrack
+from src.tracks.hot_rod_speedway_ccw_track import HotRodSpeedwayCounterClockwiseTrack
 from src.tracks.hot_rod_super_speedway_track import HotRodSuperSpeedwayTrack
 from src.tracks.a_to_z_speedway_track import AtoZSpeedwayTrack
 from src.tracks.playa_raceway_track import PlayaRacewayTrack
@@ -101,7 +102,7 @@ def get_all_tracks():
               Reinvent2018Track(), AtoZSpeedwayTrack(), AtoZSpeedwayClockwiseTrack(),
               AtoZSpeedwayCounterClockwiseTrack(), ChampionshipCup2019Track(),
               SmileSpeedwayClockwiseTrack(), SmileSpeedwayCounterClockwiseTrack(),
-              StratusLoop2020Track(), HotRodSpeedwayTrack(), HotRodSuperSpeedwayTrack(),
+              StratusLoop2020Track(), HotRodSpeedwayTrack(), HotRodSpeedwayCounterClockwiseTrack(), HotRodSuperSpeedwayTrack(),
               HotRodSuperSpeedwayClockwiseTrack(), HotRodSuperSpeedwayCounterClockwiseTrack(),
               CumuloTurnpikeTrack(), YunSpeedwayTrack(),
               RogerRacewayTrack(), FumiakiLoop2020Track(), AwsSummitRacewayTrack(),