import processing.opengl.*; import anar.*; /* * Example for Anar library by Guillaume LaBelle + Julien Nembrini * http://anar.ch */ Obj myObj = new Obj(); void setup(){ size(800,400,OPENGL); Anar.init(this); Anar.drawAxis(); initForm(); } void initForm(){ int n = 6; // number of elements in X int m = 6; // number of elements in Y Param axonometric = new Param(0,0,50); TranslateZ tz = new TranslateZ(axonometric); Obj grid = createGrid(n,m); myObj.add(grid); Obj ctrlX = createCtrlInX(n,m,grid); ctrlX.apply(tz); myObj.add(ctrlX); Obj curvesX = ptsSetToCurves(ctrlX,50); curvesX.apply(tz); curvesX.apply(tz); myObj.add(curvesX); Obj ctrlY = createCtrlInY(curvesX,50); ctrlY.apply(tz); ctrlY.apply(tz); ctrlY.apply(tz); myObj.add(ctrlY); Obj curvesY = ptsSetToCurves(ctrlY,50); curvesY.apply(tz); curvesY.apply(tz); curvesY.apply(tz); curvesY.apply(tz); myObj.add(curvesY); Obj faces = createFacesFromAGrid(curvesY); faces.apply(tz); faces.apply(tz); faces.apply(tz); faces.apply(tz); faces.apply(tz); myObj.add(faces); // Anar.sliders(myObj) Anar.sliders(tz); // Anar.sliders = new SlidersBCF(Anar.sliders.paramList); Anar.camTarget(myObj); } Obj createGrid(int n, int m){ Obj output = new Obj(); for (int i = 0; i