90 lines
3.0 KiB
Plaintext
90 lines
3.0 KiB
Plaintext
|
|
let scene = Scene();
|
|
|
|
let distance = 3.0;
|
|
let camera = Camera( P(0.0,0.0,distance), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("+Z Cam", camera);
|
|
let camera = Camera( P(0.0,distance,0.1), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("+Y Cam", camera);
|
|
let camera = Camera( P(distance,0.0,0.0), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("+X Cam", camera);
|
|
let camera = Camera( P(0.0,0.0,-distance), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("-Z Cam", camera);
|
|
let camera = Camera( P(0.0,-distance,0.1), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("-Y Cam", camera);
|
|
let camera = Camera( P(-distance,0.0,0.0), P(0.0,0.0,0.0), V(0.0,1.0,0.0));
|
|
scene.addCamera("-X Cam", camera);
|
|
|
|
let kd = V(0.6, 0.3, 0.9); // Diffuse color (white)
|
|
let ks = V(0.0,0.0,0.0); // Specular color (no specular reflection)
|
|
let kr = V(1.0,1.0,1.0); // Reflection color (no reflection)
|
|
let material = Material(kd, ks, kr, 10.0);
|
|
scene.addMaterial("mattee", material);
|
|
|
|
let kd = V(0.3, 0.3, 0.3); // Diffuse color (white)
|
|
let ks = V(0.7,0.7,0.7); // Specular color (no specular reflection)
|
|
let kr = V(1.0,1.0,1.0); // Reflection color (no reflection)
|
|
let material1 = Material(kd, ks, kr, 10.0);
|
|
scene.addMaterial("mattee", material1);
|
|
|
|
let kd = V(0.4, 0.0, 0.8); // Diffuse color (white)
|
|
let ks = V(0.0,0.7,0.7); // Specular color (no specular reflection)
|
|
let kr = V(1.0,1.0,1.0); // Reflection color (no reflection)
|
|
let material2 = Material(kd, ks, kr, 10.0);
|
|
scene.addMaterial("reflect", material2);
|
|
|
|
let height = 4.0;
|
|
let spacing = 4.0;
|
|
|
|
let falloff = V(0.0,0.0,0.01);
|
|
|
|
let blue = V(0.0,0.0,0.6);
|
|
let light = Light(P(0.0,height,spacing), blue, falloff);
|
|
scene.addLight("blue", light);
|
|
let green = V(0.0,0.6,0.0);
|
|
let light = Light(P(0.0,height,0.0), green, falloff);
|
|
scene.addLight("green", light);
|
|
let red = V(0.6,0.0,0.0);
|
|
let light = Light(P(0.0,height,-spacing), red, falloff);
|
|
scene.addLight("red", light);
|
|
|
|
let steiner = Steiner();
|
|
let steiner_node = Node(steiner, material2);
|
|
steiner_node.rotate(90.0,0.0,0.0);
|
|
steiner_node.translate(0.0,0.0,1.0);
|
|
scene.addNode("steiner", steiner_node);
|
|
|
|
let steiner2 = Steiner2();
|
|
let steiner2_node = Node(steiner2, material2);
|
|
steiner2_node.active(false);
|
|
scene.addNode("steiner2", steiner2_node);
|
|
|
|
let crosscap = CrossCap();
|
|
let crosscap_node = Node(crosscap, material);
|
|
crosscap_node.active(false);
|
|
scene.addNode("crosscap", crosscap_node);
|
|
|
|
let p = 0.9;
|
|
let q = 0.1;
|
|
let crosscap2 = CrossCap2(p, q);
|
|
let crosscap2_node = Node(crosscap2, material);
|
|
crosscap2_node.active(true);
|
|
crosscap2_node.translate(0.0,0.0,-1.5);
|
|
crosscap2_node.rotate(140.0,0.0,90.0);
|
|
scene.addNode("crosscap2", crosscap2_node);
|
|
|
|
let k = 2.0;
|
|
let roman = Roman(k );
|
|
let roman_node = Node(roman, material);
|
|
roman_node.active(false);
|
|
scene.addNode("roman", roman_node);
|
|
|
|
let inner_rad = 1.0;
|
|
let outer_rad = 1.2;
|
|
let torus = Torus(inner_rad, outer_rad );
|
|
let torus_node = Node(torus, material);
|
|
torus_node.scale(0.2,0.2,0.2);
|
|
torus_node.rotate(0.0,70.0,0.0);
|
|
scene.addNode("torus", torus_node);
|
|
|
|
scene |