Hi, ich bin am Programmieren einer Klasse die von TransformGroup erbt, die Klasse "TransoFormGroup"
es ging mir hierbei darum, eine Klasse zu schaffen,
:
bei der TransformGroup muss man immer ein Transform3D angeben, oder so, und man kann höchsten 2 dinge machen, position und rotation einer achse, dies wollte ich in eine Klasse packen, ging aber nicht, der Node wird nicht richtig geadded, kann mir einer weiterhelfen?
Ihr sehts ja dann im Code:
Wie ihr seht, um diese Klasse nutzten zu können müsst ihr:
-einen Vector3f angeben
- alle 3 rotations achsen
- dann nicht nur TransoFormGroup adden, sondern so
So jetzt aber ist das Problem folgendes:
Der Node, der von TransoFormGroup geadded wird. soll der TransformGroup D zugeschrieben werden.
Aber dies geschieht nicht, kann mir einer bitte weiterhelfen?
es ging mir hierbei darum, eine Klasse zu schaffen,
:
bei der TransformGroup muss man immer ein Transform3D angeben, oder so, und man kann höchsten 2 dinge machen, position und rotation einer achse, dies wollte ich in eine Klasse packen, ging aber nicht, der Node wird nicht richtig geadded, kann mir einer weiterhelfen?
Ihr sehts ja dann im Code:
Java:
import javax.media.j3d.Group;
import javax.media.j3d.Node;
import javax.media.j3d.Transform3D;
import javax.media.j3d.TransformGroup;
import javax.vecmath.Vector3f;
public class TransoFormGroup extends TransformGroup
{
Node dd;
TransformGroup A;
public TransoFormGroup(Vector3f vct, float x, float y, float z)
{
Transform3D a = new Transform3D();
a.setTranslation(vct);
A = new TransformGroup();
A.setTransform(a);
Transform3D b = new Transform3D();
b.rotX(Math.toRadians(x));
TransformGroup B = new TransformGroup();
B.setTransform(b);
A.addChild(B);
Transform3D c = new Transform3D();
c.rotX(Math.toRadians(y));
TransformGroup C = new TransformGroup();
C.setTransform(c);
B.addChild(C);
Transform3D d = new Transform3D();
d.rotX(Math.toRadians(z));
//Wichtig hier ist TransformGroup D
TransformGroup D = new TransformGroup();
D.setTransform(d);
C.addChild(D);
D.addChild(dd);
}
public Group getChild()
{
return A;
}
public Node addNode(Node d)
{
d = dd;
return d;
}
}
-einen Vector3f angeben
- alle 3 rotations achsen
- dann nicht nur TransoFormGroup adden, sondern so
Java:
objRoot.addChild(new TransoFormGroup(new Vector3f(0,0,0),2,2,2).getChild());
Der Node, der von TransoFormGroup geadded wird. soll der TransformGroup D zugeschrieben werden.
Aber dies geschieht nicht, kann mir einer bitte weiterhelfen?