package Graphics; import java.lang.*; import java.awt.*; public class Scene { private static final int MAX_OBJECTS = 100; private Object objects[] = new Object[MAX_OBJECTS]; private int nr_objects; // camera stuff public Vector cameraLocation=new Vector(); public Vector cameraLookat=new Vector(); public Vector cameraDir=new Vector(); //____For sorting the objects double distance[]=new double[500]; int number[]=new int[500]; //________Lighting stuff public Object lights[]=new Object[10]; Light newlights[]=new Light[10]; public int nr_lights; Vector ambient_light=new Vector(0.5,0.2,0.3); boolean ambient_enabled=true; boolean diffuse_enabled=true; boolean specular_enabled=true; boolean lights_enabled=true; boolean attenuation=false; double k_a=0.5, k_d=0.7,k_s=0.7,n_s=5; int wireframe=16; //____Animation paraneters int totalframes; public Scene() { nr_objects = 0; } // constructor public Vector lighted_colour(Vector position, Vector normal, Vector viewer_pos, Vector colour) { Vector result; if (ambient_enabled) { result = ambient_light.multiplied_by(k_a); result = new Vector(result.get_x() * colour.get_x(), result.get_y() * colour.get_y(), result.get_z() * colour.get_z()); } else result = new Vector(); if(lights_enabled==false) //___ return if just ambient light return result; for(int i=0; i