FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Programar Simulaciones
Mi problema es este: creo varios objetos en un entorno:
Código:
GraphObject:=TGraphObject.Create(owner: EntornoDeLasNarices) Los objetos creados interactuan unos con otros en el tiempo, así que he utilizado un Ttimer para que lance eventos que ejecuten los métodos "actualización" que poseen los objectos. De esta forma, sólo tengo que cambiar el intervalo del timer para cambiar la velocidad de la simulación. Vale. Suena facil, pero no funciona. En muchos casos los eventos Timer se pierden y no actualizan los objetos. He oido a un amigo que existen metodologías de programacion de simulaciones dinamicas basadas en -no-se-que-de-derivadas-en-el-tiempo, pero no me ha sabido decir mucho más. Donde puedo encontrar documentación para hacer simulaciones como dios manda????? Por favor, contadme cualquier cosa que se os ocurra; aunque parezca una tontería... |
#2
|
|||
|
|||
Holaa! tal vez si dieras mas datos de lo que quieres hacer te podria o te podriamos ayudar..los objetos creados tienen movimiento?? me suena eso que quieras hacer algo realizado en objetos puro(en smalltalk),mm el calculo de la derivada..la suelen utilizar para movimientos..por ej..para el movimiento del brazo de un robot..creo haber visto alguna vez..o leido para la facu algo de eso..Y en cuanto a los eventos que se te pierden??..me suena raro..bueno si das mas informacion..saludos!
LA PATRIA SERA LIBRE! |
#3
|
||||
|
||||
Bueno, pues... no, no tienen movimiento, solo son Cuadrados (representan neuronas simples) que cambian de color e interactuan unas con otras; lo de los eventos que se pierden supongo que es porque si un evento no ha terminado de arrancar un codigo antes de que empiece el siguiente pierdes este ultimo; en definitiva¨lo que yo necesito es saber como programar simulaciones dinämicas como hay que hacerlas vaya:::
perdön por la puntuacion; se me conectö el filter keys |
#4
|
||||
|
||||
Aquí va una idea, no sé que tal será.
Cada objeto puede tener una propiedad llamada "Espera: Word", de esta forma, cada objeto hará un Sleep(Espera), y despues manda actualizar a los demás cuadrados. Ventaja: Es obvia, quitamos el TTimer general, y ahora es cada cuadrado el que se queda esperando, jamás debe producirse una pérdida de evento; aunque quizás haya desfases de actualización. No lo sé habría que saber todos los detalles de la implementación. Para interactuar un cuadrado con otro, se tendría una serie de eventos personalizados asignados por código, de tal forma que un cuadrado, despues de esperar, envíe un evento a los cuadrados que corresponda. Ahora mismo supongo que lo tienes todo centralizado en el TTimer, lo que yo digo es descentralizar el proceso y que cada neurona se comunique con sus vecinos. Espero te sirva.
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#5
|
||||
|
||||
Ayy.. Gracias, pero acabo de encontrar unas APIfunciones alternativas al Ttimer en "Los Tomos de Delphi";
Bufff... pero si pudiera encontrar algo sobre programación de simulaciones... joder, sería el hombre más feliz del mundo. |
#6
|
||||
|
||||
En serio, que hasta que te metes en simulaciones no te imaginas lo complicado que es...
|
#7
|
|||
|
|||
¿Y porqué no programar en un hilo cada TTimer?. de esta forma todo se haría al mismo tiempo...
|
#8
|
||||
|
||||
Cita:
Precisamente estaba leyendo algo sobre "threads" (hilos) aquí
__________________
"En el siglo de la estupidez todas las casas comienzan por la fachada" (Fuckowsky) Planeta Insólito, La Pluma Inspirada |
#9
|
||||
|
||||
El comportamiento normal del TTimer es que si el timer expira varias veces sin que se haya atendido el evento, este se recibe solamente una vez. De allí que no sea confiable.
Ya que parece inadecuado que bases el comportamiento de tu aplicación en este componente, quizas lo mas adecuado sea usar Hilos de una vez y olvidarte para siempre de los timers. Eso de programar un ttimer en cada hilo o al revés, no lo entendí, pero tampoco le veo sentido... Hasta luego. ;
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Elegir el mejor SO para programar y Otros | Deiv | Varios | 41 | 21-07-2007 06:54:03 |
Programar un telefono | mauriciofox | Internet | 3 | 05-12-2004 22:11:16 |
Dudas al programar sóckets asíncronos... | Blazer2104 | Internet | 0 | 06-11-2004 01:41:03 |
Programar un Respaldo | jmedina | Varios | 5 | 11-06-2004 16:31:30 |
ayuda en programar dispositivos | mdsketchboog | Varios | 2 | 05-06-2003 09:45:43 |
|