I
Izelude
Gast
Hallo,
ich schreibe gerade an meiner Physik Facharbeit und mein Thema ist eine ComputerSimulation von Planetenbahnen (allerdings nicht die ellipsen von keppler sondern allgemein mit beliebig vielen beliebig schweren körpern).
Ich hab jetzt die Physik fertig programmiert und sie funktioniert soweit ich das beurteilen kann ganz gut. (zumindest kommen die richtigen Werte raus). Die Physik Klasse enthält eine step() methode die einen physikalischen Schritt berechnet und die Koordinaten meiner Planeten Objekte ändert (die Planeten sind in einem Array in der Physik Klasse gespeichert). Als nächstes wird ein Physik Objekt in einer Klasse die von JFrame erbt erstellt und ich rufe mit hilfe eines threads alle 15 millisekunden die step() und die repaint() methode auf. In der paint methode stehen einfache anweisungen das an die skalierten Positionen der Planeten kleine Kreise gemalt werden.
Soweit so gut und funktioniert auch.
Mein Problem ist allerdings das ich auch die Bahnen brauche, d.h die Planeten sollen hinter sich eine dünne Linie herziehen die dauerhaft bleibt. Und genau dieses Dauerhafte macht mir Probleme, denn sobald ich repaint aufrufe verschwindet natürlich alles was beim nächsten Durchlauf nicht erneut gezeichnet wird, ich kann es allerdings beim nächsten Durchlauf nicht erneut zeichnen da ich die Koordinaten nicht gespeichert habe.
Gespeichert hab ich die Koordinaten nicht, weil es eine ungeheure Flut an Werten ist, falls jemand eine sparsame Möglichkeit kennt die Koordinaten zu speichern ( ich hatte es mit double arrays versucht) wäre das auch sehr nützlich.
Nocheinmal kurz zusammengefasst :
Kann man mit Swing Linien zeichnen die weder beim aufruf von repaint() verschwinden, noch wenn irgendetwas anderes über sie drüber gezeichnet wird (also z.b wenn zwei planetenbahnen sich kreuzen oder sowas).
ich schreibe gerade an meiner Physik Facharbeit und mein Thema ist eine ComputerSimulation von Planetenbahnen (allerdings nicht die ellipsen von keppler sondern allgemein mit beliebig vielen beliebig schweren körpern).
Ich hab jetzt die Physik fertig programmiert und sie funktioniert soweit ich das beurteilen kann ganz gut. (zumindest kommen die richtigen Werte raus). Die Physik Klasse enthält eine step() methode die einen physikalischen Schritt berechnet und die Koordinaten meiner Planeten Objekte ändert (die Planeten sind in einem Array in der Physik Klasse gespeichert). Als nächstes wird ein Physik Objekt in einer Klasse die von JFrame erbt erstellt und ich rufe mit hilfe eines threads alle 15 millisekunden die step() und die repaint() methode auf. In der paint methode stehen einfache anweisungen das an die skalierten Positionen der Planeten kleine Kreise gemalt werden.
Soweit so gut und funktioniert auch.
Mein Problem ist allerdings das ich auch die Bahnen brauche, d.h die Planeten sollen hinter sich eine dünne Linie herziehen die dauerhaft bleibt. Und genau dieses Dauerhafte macht mir Probleme, denn sobald ich repaint aufrufe verschwindet natürlich alles was beim nächsten Durchlauf nicht erneut gezeichnet wird, ich kann es allerdings beim nächsten Durchlauf nicht erneut zeichnen da ich die Koordinaten nicht gespeichert habe.
Gespeichert hab ich die Koordinaten nicht, weil es eine ungeheure Flut an Werten ist, falls jemand eine sparsame Möglichkeit kennt die Koordinaten zu speichern ( ich hatte es mit double arrays versucht) wäre das auch sehr nützlich.
Nocheinmal kurz zusammengefasst :
Kann man mit Swing Linien zeichnen die weder beim aufruf von repaint() verschwinden, noch wenn irgendetwas anderes über sie drüber gezeichnet wird (also z.b wenn zwei planetenbahnen sich kreuzen oder sowas).