xxxxxxxxxx
150
var myData;
var elements = [];
function preload() {
myData = loadJSON("elements.json", gotData);
}
function gotData(data) {
// println(data);
myData = data;
for (var i = 0; i < myData.elements.length; i++) {
elements.push(new Element(myData.elements[i]));
// println(myData.elements[i].name);
}
}
function setup() {
createCanvas(400, 400);
background(0);
// println(myData);
// for (var j = 0; j < myData.length; j++) {
// myElement = new Element('elements.json', elements[i]);
// println(myData.elements[j].name);
// // println(myData.elements[j].number);
// }
}
function draw() {
for (var i = 0; i < elements.length; i++) {
elements[i].drawElement();
}
}
function Element(elementInfo) {
this.nucleus = [];
this.electron = [];
this.orbit = [];
// println(elementInfo.name);
// println(elementInfo.number);
println(elementInfo.electrons);
for (m = 0, m < 0; elementInfo.electrons; m++) {
electron[m] = new Electron(200, 200);
}
this.drawElement = function() {
for (m = 0, m < 0; elementInfo.electrons; m++) {
electron[m].drawElectron();
}
};
}
function Electron(radius, angle, speed) {
this.radius = radius;
this.angle = angle;
this.speed = speed;
this.drawElectron = function() {
push();
translate(200, 200);
rotate(this.angle);
fill(255);
ellipse(this.radius, 0, 20, 20);
pop();
this.angle = this.angle + this.speed;
};
}
// for (k = 0, k < 0; elementInfo.nucleus; k++) {
// nucleus[k] = new Nucleus(200, 200);
// for (l = 0, l < 0; elementInfo.orbit; l++) {
// orbit[l] = new Orbit(200, 200);
// for (m = 0, m < 0; elementInfo.electron; m++) {
// electron[m] = new Electron(200, 200);
// }
// }
// }
// var electronOrbits = [75, 75, 100, 100, 100, 100];
// for (var l = 0; l < myData.electrons; l++) {
// electron[l] = new Electron(electronOrbits[l], l * 2 * PI / 8, 0.001);
// }
// for (var m = 0; m < myData.electrons; m++) {}
// electron[m] = new Electron(60, random(0, 2 * PI), random(0.005, 0.01));
// }
// function draw() {
// // for (var n = 0; n < myData.nucleus; n++) {
// // nucleus[n].jitter();
// // nucleus[n].molecule();
// // printlin(elementInfo.nucleus);
// // }
// // for (var o = 0; o < myData.electron; o++) {
// // electron[o].drawElectron();
// // println(elementInfo.electrons);
// // }
// // for (var p = 0; p < myData.orbit; p++) {
// // orbit[p].drawOrbit();
// // println(elementInfo.orbit);
// // }
// }
// function Orbit(radius, angle) {
// this.radius = radius;
// this.angle = angle;
// this.x = 200;
// this.y = 200;
// this.drawOrbit = function() {
// stroke(255);
// strokeWeight(3);
// noFill();
// ellipse(this.x, this.y, this.radius * 2, this.radius * 2);
// };
// }
// function Nucleus(x, y) {
// this.x = 200;
// this.y = 200;
// this.molecule = function() {
// strokeWeight(1);
// stroke(0);
// fill(255);
// ellipse(this.x, this.y, 15, 15);
// };
// this.jitter = function() {
// this.x = random(195, 210) + random(-1, 1);
// this.y = random(195, 210) + random(-1, 1);
// };
// }