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:   Test04oCsplineRhinoExport.pde
   JAVA Download:   Test04oCsplineRhinoExport.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 myObj = new Obj();
 
 
void setup(){
    size(800,400,OPENGL);
  Anar.init(this);
  Anar.drawAxis();
  initForm();
}
 
void initForm(){
  myObj = createModule();
}
 
Obj createModule(){
  // Initialize a local object
  Obj module = new Obj();
 
  // First construction: a basic line
  Pts construction = new Pts();
 
  construction.add(0,0,0);
  construction.add(30,20,0);
  construction.add(60, -20,0);
  construction.add(90,0,0);
  construction.add(120,0,40);
  construction.add(150,0,0);
  construction.add(180,0,0);
  construction.stroke(155,0,0);
 
  // From this first set of points, create a curve of degree 4
  CSpline curve = new CSpline(construction,4);
  curve.stroke(255,155,155);
 
  // Constrain a point on this curve for t=0.1f
  Pt c = new PtCurve(curve,0.1f);
  // Track parameters of point C
  Sliders cOnCurve = new Sliders(c);
  Anar.sliders(cOnCurve.get(cOnCurve.size()-1));
 
  // Create a new line with non uniform distribution of points
  Pts curveWithPoints = new Pts();
  float i = 0;
 
  while (i<1){
    curveWithPoints.add(new PtCurve(curve,i));
    i += random(0.1f);
  }
 
  // curveWithPoints.translate(0,10,0);
  // curveWithPoints.drawPoints();
 
  // Create set of Points from an uniform distribution of points
  Pts curveWithPointsUniform = curve.getPts(30);
  // curveWithPointsUniform.translate(0,30,0);
  // curveWithPointsUniform.drawPoints();
 
  // Add Everything to our object
  module.add(curve);
  module.add(construction);
  // module.add(curveWithPoints);
  module.add(curveWithPointsUniform);
  // module.add(c);
 
  Anar.camTarget(construction);
 
  return module;
}
 
 
void draw(){
  background(155);
  myObj.draw();
}
 
 
void keyPressed(){
 
  if(key==' ')
    RhinoScript.export(myObj,"curveTest");
}
 
 
 



screenshots