Add all local circuit work — year-by-year SVGs and tooling

This commit is contained in:
2026-03-25 22:17:47 +01:00
parent 6ceeba7fb9
commit c94ebcfb22
1149 changed files with 171650 additions and 421 deletions
+30
View File
@@ -0,0 +1,30 @@
from dataclasses import dataclass
from typing import TYPE_CHECKING
from .circuit import Circuit
if TYPE_CHECKING:
from .country import Country
@dataclass
class Locality:
slug: str
name: str
country: 'Country'
circuits: dict[str, Circuit]
@classmethod
def from_dict(cls, country: 'Country', slug: str, data: dict):
locality = cls(
slug=slug,
name=data["name"],
country=country,
circuits={}
)
locality.circuits = {circuit_slug: Circuit.from_dict(locality, circuit_slug, circuit_data) for
circuit_slug, circuit_data in data["circuits"].items()}
return locality
def load_geo_json_data(self):
"""Load data for all circuits"""
for circuit in self.circuits.values():
circuit.load_geo_json_data()