
PDE Download: Test02jBSplineDebug.pde
JAVA Download: Test02jBSplineDebug.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
*/
Pts bsp;
Param pv;
Param pn;
Pts baseLine = new Pts();
void setup(){
size(800,400,OPENGL);
frameRate(200);
Anar.init(this);
Anar.drawAxis(true);
initShape();
Pts.globalRender = new RenderPtsAll();
Pt.globalRender = new RenderPtShapeOriented(new AColor(100),new AColor(255,0,0,150),Anar.scene);
}
void initShape(){
baseLine.add(Anar.Pt( -50,0,0));
baseLine.add(Anar.Pt(0,50,50));
baseLine.add(Anar.Pt(50,0,0));
pv = new Param(1/.3f);
bsp = new CSpline(baseLine,pv);
// obj.add(bsp);
// prnt(bsp.parentList());
Anar.camTarget(baseLine);
}
void draw(){
background(190);
baseLine.draw();
if(drawConstruction)
bsp.draw();
else
((CSpline)bsp).drawConstructionLines();
if(key=='k'){
pv.set(mouseX/(float)width/2f);
pn.set(mouseY/(float)height*60+1);
}
}
private boolean drawConstruction = true;
void keyPressed(){
switch(key){
case ' ':
if(drawConstruction)
drawConstruction = false;
else
drawConstruction = true;
break;
}
}
void prnt(Object s){
super.println(s);
super.println("-----------------------------");
}

|