Die Java 3D API ermöglicht Programmierern, dreidimensionale Formen in Java zu erstellen. Er tut dies, indem sie Code-Darstellungen von dreidimensionalen Raum , wie Benutzer an dem Objekt aus und wie Beleuchtung beeinflusst das Objekt enthält . Mit Hilfe der Java 3D -Tools können Sie einfache Formen wie Pyramiden durch die Definition bestimmter Punkte auf der Pyramide und Färbung mit den mitgelieferten Färbung Methoden erstellen. Things You
Java Development Kit
Java 3D Bibliotheken
brauchen anzeigen Weitere Anweisungen
1
Import 3D-Bibliotheken und eine "Pyramide "-Klasse :
Import java.awt.Color , Import com.sun.j3d.utils.geometry.GeometryInfo , Import com.sun.j3d.utils.geometry.NormalGenerator , Import com.sun.j3d.utils.universe.SimpleUniverse ; importieren javax.media.j3d * ; . Import javax.vecmath * ; .
public class PyramidExample {}
2
erstellen dreidimensionale Punkte, die die Basis und Spitze der Pyramide :
public static void main (String [] args ) { u = new SimpleUniverse SimpleUniverse (); BranchGroup g = new BranchGroup ();
Point3f e = new Point3f (1.0f, 0.0 f , 0.0f); Point3f s = new Point3f ( 0.0f, 0.0f , 1.0f); Point3f w = new Point3f ( - 1.0f, 0.0f , 0.0f); Point3f n = new Point3f ( 0.0f, 0.0f , - 1.0f); Point3f t = new Point3f (0.0f, 0.721f , 0.0f);
3
erstellen Sie die Geometrie , um diese Punkte zu verbinden . Dieser Code wird eine separate Dreieck für jede Seite für vier Seiten , plus zwei Schaffung einer quadratischen Grundfläche :
TriangleArray Pyramide = new TriangleArray (18, TriangleArray.COORDINATES ); pyramidGeometry.setCoordinate (0 , e) ; pyramidGeometry . setCoordinate (1, t); pyramidGeometry.setCoordinate (2 , s) ;
pyramidGeometry.setCoordinate (3 , s) ; pyramidGeometry.setCoordinate (4, t); pyramidGeometry.setCoordinate (5, w )
pyramidGeometry.setCoordinate (6 , w) ; pyramidGeometry.setCoordinate (7, t); pyramidGeometry.setCoordinate (8, n );
pyramidGeometry.setCoordinate (9, n ); pyramidGeometry.setCoordinate (10, t); pyramidGeometry.setCoordinate (11, E );
pyramidGeometry.setCoordinate (12, E ); pyramidGeometry.setCoordinate (13 , s) ; pyramidGeometry.setCoordinate (14, w )
pyramidGeometry.setCoordinate (15 , w) ; pyramidGeometry.setCoordinate (16, n ); pyramidGeometry.setCoordinate (17, E );
GeometryInfo ginfo = new GeometryInfo (Pyramide ); NormalGenerator ng = new NormalGenerator (); ng.generateNormals ( ginfo );
GeometryArray result = ginfo.getGeometryArray ();