// ...imports
import javax.media.j3d.*;
import com.sun.j3d.utils.universe.*;
import javax.vecmath.Point3d;
import com.sun.j3d.utils.behaviors.vp.*;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.geometry.*;
import java.applet.Applet;
import javax.media.j3d.Alpha;
import javax.media.j3d.PositionInterpolator;
import javax.vecmath.*;

public class Line_Strip_Array extends Applet{
	
	public BranchGroup createSceneGraph(){
		
		// 1. Array erzeugen
		int[] stripCounts = 6, 6;
		GeometryArray array = new LineStripArray(12, GeometryArray.COORDINATES, stripCounts);
		
		// 2. Koordinaten zuweisen
		array.setCoordinates(0, pointList);
		
		// 3. Shape3D erzeugen und mit dem Array besetzen
		Shape3D shape = new Shape3D(array);
		
		// Wurzel des Scenegraphen erzeugen
		BranchGroup root = new BranchGroup();
		
		// shape an die Wurzel hängen
		root.addChild(shape);
		
		// fertig
		return root;
	}
	
	public static final Point3f[] pointList={
		new Point3f(-2.5f, 1.0f,0.0f),
		new Point3f(-2.5f,-1.0f,0.0f),
		new Point3f(-1.5f,-1.0f,0.0f),
		new Point3f(-1.5f, 1.0f,0.0f),
		new Point3f(-0.5f,-1.0f,0.0f),
		new Point3f(-0.5f, 1.0f,0.0f),
		new Point3f( 0.5f, 1.0f,0.0f),
		new Point3f( 0.5f,-1.0f,0.0f),
		new Point3f( 1.5f, 1.0f,0.0f),
		new Point3f( 1.5f,-1.0f,0.0f),
		new Point3f( 2.5f,-1.0f,0.0f),
		new Point3f( 2.5f, 1.0f,0.0f)
	};
	
	public void init(){
		
		// erzeuge das Universum
		SimpleUniverse universe = Utils.createUniverse(this);
		
		// hänge die 3D-Szene ein
		universe.addBranchGraph(createSceneGraph());
	}
	public Line_Strip_Array(){}
	public static void main(String[]args){
		new MainFrame (new Line_Strip_Array(), 256, 256);
	}
}