This browser does not have a Java Plug-in.
Get the latest Java Plug-in here.

anar+

by   LaBelle + Nembrini
©2008

built with ( )
   examples index
Rotate: middle click or key[1]
Zoom in|out: wheel button or key[2]
AutoRotate: key[5]
(First Click inside the applet to enable keys)

This applet use OpenGL, you might have to install extra jogl libraries once to view this applet. You may have a look at image capture and video at the bottom of this page. You might accept security security permenently to remove the security prompts on each pages.



sourcecode


   PDE Download:   Test04zTurtleMulti.pde
   JAVA Download:   Test04zTurtleMulti.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  penDown      = true;
boolean  cameraFollow = false;
 
//  Obj      traces       = new Obj();
Turtle[] turtle;
 
Param    f;
Param    XY;
Param    XZ;
 
void setup(){
 
    size(screen.width,screen.height-100,OPENGL);
  Anar.chy(this);
  Anar.drawAxis(true);
 
  ParamCycle.clock = new ClockFCms();    
 
  f = new ParamCycle(1/4f,5/2f,1/4f,new Param(20,0,200));
  XY = new ParamCycle(0.01f, -.1f,.1f,new Param(70,0,200));
  XZ = new ParamCycle(0.01f, -.1f,.1f,new Param(100,0,200));
 
  Anar.sliders.add(f);
  Anar.sliders.add(XY);
  Anar.sliders.add(XZ);
 
  turtle = new Turtle[10];
 
  int n = turtle.length;
  int d = 20;
 
  for (int i = 0; i<turtle.length; i++){
    turtle[i] = new Turtle(Anar.Pt(d*sin(2*PI*i/n),d*cos(2*PI*i/n),0),Anar.Pt(0,0,1),Anar.Pt(sin(2*PI*i/n),cos(2*PI*i/n),0));
//      Pts t = new Pts();
//      traces.add(t);
  }
}
 
 
void draw(){
  background(200);
  Anar.draw();
//    traces.draw();
 
 
  for (int i = 0; i<turtle.length; i++){
    turtle[i].ROTATEXZ(XZ);
    turtle[i].ROTATEXY(XY);
    turtle[i].FORWARD(f);
    turtle[i].draw();
  }
 
  if(cameraFollow)
    turtle[0].setCameraOnTurtle();
}
 
 
void keyPressed(){
  if(key==' ')
    for (int i = 0; i<turtle.length; i++)
      if(turtle[i].penState)
        turtle[i].PENUP();
      else
        turtle[i].PENDOWN();
 
  if(key=='q')
    cameraFollow = cameraFollow ? false:true;
 
  if(key=='c')
    for (int i = 0; i<turtle.length; i++)
      turtle[i].CLEAN();
 
  if(key=='t')
    for (int i = 0; i<turtle.length; i++)
      turtle[i].drawingFromTail();
 
  if(key=='h')
    for (int i = 0; i<turtle.length; i++)
      turtle[i].drawingFromHead();
 
 
}
 
 
 



screenshots