Pascal/Turbo Pascal - Animacion... ¿getimage?

 
Vista:

Animacion... ¿getimage?

Publicado por margarita (5 intervenciones) el 11/09/2004 22:53:52
Necesito saber como hacer una animacion evitando que la pantalla parpadee. Escuche que puedo usar el comando getimage, pero en realidad no se bien como usarlo. Si me pueden ayudar con una explicacion o ejemplos seria genial. Gracias.
[email protected]
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Animacion... ¿getimage?

Publicado por Diego Romero (786 intervenciones) el 12/09/2004 00:35:53
Aquí hay un ejemplo:
uses Graph, Crt;
var
Gd, Gm: Integer; { Para inicializar }
P: Pointer; { Puntero generico }
Size: Word; { Tamaño }
X1, X2, Y1, Y2, I: Integer; { Variables varias }
begin
Gd := Detect; { Inicialización del Video }
InitGraph(Gd, Gm, '');
if GraphResult <> grOk then
Halt(1);

X1:=Random(GetMaxX-1)+1; { "Ensuciar" la pantalla }
Y1:=Random(GetMaxY-1)+1;
X2:=Random(GetMaxX-1)+1;
Y2:=Random(GetMaxY-1)+1;

for i:=1 to 100 do
begin
Line(X1, Y1, X2, Y2);
X2:=X1;
Y2:=Y1;
X1:=Random(GetMaxX-1)+1;
Y1:=Random(GetMaxY-1)+1;
end;


Size := ImageSize(100, 100, 180, 180); { Calcula el tamaño de la imágen }
GetMem(P, Size); { Reserva espacio de memoria }
GetImage(100, 100, 180, 180, P^); { Captura la imágen }
ReadKey; { Espera }
ClearDevice; { Limpia la pantalla }
PutImage(150, 150, P^, NormalPut); { Pone la imágen en otro lugar }
ReadKey; { Espera }
CloseGraph; { Cierra graficos }
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Animacion... ¿getimage?

Publicado por Julio (12 intervenciones) el 20/09/2004 19:15:20
Hola

Disculpen que me aproveche de esta pregunta, ya que en realidad tengo la misma duda. El código funciona, pero me gustaría que me explicaran eso de P^. Por el momento sólo que es una variable tipo Puntero, pero no entiendo para qué y como se usa. Podrían explicármelo con este ejemplo u otro, por favor.

Desde ya, muchas gracias.

Julio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar