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:   Test03aTurtleCurvedB.pde
   JAVA Download:   Test03aTurtleCurvedB.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
 */
 
 
Obj     all = new Obj();
 
Sliders mySliders;
 
 
void setup(){
    size(800,400,OPENGL);
  Anar.init(this);
 
  // Setup DEFAULT rendering of our scene
  Pts.globalRender = new RenderPtsAll();
  Pt.globalRender = new RenderPtCross(new AColor(255,155,155),1);
  Anar.drawAxis(true);
  CSpline.globalRender.splineRes.set(12);
 
  initForm();
}
 
 
void initForm(){
 
  // //////////////////////////////////////////
  // //////////////////////////////////////////
  // Initial SHAPE
 
  all = new Obj();
 
 
  Transform t = new Transform();
  t.add(new Translate(10,0,0));
  t.add(new RotateY((float)Math.PI/6));
  t.add(new RotateX((float)Math.PI/6));
 
 
  Pts line = new Pts();
  Pt ori = Anar.Pt(0,0,0);
  Pt last = ori;
 
  for (int i = 0; i<10; i++){
 
    Transform oriT = new Transform(ori,t);
    Transform reallign = new Transform(last,ori,oriT);
 
    PtDER newPt = Anar.Pt(ori);
    newPt.apply(reallign);
    line.add(newPt);
 
    last = ori;
    ori = newPt;
    // flush();
    // println(Anar.rndi(tz.size()));
  }
 
  CSpline nCs = new CSpline(line,.1f);
  all.add(nCs);
 
  Translate tt = new Translate(10,0.1f,0.1f);
 
  for (int i = 0; i<20; i++){
    CSpline nC2 = new CSpline(new Pts(nCs),.1f);
    nC2.apply(tt);
    all.add(nC2);
    nCs = nC2;
  }
 
 
  // //////////////////////////////////////////
  // HIRARCHY
 
  Anar.camTarget(all);
  // println(all.parentList());
 
  mySliders = new Sliders(t);
  mySliders.add(tt);
 
}
 
 
void draw(){
  background(200);
 
  all.draw();
 
  mySliders.draw();
}
 
 
 
 



screenshots