package p5;
import anar.*;



import processing.core.PApplet;

public class Test02kRND extends PApplet {

  /*
   * Example for Anar library by Guillaume LaBelle + Julien Nembrini
   * http://anar.ch
   */


  RenderPt[] r = new RenderPt[3];

  public void setup(){
    size(800,400,OPENGL);
    frameRate(200);

    Anar.init(this);
    Anar.drawAxis();
    Anar.drawReferenceFrame(true);
    r[0] = Anar.renderPtShapeOriented(new FatCross(25),color(255),color(255));
    r[1] = Anar.renderPtShapeOriented(new Star(5,3,5),color(255),color(255));
    r[2] = new RenderPtObj(new Box(5).fill(255,200));


    red(10);

    Anar.seed(0);
    Obj.globalRender = new RenderObjAll();

    initForm();
  }


  void initForm(){    
    Pts p = new Pts();

    for (int i = 0; i<200; i++)
      Anar.add(Anar.PtRnd(200).render(r[Anar.rndi(3)]));
  }


  public void draw(){
    background(255,0,0);
    noLights();
    Anar.draw();

    fill(255);
    Anar.text3D(Anar.pt(0).toString(),Anar.pt(0));
    Anar.text3D("Hello mom! "+frameCount,Anar.pt(1));   
  }

  public void keyPressed(){
    Anar.rndReset();
    Anar.main.remove(Anar.main.obj(0));
    Anar.main.add(new Obj());
    
    if(key=='q')
      Anar.rndPrev();
    if(key=='w')
      Anar.rndNext();

    initForm();
  }

  public static void main(String[] args){
    PApplet.main(new String[]{Test02kRND.class.getName()});
  }
}

