Hallo zusammen,
Ich bins nochmal. Hatte gestern das Problem mit der Ebene, die ich in mein 3dimensionales Koordinatensystem reinbringen musste. Das hat jetzt mit eurer Hilfe geklappt, nur hänge ich leider schon wieder in den Seilen.
Kann die 2.Ebene nicht reinmachen, da ich nicht weiss ob es dafür so was wie plane =new plane() machen soll oder ob das Problem bei mir beim Anhängen mit root.addChild liegt. Da ich mindestens 7-8 Ebenen noch reinhängen muss, wäre ich sehr froh wenn mir da jemand weiterhelfen könnte..
Wo steckt der Fehler???
lg
praxedis
Ich bins nochmal. Hatte gestern das Problem mit der Ebene, die ich in mein 3dimensionales Koordinatensystem reinbringen musste. Das hat jetzt mit eurer Hilfe geklappt, nur hänge ich leider schon wieder in den Seilen.
Kann die 2.Ebene nicht reinmachen, da ich nicht weiss ob es dafür so was wie plane =new plane() machen soll oder ob das Problem bei mir beim Anhängen mit root.addChild liegt. Da ich mindestens 7-8 Ebenen noch reinhängen muss, wäre ich sehr froh wenn mir da jemand weiterhelfen könnte..
Java:
//Punkte für yz-Ebene
root.addChild(createPlane(
Point3f p0 =new Point3f(0.0f,0.0f,0.0f),
Point3f p1 =new Point3f(0.0f,0.5f,0.0f),
Point3f p2 =new Point3f(0.0f,0.5f,0.5f),
Point3f p3 =new Point3f(0.0f,0.0f,0.5f)));
return root;
//Punkte für2.Ebene parallel zu yz-Ebene
root.addChild(createPlane(
Point3f p4 =new Point3f(0.5f,0.0f,0.0f),
Point3f p5 =new Point3f(0.0f,0.5f,0.0f),
Point3f p6 =new Point3f(0.0f,0.5f,0.5f),
Point3f p7 =new Point3f(0.0f,0.0f,0.5f)));
return root;
}
//yz-Ebene erzeugen
Shape3D createPlane(Point3f p0, Point3f p1, Point3f p2, Point3f p3)
{
QuadArray geometry = new QuadArray(4,
GeometryArray.COORDINATES | GeometryArray.NORMALS);
geometry.setCoordinate(0, p0);
geometry.setCoordinate(1, p1);
geometry.setCoordinate(2, p2);
geometry.setCoordinate(3, p3);
Vector3f a = new Vector3f();
Vector3f b = new Vector3f();
Vector3f n = new Vector3f();
a.sub(p0, p1);
a.sub(p2, p1);
n.cross(b, a);
n.normalize();
geometry.setNormal(0, n);
geometry.setNormal(1, n);
geometry.setNormal(2, n);
geometry.setNormal(3, n);
Shape3D shape = new Shape3D();
shape.setGeometry(geometry);
return shape;
}
//2.Ebene erzeugen
Shape3D createPlane1(Point3f p4, Point3f p5, Point3f p6, Point3f p7)
{
QuadArray geometry = new QuadArray(8,
GeometryArray.COORDINATES | GeometryArray.NORMALS);
geometry.setCoordinate(4, p4);
geometry.setCoordinate(5, p5);
geometry.setCoordinate(6, p6);
geometry.setCoordinate(7, p7);
Vector3f c = new Vector3f();
Vector3f d = new Vector3f();
Vector3f n = new Vector3f();
c.sub(p4, p5);
c.sub(p6, p5);
n.cross(d, c);
n.normalize();
geometry.setNormal(4, n);
geometry.setNormal(5, n);
geometry.setNormal(6, n);
geometry.setNormal(7, n);
Shape3D shape = new Shape3D();
shape.setGeometry(geometry);
return shape;
}
}
Wo steckt der Fehler???
lg
praxedis