# Shapes erstellen



## Runtime (23. Jan 2010)

Hallo zusammen,
ich möchte ein Spiel programmieren und brauche dazu ein Shape-Objekt.
Gibt es irgend ein Programm mit dem man ein Shape-Objekt erstellen und
serialisieren kann?
Wäre toll :toll:.


----------



## Runtime (24. Jan 2010)

Gibt es kein Programm?


----------



## Runtime (24. Jan 2010)

Ich hab gehört, dass man mit Java auf Open Office zugreifen kann.
Kann man das Problem mit Open Office Draw lösen?


----------



## Runtime (24. Jan 2010)

Führe ich hier eigentlich Selbstgespräche?


----------



## Ebenius (24. Jan 2010)

Ich denke, die meisten verstehen Dich nicht. Sicher, dass Du weißt wovon Du redest? Sorry, aber es ergibt für mich nicht so richtig Sinn.

Ebenius


----------



## Runtime (24. Jan 2010)

Was ergibt keinen Sinn?


----------



## Steev (24. Jan 2010)

Du willst also ein Vektorzeichenprogramm wissen, dass du zusammen mit Java verwenden kannst, damit du nicht deine Shapes "hart" codieren musst?

Nimm Inkscape, da kannst du deine Vektorgrafiken in einem bestimmten Format speichern, dass man mit Java relativ gut auslesen kann. Dann hast du zwei Möglichkeiten:

1. Du schreibst dir eine Klasse, die aus dieser Datei die Vektorgrafik herausliest und einen General-Path oder eine Instanz deiner eigenen Shape-Klasse zurückliefert.
2. Du nimmst eine fertige Klasse und verwendest diese einfach. Ich meine ich hätte in Kevins Block bei "Code and Coke" mal so etwas gesehen. (Einfach googeln)

Dann gibt es natürlich noch meine Lieblingsantwort:
Schreib das Programm doch einfach selbst.
1. Die Geometrieobjekte von Java sind sowieso serialisierbar und können daher einfach gespeichert und geladen werden.
2. Du brauchst eigendlich nur eine LinkedList<Point> und einen Mauslistener.
3. Speichere bei jedem Mausklick die Koordinate in der LinkedList und zeichne dann einfach in der überschriebenen Paint-Methode alle Geradenabschnitte von einem Punkt zum anderen.
4. Du brauchst einen Speichern- und einen Laden-Button und zwei File-Dialoge.
5. Du nimmst dir einen Objekt-Output bzw. -InputStream und speicherst bzw. lädst die Shape wieder.
6. Fertig

Gruß
Steev


----------



## Runtime (25. Jan 2010)

Habe ich zuerst auch gewollt, aber bei den Kurven wurde es zu kompliziert und
ich wollte es nicht mehr programmieren .
Danke für die Tipps. :toll:


----------



## Steev (25. Jan 2010)

Das mit den Kurven ist aber eigendlich auch ganz einfach. Entweder nimmst du Splines, oder du zerlegst eine Beziér-Kurve in mehrere Geradenabschnitte. Da gibt es einige sehr schöne rekursive Implementierungen für.

Gruß
Steev


----------

