Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-06-2012
gabtroc gabtroc is offline
Miembro
NULL
 
Registrado: may 2012
Posts: 10
Poder: 0
gabtroc Va por buen camino
Animacion usando unidad crt

Buenas noches amigos de club delphi tengo un nuevo tema en el que necesito algo de ayuda me mandan a hacer una animacion en una aplicacion tipo consola utilizando la unidad crt en donde aparezca una pelota que se mueve de manera lineal y que cuando choque con los bordes de la pantalla rebote, tal cual como si fuera el protector de pantalla de windows.

Como segundo problema me mandan a hacer que la pelota haga un moviemiento parabolico y que tenga un rebote perfectamente elastico, es decir que cuando llegue al piso rebote y llegue a la misma altura de la cual se solto la pelota.

Para el primer problema si tengo algo hecho para el segundo no tengo ni idea de como hacer que el movimiento sea curvo. La aplicacion esta colocada en un menu por eso el codigo del primer problema lo tengo como un procedure.

La cosa esta asi

Código Delphi [-]
Procedure MovRectilineo;
Const colmax=80;
      linmax=24;

var col,lin,k:integer;

Begin
lin:=1;
col:=1;
k:=0;
ClrScr;
  repeat
   Write('O');
   sleep(90);
   clrscr;
   inc(lin);
   inc(col);
   GotoXY(col,lin);
   if lin=24 then begin
                   repeat
                    dec(lin);
                    inc(col);
                    Write('O');
                    sleep(90);
                    clrscr;
                    if col=80 then begin
                                     repeat
                                     dec(col);
                                     until col=1;
                                     GotoXY(col,lin);
                                   end;

                    GotoXY(col,lin);
                   until lin=1;

                  end;


   inc(k);
   until k=300;

Ahora pasa lo siguiente mis limites en la pantalla son 24 lineas y 80 columnas, la pelota comienza a moverse llega al borde de abajo y rebota perfecto y vuelve a subir y si rebota de arriba baja perfecto tambien el problema esta en que cuando llega al borde de la derecha el moviemiento comienza desde el principio, luego da una segunda vuelta y cuando vuelve a llegar al borde derecho aparece en la izquina superior izquierda y se imprime infinias veces en ese punto. Pueden correrlo para que vean mejor que eslo que esta haciendo pero eso es mas o menos la explicacion.

Como podria arreglar ese problema? y como puedo hacer con el segundo problema para que el movimiento sea curvo?
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con animacion dfv Gráficos 4 19-10-2006 15:49:32
animación Delphi anto1178 Varios 1 31-08-2006 23:17:24
Animacion por frames Drake C++ Builder 5 26-06-2006 12:52:04
Animacion por frames Drake C++ Builder 2 28-12-2005 19:30:44
Animacion Troyano Varios 2 16-06-2004 15:29:02


La franja horaria es GMT +2. Ahora son las 04:16:32.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi