package app;
import java.util.ArrayList;
import java.util.Iterator;
import codeanticode.glgraphics.GLGraphics;
import codeanticode.glgraphics.GLTextureWindow;
import codeanticode.glgraphics.GLTexture;
import hypermedia.video.Blob;
import processing.core.*;
import servers.Vision;
import utils.Config;
public class SerLiquido extends PApplet{
static private boolean PRESENT = false;
public static void main(String[] args) {
if(PRESENT) {
PApplet.main(new String[] { "--present", "app.SerLiquido" });
} else{
PApplet.main(new String[] { "app.SerLiquido" });
}
}
/////////////////////////////////////////////////////////////
// CONFIG
Config config;
/////////////////////////////////////////////////////////////
// GUI / TERMINAL
int GUI_W;
int GUI_H;
int GUI_X;
int GUI_Y;
/////////////////////////////////////////////////////////////
// MONOLITO
private MonolitoRenderer MONOLITO_RENDERER;
private GLTextureWindow MONOLITO;
private GLTexture MONOLITO_TEXTURE;
private int MONO_W ;
private int MONO_H ;
private int MONO_X ;
private int MONO_Y ;
/////////////////////////////////////////////////////////////
// COMPUTER VISION
Vision cv;
public void setup(){
config = new Config();
config.readConfig(dataPath("config.ini"));
config.loadArguments();
// ^^^^^^^^^^^^^ Todo lo que vaya antes del size se ejecuta dos veces porque
// seguramente size, llama de nuevo a setup
/////////////////////////////////////////////////////////////
// GUI
/////////////////////////////////////////////////////////////
GUI_W = (int) config.getParameter("width");
GUI_H = (int) config.getParameter("height");
GUI_X = (int) config.getParameter("guiX");
GUI_Y = (int) config.getParameter("guiY");
size(GUI_W , GUI_H , GLGraphics.GLGRAPHICS);
frame.setLocation(GUI_X, GUI_Y);
/////////////////////////////////////////////////////////////
// MONOLITO
/////////////////////////////////////////////////////////////
MONO_W = (int) config.getParameter("monoW") ;
MONO_H = (int) config.getParameter("monoH") ;
MONO_X = (int) config.getParameter("monoX") ;
MONO_Y = (int) config.getParameter("monoY") ;
MONOLITO_RENDERER = new MonolitoRenderer(this, MONO_W, MONO_H);
MONOLITO_TEXTURE = new GLTexture(this, MONO_W, MONO_H);
MONOLITO = new GLTextureWindow(this, MONO_X, MONO_Y, MONO_W, MONO_H);
MONOLITO.setTexture(MONOLITO_TEXTURE);
MONOLITO.init();
/////////////////////////////////////////////////////////////
// CV
/////////////////////////////////////////////////////////////
cv = new Vision(this, 320,240);
};
public void draw(){
System.out.println(frameRate);
cv.update();
background(255,0,0);
MONOLITO_RENDERER.draw();
MONOLITO_TEXTURE.copy(MONOLITO_RENDERER.getTexture());
};
}