Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
Ecfisa:

ahora se me plantea otra cosa.... el dibujado de las rutas en pantalla lo tengo, pero ahora, se me plantea el interrogante de calcular el recorrido por otros SECTORES que no se ven en pantalla pero que aun asi, tendria que calcular las rutas en un lugar "aparte" que no sea visible (un vector quizas?) para que aunque no se vean en pantalla....el proceso de "navegacion" de las naves lleve su tiempo en background

Es decir si una nave sale de LA TIERRA (Sector Vega) en principio, al tener ese sector en pantalla.....vemos la nave por las rutas....bien...ahora cuando salga del sector VEGA.... como puedo hacer para que siga trazando las rutas sin mostrar nada en pantalla pero que es como si la nave siguiese trazando las rutas para que llegado un tiempo mas tarde.....cambiemos por ejemplo al SECTOR OMEGA (destino) y cuando corresponda la veamos "llegar"?

Aguml, tambien va por ti o por vosotros, los que esteis siguiendo este hilo

a ver que ideas me dais que sean elegantes y sencillas de implementar

el Quiz de la cuestión.....es que cada nave lleve una velocidad (eso lo logramos con la velocidad del TTimer incrustado en cada objeto "Ship" que nos dio ecfisa pero necesito una forma de calcular todas las trayectorias a través de los sectores galacticos y mostrar solo las naves cuando Visualicemos un SECTOR en pantalla y haya alguna "nave" pasando por las rutas de ese SECTOR

y gracias tios, me estais ayudando un monton....gracias por estar ahi

Última edición por Snaked fecha: 07-11-2016 a las 11:28:04.
Responder Con Cita
  #2  
Antiguo 07-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Snaked.

Para calcular las rutas podes usar una variante de la función movepixel del mensaje #3 :

Código PHP:
int calculateRoute( const TPointp1, const TPointp2TPointvp )
{
  
int dx p2.p1.x;
  
int dy p2.p1.y;
  
int ix 0;

  for( 
int x p1.xp2.x++ ) {
    
int y p1.dy * ( p1.) / dx;
    
vp[ix].x;
    
vp[ix].y;
    
ix++;
  }
  return 
ix;
}

// Ejemplo de uso:
...
{
  
TPoint ruta[1366];
  
int top =  calculateRoutePoint1010 ), Point500100 ),  ruta );
... 
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 07-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
entiendo, voy a probar a ver que resulta

una cosilla.... en esta linea:

Código PHP:
TPoint ruta[1366];  //porque 1366?? por el ancho maximo de la pantalla? 
y otra cosa....

Código PHP:
int top =  calculateRoutePoint1010 ), Point500100 ),  ruta ); 
entiendo que top almacena el resultado final de ix pero que es exactamente? bueno....se que es el numero de iteraciones del bucle for pero para que lo almacenas en un int?

Última edición por Snaked fecha: 07-11-2016 a las 13:59:40.
Responder Con Cita
  #4  
Antiguo 07-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

La cantidad de elementos que fueron almacenados en el arreglo "ruta".

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 07-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola de nuevo.

Se me pasó tu primer consulta... Si, 1366 es el ancho máximo de pantalla del equipo en que estoy en este momento.
Para hacerlo portable podrías usar un arreglo dinámico, pero eso es otro tema que el que nos trae.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 08-11-2016
Snaked Snaked is offline
Baneado
NULL
 
Registrado: sep 2016
Posts: 102
Poder: 0
Snaked Va por buen camino
vale ecfisa.... voy a ver si avanzo algo en el juego ya que tengo mas o menos las funciones ya implementadas

Aguml, siento que estes "de baja" y te deseo que te recuperes pronto de tu operacion.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Copiar TLabel.Canvas sobre TBitmap.Canvas @CSE1970 Gráficos 2 23-10-2013 12:46:53
Impresion linea por linea en tiquete de caja Livey Impresión 2 21-12-2010 00:21:05
uso de DLL creada con VB6 lichi OOP 0 12-09-2005 16:55:46
Como imprimir por canvas un caracter de salto de linea buitrago Impresión 3 30-08-2004 11:10:05
¿Cómo borrar un grid sin tener que ir línea a línea? Isaac Varios 2 18-02-2004 16:13:14


La franja horaria es GMT +2. Ahora son las 07:42:29.


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