Este post será más que todo teórico pues creo que es necesario enseñar no sólo código para que puedan usarlo y modificarlo, sino también bases y nociones para que ustedes puedan realizar sus propios proyectos.
«El conocimiento debe seguir fluyendo y no estancarse en un sólo individuo» es quizá un principio de contribución que a lo largo de mi poco experiencia con processing aprendí de las personas que me han ayudado y apoyado.
*Es una mini guía para integrar librerías 3d y otros, no es necesario seguir estos pasos sin son objetos simples (cuadrados, esferas)
* Antes de realizar todos estos pasos debes haber practicado con el tutorial inicial
- Para integrar cualquier librería es necesario seguir un orden establecido para que todo funcione a la perfección. No se puede agregar los códigos en cualquier linea.
- Hay que tener en cuenta que debemos saber que la composición del código es básicamente:import library
llamar las clases
void setup
void draw - Si tenemos dos sketch que queremos fusionar no es necesario repetir la misma librería ni tampoco el void setup ni el void draw. Basta con mencionarlos una vez.
- Tenemos que ordenar entre similares, es decir, las librerias con las librerias y los códigos que hayan sido de void setup y void draw entre ellos.
- Limpiar el código inncesario, pues algunas funciones o comandos pueden crear conflicto.
Ahora pongamos un ejemplo:
Tenemos el código para importar 3ds u obj y lo queremos fusionar con realidad aumentada (nyartoolkit)
- Importamos las librerías
import processing.video.*;
import jp.nyatla.nyar4psg.*;
import processing.opengl.*;
import javax.media.opengl.*;
import mri.*;
- Llamar a las clases
Capture cam;
NyARBoard mark;
V3dsScene vscene;
- Incorporar los códigos que van dentro de void setup
void setup() {
size(640,480,OPENGL);
cam=new Capture(this,width,height);mark1=new NyARBoard(this,width,height,»camera_para.dat»,»patt.hiro»,80);
mark1.gsThreshold=120;
mark1.cfThreshold=0.4;try
{
vscene = new V3dsScene( this,»PT22Low.3ds» );
vscene.useMaterial( true );} catch( Exception e )
{
println( e );
System.exit( 0 );
}
}
- Incorporar los códigos que van dentro de void draw
void draw() {
background(200);
if (cam.available() !=true) {
return;
}
cam.read();hint(DISABLE_DEPTH_TEST);
image(cam,0,0);
hint(ENABLE_DEPTH_TEST);if(mark1.detect(cam)){
PGraphicsOpenGL pgl = (PGraphicsOpenGL) g;
mark1.beginTransform(pgl);vscene.draw();
mark1.endTransform();
}
}




Deja un comentario