
PDE Download: SimpleString.pde
JAVA Download: SimpleString.java
Click on anar+ terms to get the documentation.
import processing.opengl.*;
import anar.*;
import lsys.Grammar;
/*
* Example for Anar library by Guillaume LaBelle + Julien Nembrini
* http://anar.ch
*/
Pts ptsA = new Pts();
Face f;
Grammar grammar;
void setup(){
size(200,200,OPENGL);
Anar.init(this);
initGrammar();
}
void initGrammar(){
grammar = new Grammar("fg");
// here define the rules
// * means any kind of symbol
// the example rules below are therefore non contextual
grammar.addRule("*f*","f");
grammar.addRule("*g*","[f]hi");
grammar.addRule("*h*","gh");
// this one makes it context dependant
grammar.addRule("igh","[ghg]");
// this new one makes it probabilistic
final String[] prods = {"aa", "bb"};
final float[] probs = {.5f, .5f};
grammar.addRule("*i*",prods,probs);
println(grammar);
}
void draw(){
if(frameCount%2==0)
background(155);
else
background(153);
}
void keyPressed(){
if(key=='a'){
grammar.step();
println(grammar);
}
if(key=='s'){
grammar.reset();
println(grammar);
}
}

|