Colorfull "spring" prism
Triangle - colorfull "spring" prism
by schrodingers
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/processing.js/1.4.15/processing.js"></script>
<canvas></canvas>
CSS
body {
overflow: hidden;
margin: 0;
padding: 0;
}
</style> <script type="text/javascript"> window.addEventListener('load', function() {
var scripts=document.body.getElementsByTagName('script');
var canvases=document.body.getElementsByTagName('canvas');
new Processing(canvases[0], scripts[0].text);
}
, false);
// Here prevent javascript in body from throwing error </script> <style>
JavaScript
color[] Spring = {#ff6699, #ff9900, #ffcc00, #9adb1b, #00cc66, #00cccc, #00ccff, #6633cc, #ff66cc};
float offset = 50;
float radius = 25;
void polygon(int sideNum, float radius) {
float theta = 0;
float x = 0;
float y = 0;
beginShape();
for (int i=0; i<sideNum; i++) {
x = cos(theta) * radius;
y = sin(theta) * radius;
vertex(x, y);
theta += radians(360)/sideNum;
}
endShape();
}
void setup() {
size(800, 500);
background(35);
smooth();
noStroke();
colorMode(HSB);
}
void draw() {
pushMatrix();
translate(width/2, height/2);
for(int i=0;i<9;i++){
for(int j=0; j<9-i; j++){
fill(Spring[i]);
rotate(radians(180));
triangle(
i+j, i,
30+15*i + 30*j, 25*i,
15+15*i + 30*j, 25+25*i
);
}
}
rotate(radians(90));
fill(210);
triangle = new polygon(3, 50);
popMatrix();
}