Final exam version
This commit is contained in:
78
UML_classes.puml
Normal file
78
UML_classes.puml
Normal file
@@ -0,0 +1,78 @@
|
||||
@startuml
|
||||
skinparam classAttributeIconSize 0
|
||||
|
||||
class SpaceObject {
|
||||
x
|
||||
y
|
||||
radius
|
||||
color
|
||||
mass
|
||||
draw()
|
||||
}
|
||||
|
||||
class Star {
|
||||
name
|
||||
planets
|
||||
set_position()
|
||||
add_planet()
|
||||
update()
|
||||
draw()
|
||||
}
|
||||
|
||||
class Planet {
|
||||
star
|
||||
orbit_number
|
||||
orbit_radius
|
||||
angle
|
||||
angular_speed
|
||||
linear_speed
|
||||
direction
|
||||
calculate_position()
|
||||
update()
|
||||
shift_angle()
|
||||
draw()
|
||||
}
|
||||
|
||||
class SolarSystem {
|
||||
width
|
||||
height
|
||||
stars
|
||||
show_orbits
|
||||
paused
|
||||
create_system()
|
||||
get_direction()
|
||||
resize()
|
||||
update()
|
||||
prevent_planet_intersections()
|
||||
draw()
|
||||
toggle_pause()
|
||||
toggle_orbits()
|
||||
get_all_objects()
|
||||
get_total_mass()
|
||||
get_planet_count()
|
||||
}
|
||||
|
||||
class SolarApp {
|
||||
system
|
||||
screen
|
||||
clock
|
||||
font
|
||||
resize_window()
|
||||
draw_text()
|
||||
draw_info()
|
||||
run()
|
||||
}
|
||||
|
||||
class solar_input {
|
||||
handle_events()
|
||||
save_system_to_file()
|
||||
}
|
||||
|
||||
SpaceObject <|-- Star
|
||||
SpaceObject <|-- Planet
|
||||
SolarSystem *-- Star
|
||||
Star *-- Planet
|
||||
SolarApp --> SolarSystem
|
||||
SolarApp ..> solar_input
|
||||
|
||||
@enduml
|
||||
Reference in New Issue
Block a user