Processing:Copiar un layer en otro.

Todo aquello que no está relacionado con Gemix Studio ni con la programación DIV en general.

Processing:Copiar un layer en otro.

Postby OskarG » Wed Aug 10, 2016 2:07 pm

Hola buenas,
No encuentro un ejemplo donde dibujando line(mouseX,mouseY,pmouseX,pmouseY) en un layer,luego creando otro layer lo pueda trasladar ,es decir copiarlo en el nuevo layer.
¿?Alguien sabe como hacerlo?¿?
User avatar
OskarG
 
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: Processing:Copiar un layer en otro.

Postby CicTec » Wed Aug 10, 2016 10:50 pm

Hola OskarG,

Como se crea (o creas) un layer en processing.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: Processing:Copiar un layer en otro.

Postby erkosone » Thu Aug 11, 2016 5:07 am

PGraphics es lo que necesitas, mirate los metodos que trae, hay para dumpear entre objetos PGraphics, haber si cuando llegue a casa te cuelgo mi libreria para processing, te va a ayudar bastante a hacer todas estas cosas, es un game engine.
User avatar
erkosone
 
Posts: 10654
Joined: Tue Feb 24, 2009 2:13 pm
Location: Barcelona.

Re: Processing:Copiar un layer en otro.

Postby OskarG » Thu Aug 11, 2016 11:28 am

Hola,te explico como creo los layers,el problema es que no soy capaz de copiar el contenido de un layer en otro,pues crashea el programa,seguro porque hago cosas que no son compatibles :lol:
PGraphics a, b;
//
a = createGraphics(width, height);
a.beginDraw();
a.fill(255,0,0);
a.rect(10, 10, 40, 40);
a.endDraw();//dibujo un simple cuadrado en el layer a.

b = createGraphics(width, height);
b.beginDraw();
b.ellipse(50, 50, 50, 50);//dibujo una elipse en el layer b.
b.endDraw();
//muestro ahora los layers
image(a, 0, 0);
image(b, 0, 0);







dudas...
1. ¿como copio el layer a en b o en otro layer creado....?
2.¿como hago una tabla donde en vez que exprese a ,exprese layer[1].rect()..layer[2].line..etc
User avatar
OskarG
 
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: Processing:Copiar un layer en otro.

Postby OskarG » Thu Aug 11, 2016 12:30 pm

ya esta con tablas,preguntas....


//constantes..
int NUM_LAYERS = 5;
//Globales
PGraphics[] layer;
void setup()
{
smooth();



size(200,200);
layer = new PGraphics[NUM_LAYERS];
for (int i = 0; i < NUM_LAYERS; i++)
{
layer[i] = createGraphics(200,200);

}
}


void draw()
{


layer[0].beginDraw();
layer[0].fill(255,0,0);
layer[0].rect(10, 10, 40, 40);
layer[0].endDraw();//dibujo un simple cuadrado en el layer 0.


layer[1].beginDraw();
layer[1].ellipse(50, 50, 50,50);
layer[1].endDraw();//dibujo un simple cuadrado en el layer 1.
image(layer[0], 0, 0);
image(layer[1], 0, 0);

}


ejemplo000.png



1.Por que me sale PIXELADO EL CIRUCLO?¿?
2.COMO HAGO PARA COPIAR LA CAPA 0 en la 1. o copiar la capa x en cualquier otra capa que quiera.
You do not have the required permissions to view the files attached to this post.
User avatar
OskarG
 
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: Processing:Copiar un layer en otro.

Postby CicTec » Thu Aug 11, 2016 12:34 pm

1) Puede ser porque es muy pequeño o falta algun parametro de config da setear
2) pon por favor el link de referencia de la clase PGraphics, para ver cual opciones hay para copias.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: Processing:Copiar un layer en otro.

Postby OskarG » Thu Aug 11, 2016 1:15 pm

Documentacion de proceesing.
https://processing.org/reference/copy_.html



void draw()
{


layer[0].beginDraw();

layer[0].background(255,255);
layer[0].fill(255);
layer[0].rect(10, 10, 400, 400);
layer[0].endDraw();//dibujo un simple cuadrado en el layer a.
//actua de fondo....

layer[1].beginDraw();
layer[1].strokeWeight(2);

layer[1].background(255,0);//evita el pixelado.
layer[1].ellipse(100,100, 250,50);
layer[1].endDraw();//dibujo un simple cuadrado en el layer a.
//capa 1...
layer[2].beginDraw();
layer[2].strokeWeight(2);

layer[2].fill(255,0,0);
layer[2].background(255,0);//evita el pixelado.
//layer[1].background(255);
layer[2].ellipse(120,100, 150,50);
layer[2].endDraw();//dibujo un simple cuadrado en el layer a.
//capa2....
image(layer[0], 0, 0);
image(layer[1], 0, 0);
image(layer[2], 0, 0);



}


///SOlucionado el primer problema,ahora solo falta saber copiar de layer 1 a layer 2 o a cualquier otro layer.
Last edited by OskarG on Thu Aug 11, 2016 1:25 pm, edited 1 time in total.
User avatar
OskarG
 
Posts: 612
Joined: Tue Jan 12, 2010 2:12 am

Re: Processing:Copiar un layer en otro.

Postby CicTec » Thu Aug 11, 2016 1:21 pm

OskarG wrote:Documentacion de proceesing.
https://processing.org/reference/copy_.html

Esta no es la documentation de la clase PGraphics, es de la funcion "copy", que en este caso no te sirve porque:
Copies a region of pixels from the display window to another area of the display window and copies a region of pixels from an image used as the srcImg parameter into the display window

Lo que hace es copiar un trozo de la pantalla u de una region de otra imagen, en otra parte de la pantalla, tu lo que necesitas es copiar una capa en otra.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm


Return to Offtopic

Who is online

Users browsing this forum: No registered users and 11 guests