import java.applet.*; 
import java.awt.*; 
import java.awt.image.*; 
import java.awt.event.*; 
import java.io.*; 
import java.net.*; 
import java.text.*; 
import java.util.*; 
import java.util.zip.*; 

public class udk_01_stubbe_1 extends BApplet {
void setup() {  size(320, 320);
background(128, 128, 120);} void draw() {

translate(width/2, height/2+10,190);
rotateX(0.75f);
noStroke();

int leaf = 7;
int c1 = 0xff6C0101;
int c2 = 0xffE20000;
int c3 = 0xffFF0F00;
int c4 = 0xffFF5C00;
int c5 = 0xffFFB700;
int c6 = 0xffFFE9B2;

// big Sphere
push();
fill(c6);
translate(0,0,5);
sphere(6);
pop();


for(int j=0; j<50; j++) {
  push();
  
  rotateX(-.3f);
  float posX = random(-20,20);
  float posY = random(-20,20);
  float posZ = random(20,50);

  // Lines
  stroke(c6);
  beginShape(LINE_STRIP);
  curveVertex(0, 0, 0);
  curveVertex(0, 0, random(5));
  curveVertex(posX, posY, posZ);
  curveVertex(0, 0, random(-20));
  endShape();
  noStroke();
  noSmooth();
  
  // Spheres
  fill(c6);
  translate(posX,posY,posZ);
  sphere(posZ/50);
  
  pop();
}

// Leafs
push();
for(int i=0; i<leaf; i++) {
  scale(random(.9f,1.1f));
  rotateZ(0.9f);
  beginShape(QUAD_STRIP);
  fill(c1);vertex(0.00f,-0.68f,0.00f);
  fill(c2);vertex(9.11f,-4.94f,8.88f);
  fill(c2); vertex(8.11f,-2.47f,10.48f);
  fill(c1);vertex(0.00f,-0.34f,0.00f);
  fill(c1);vertex(0.00f,-0.00f,0.00f);
  fill(c2);vertex(9.45f,-0.00f,7.40f);
  fill(c2);vertex(8.11f,2.47f,10.48f);
  fill(c1);vertex(0.00f,0.34f,0.00f);
  fill(c1);vertex(0.00f,0.68f,0.00f);
  fill(c2);vertex(9.11f,4.94f,8.88f);
  endShape();
  beginShape(QUAD_STRIP);
  fill(c2);vertex(9.11f,-4.94f,8.88f);
  fill(c3);vertex(19.64f,-8.58f,13.21f);
  fill(c3);vertex(19.57f,-4.29f,14.95f);
  fill(c2);vertex(8.11f,-2.47f,10.48f);
  fill(c2);vertex(9.45f,-0.00f,7.40f);
  fill(c3);vertex(19.86f,-0.00f,13.65f);
  fill(c3);vertex(19.57f,4.29f,14.95f);
  fill(c2);vertex(8.11f,2.47f,10.48f);
  fill(c2);vertex(9.11f,4.94f,8.88f);
  fill(c3);vertex(19.64f,8.58f,13.21f);
  endShape();
  beginShape(QUAD_STRIP);
  fill(c3);vertex(19.64f,-8.58f,13.21f);
  fill(c4);vertex(32.23f,-8.49f,13.42f);
  fill(c4);vertex(32.83f,-4.24f,14.32f);
  fill(c3);vertex(19.57f,-4.29f,14.95f);
  fill(c3);vertex(19.86f,-0.00f,13.65f);
  fill(c4);vertex(32.81f,0.00f,13.79f);
  fill(c4);vertex(32.83f,4.24f,14.32f);
  fill(c3);vertex(19.57f,4.29f,14.95f);
  fill(c3);vertex(19.64f,8.58f,13.21f);
  fill(c4);vertex(32.23f,8.49f,13.42f);
  endShape();
  beginShape(QUAD_STRIP);
  fill(c4);vertex(32.23f,-8.49f,13.42f);
  fill(c5);vertex(42.61f,-2.84f,8.80f);
  fill(c5);vertex(44.19f,-1.42f,8.23f);
  fill(c4);vertex(32.83f,-4.24f,14.32f);
  fill(c4);vertex(32.81f,0.00f,13.79f);
  fill(c5);vertex(45.27f,0.00f,7.70f);
  fill(c5);vertex(44.19f,1.42f,8.23f);
  fill(c4);vertex(32.83f,4.24f,14.32f);
  fill(c4);vertex(32.23f,8.49f,13.42f);
  fill(c5);vertex(42.61f,2.84f,8.80f);
  endShape();
}
pop();


}
}
