package p5;
import anar.*;




import processing.core.PApplet;

public class Test02LSweep extends PApplet {

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


  Obj   obj = new Obj();

  PtABS basePoint;

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

    Anar.init(this);

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

    initForm();
  }

  void initForm(){
    Transform t = new Transform();

    t.translate(5,1,2.5f);
    t.scale(1.11f,1,1);
    t.rotateZ(.6f);

    basePoint = Anar.Pt(15,0,2);

    Translate wide = new Translate(basePoint);

    Pts ptsA = new Pts();
    Pts ptsB = new Pts();
    Pt a = Anar.Pt(0,0,0);


    for (int i = 0; i<50; i++){
      Pt newPt = Anar.Pt(a,t);
      ptsA.add(newPt);
      ptsB.add(Anar.Pt(newPt,wide));
      a = newPt;
    }

    obj.add(ptsA);
    obj.add(ptsB);

    obj = new ObjFacesFromTwoLines(ptsA,ptsB);

    println(obj.parentList());

    Anar.camTarget(obj);
  }


  public void draw(){
    background(255);
    obj.draw();

    basePoint.x(mouseX);
    basePoint.y(mouseY);
  }

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

}
