You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Denne oppgaven handler om simulering av objekter i rommet, hvor en bruker arv både til rom-objektene og til rom-verdenen.

Simulering er en nyttig teknikk for å prøve ut ens forståelse av et fenomen, f.eks. fysikk. Enkelt sagt består en simulering av regler for hvordan objekter i en verden oppfører seg (både for seg selv og hvordan de spiller sammen), og en konkret verden i form av en start-konfigurasjon av objekter. Så tenker en seg at tiden går i små steg, og for hvert steg så oppdaterer en objektene i henhold til reglene.

I denne øvingen består verdenen av objekter (asteroider og en sol) som svever fritt i rommet og et romskip med motorer som kan snurre og skyve. Alle objekter har en posisjon, fart og masse, og virker på hverandre i henhold til formelen for gravitasjon. Romskipet har i tillegg vinkelfart og mulighet for å fyre av motorer bak (dytter) og på siden (snurrer).

Del 1 - rom-objekter

 

Det er i hovedsak to typer rom-objekter, de som svever fritt (planeter, asteroider og stjerner) og romskipet, som har motorkraft. Det som er felles for alle rom-objektene ønsker vi å samle i superklassen SpaceObject, som de to mer spesialiserte typene Asteroid og SpaceShip arver fra. Dette er illustrert i diagrammet til høyre.SpaceObjectPoint2D positionPoint2D speeddouble massAsteroiddouble densitydouble radiusSpaceShipangleSpeedPolygonPoint2D positionPoint2DBaseSpaceObjectSpaceObjectPoint2D speedgetMass()AsteroiddensityradiusSpaceShipangleSpeed*

 

 

  • No labels