# Teile einer CAD-Assembly Gruppe in JAVA animieren?



## raptorrs (26. Sep 2005)

Hallo, Zusammen,

ich bin neu bei Java und natürlich dann auch neu in diesem Forum!

Ich habe eine Baugruppe aus einem 3D CAD Programm in ein .obj-File "übersetzt" und dieses dann in Java dargestellt. Funktioniert prima, wenngleich ich bisher noch nicht so ganz genau weiss, warum. Jetzt meine Frage: Kann man einen Teil der Baugruppe rotieren lassen, während andere Teile statisch stehen bleiben? (Beispiel: Eine Welle mit aufgebauten Teilen soll sich zwischen zwei feststehenden Lagerböcken drehen)
Im .obj-File ist ja jedes einzelne Teil (Faces) über den Parameter "g" bezeichnet. Darüber müsste es doch eigentlich gehen, oder?

Schöne Grüsse

raptorrs


----------



## MPW (31. Okt 2005)

Hm, du nimmst die Java3D-API?

Du müsstest die einzelnen Teile in verschieden BranchGroupes stecken, die wiederum kannst du ja leicht auf der Stelle routieren lassen.

Hab' aber noch nie mit eingebundenen Objekten gearbietet, weiß also nciht, ob du die in verschiedene TransformGroupes/BranchGroupes-  wie auch immer - stecken kannst.


----------



## Guest (31. Okt 2005)

Hallo, MPW!

Danke für Deine Antwort. Hatte die Hoffnung schon aufgegeben.

Ja, ich nehme die JAVA 3D API. Warum fragst DU? Ist das nicht selbstverständlich? Gibt es etwas besseres??

Die Teile in verschiedene TransformGroupes/BranchGroupes stecken, OK. aber ob es funktioniert wäre genau meine Frage ! 

Gruss

raptorrs


----------



## MPW (31. Okt 2005)

Anonymous hat gesagt.:
			
		

> Ja, ich nehme die JAVA 3D API. Warum fragst DU? Ist das nicht selbstverständlich? Gibt es etwas besseres??



Natürlich gibt's da Alternativen, OpenGL4Java oder wie das heißt, ist eine 1 zu 1 mit ein bisschen Übersetzung von OpenGL in Java, aber Java3D ist halt von sun selber...ich kenne da die Unterschiede nicht genau, da ich das auch nur ganz selten brauche, es gibt meine ich noch mehr/bzw. täte mich nicht wundern.



			
				Anonymous hat gesagt.:
			
		

> Die Teile in verschiedene TransformGroupes/BranchGroupes stecken, OK. aber ob es funktioniert wäre genau meine Frage !



Also, mal sehen, ob ich das noch zusammenkrieg:

In welcher Form hast du denn die einzelnen Objekte aus der Datei, die du geladen hast, vorliegen?
Ich sag' jetzt einfach mal als Shape3D!

So, jetzt baust du dir eine Anzahl von TransformGroup, meinetwegen als array oder so.

Nun kann st du diese mit Transform3D in den drei Achsenberechen verschieben, um sie richtig anzuordnen, sofern du das nicht schon gemacht hast, oder dies beim einlesen automatisch passiert...

Du könntest eine TransformGroup für die ganzen statischen Teile machen, die beweglichen sollten eine eigene haben.

Nun krallst du dir einen RotationInterpolar und ein Alpha und move it baby!

Wie jetzt der Code aussehen muss - da bin ich überfragt, hab' das schon seit 1 Jahr nicht mehr gemacht....guck am Besten in ein Toturial oder so....

[edit:] Beim nochmaligen durchlesen und der Frage, wie genau du das machen musst, kam mir die Frage auf:

Du weißt aber schon, wie man einen Scenegraphen aus verschiedenen Branch- und TransformGroups aufbaut, oder?
Du musst die einzelnen Objekte adden, so dass es eine Baumstruktur ergibt!


----------

