
PDE Download: Test04tPlatonicPlacement.pde
JAVA Download: Test04tPlatonicPlacement.java
Click on anar+ terms to get the documentation.
import processing.opengl.*;
import anar.*;
/*
* Example for Anar library by Guillaume LaBelle + Julien Nembrini
* http://anar.ch
*/
boolean record = false;
Sliders mySliders;
Obj baseForm;
void setup(){
size(1000,500,OPENGL);
Anar.init(this);
Anar.drawAxis(true);
Pts.globalRender = new RenderPtsAll();
Param s1 = new Param(0.1f,0,2);
Anar.sliders(s1);
Param r1 = new Param(-PI/2f,-PI/2f,PI);
Anar.sliders(r1);
Param r2 = new Param(0,-PI,PI);
Anar.sliders(r2);
Obj plat = new Platonic(2);
Obj baseForm = new Platonic(1).scale(s1);
Transform reset = new Transform(baseForm.face(0).pt(0),baseForm.face(0).pt(1)).preTransform();
baseForm = new Obj(baseForm,reset).rotateX(r1).rotateY(r2);
for(int i=0; i<plat.numOfFaces(); i++)
{
Face f = plat.face(i);
for(int j=0; j<f.numOfPts(); j++)
{
Transform place = new Transform(f.pt(j%f.numOfPts()), f.pt((j+1)%f.numOfPts()), f.pt((j+2)%f.numOfPts())).postTransform();
Anar.add(new Obj(baseForm,place));
}
}
//Anar.add(baseForm);
Anar.add(plat);
Anar.println(Anar.main);
Anar.camTarget(Anar.main);
}
void draw(){
background(155);
Anar.main.draw();
}

|