Interface IRoadMap
má metody, pomocí kterých se mohou vaše vozidla
pohybovat po mapě:
GetTowns
vrátí seznam všech měst, která jsou dostupná po silnicích na mapě.GetTownDirections
vrátí seznam všech silnic, které vedou ze zadaného města.MoveOnRoad
spočítá, kam až se vaše vozidlo dostane, když ze zadané pozice pojede zadanou rychlostí po zadané silnici zadaným směrem po zadanou dobu.WhereAmI
vrátí pro zadanou pozici to, zda se vozidlo nachází někde mezi městy (jede po silnici), anebo zda je momentálně v nějakém městě (křižovatce silnic).
Třída RoadMapFactory má v sobě metodu, kterou získáte instanci objektu, který implementuje interface IRoadMap
,
tedy získáte tím přístup k nějaké mapě s městy a silnicemi, po které pojedete.
Třída Town
reprezentuje město, třída Road
reprezentuje silnici (spojnici mezi dvěma městy),
hodnotový typ Gps
reprezentuje pozici na mapě (GPS souřadnice).
Enum CompassDirection
definuje směry (světové strany) - sever (N), jih (S), západ (W) a východ (E).