Last active
March 2, 2020 19:42
-
-
Save jmolinski/2bb77ae6fa9fa0cf401aac2e1ee50172 to your computer and use it in GitHub Desktop.
Lab1 PO zadanie domowe - Pojazdy
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@startuml pojazdy | |
left to right direction | |
class Coord { | |
-lat: float | |
-lon: float | |
+Coord Coord(float lat, float lon) | |
+float get_lat() | |
+float get_lon() | |
} | |
class Pojazd { | |
-id: string | |
-nazwa: string | |
-sprawny: bool | |
-rodzaj_paliwa: string | |
-jednostka: string | |
-spalanie_100km: float [liczba jednostek] | |
-koszt_jednostki: float | |
-zasieg: float | |
-predkosc: float | |
+bool is_sprawny() | |
+void set_sprawny(bool v) | |
+string get_nazwa() | |
+string get_id() | |
-float {abstract} dystans_podrozy(Coord a, Coord b) | |
+float {abstract} koszt_podrozy(Coord a, Coord b) | |
+float czas_podrozy(Coord a, Coord b) | |
} | |
class Ladowy { | |
-drogowy: bool | |
-kolejowy: bool | |
-offroadowy: bool | |
-float dystans_podrozy(Coord a, Coord b) | |
+float koszt_podrozy(Coord a, Coord b) | |
} | |
class Wodny { | |
-podwodny: bool | |
-minimalna_glebokosc: int | |
-float dystans_podrozy(Coord a, Coord b) | |
+float koszt_podrozy(Coord a, Coord b) | |
} | |
class Powietrzny { | |
-pulap: int | |
-wymaga_pasa_startowego: bool | |
-float dystans_podrozy(Coord a, Coord b) | |
+float koszt_podrozy(Coord a, Coord b) | |
} | |
Pojazd <-- Ladowy | |
Pojazd <-- Wodny | |
Pojazd <-- Powietrzny | |
class Statek { | |
+Statek(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km, int minimalna_glebokosc) | |
} | |
class LodzPodwodna { | |
+LodzPodwodna(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km, int minimalna_glebokosc) | |
} | |
Wodny <-- Statek | |
Wodny <-- LodzPodwodna | |
class Amfibia { | |
-spalanie_100km_woda: float | |
-spalanie_100km_lad: float | |
+Amfibia(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km_woda, float spalanie_100km_lad, int minimalna_glebokosc, bool offroad) | |
-float dystans_podrozy(Coord a, Coord b) | |
-float dystans_podrozy_woda(Coord a, Coord b) | |
-float dystans_podrozy_lad(Coord a, coord b) | |
+float koszt_podrozy(Coord a, Coord b) | |
} | |
class Poduszkowiec { | |
+Poduszkowiec(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km_woda, float spalanie_100km_lad) | |
} | |
Wodny <-- Amfibia | |
Ladowy <-- Amfibia | |
Amfibia <-- Poduszkowiec | |
class Samochod { | |
+Samochod(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km, bool offroad) | |
} | |
class PociagElektryczny { | |
+PociagElektryczny(string id, string nazwa, int predkosc, float spalanie_100km) | |
} | |
class PociagSpalinowy { | |
+PociagSpalinowy(string id, string nazwa, int predkosc, int zasieg, float spalanie_100km) | |
} | |
Ladowy <-- Samochod | |
Ladowy <-- PociagElektryczny | |
Ladowy <-- PociagSpalinowy | |
class Samolot { | |
+Samolot(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km, int pulap) | |
} | |
class Helikopter { | |
+Helikopter(string id, string nazwa, int zasieg, int predkosc, float spalanie_100km, int pulap) | |
} | |
class Rakieta { | |
-koszt_startu: float | |
+Rakieta(string id, string nazwa, int zasieg, int predkosc, float koszt_startu, int pulap) | |
+float koszt_podrozy(Coord a, Coord b) | |
} | |
Powietrzny <-- Samolot | |
Powietrzny <-- Helikopter | |
Powietrzny <-- Rakieta | |
@enduml |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment