Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Distancia kilométrica entre dos ciudades (https://www.clubdelphi.com/foros/showthread.php?t=58488)

ElDuc 22-07-2008 10:45:11

Distancia kilométrica entre dos ciudades
 
Hola a todos.

Estoy haciendo una aplicación para el control de las gestiones comerciales de mi empresa.

Sería un puntazo que la aplicación facilitara la distancia entre dos clientes/pueblos/puntos.

¿Alguien sabe si existe alguna función, tipo google, que me pueda facilitar esta area?

Gracias de antemano.

Ñuño Martínez 22-07-2008 11:08:49

Más que una aplicación necesitas una base de datos. Hay empresas que ofrecen estas bases de datos. Yo he buscado "base datos distancia kilométrica" en Internet y me han salido unos cuantos enlaces, y seguro que más de uno puede interesarte.

[edit]
Ahora que caigo, también necesitarás un algoritmo de "enrutado", porque dudo que en una base de datos estén todas las distancias posibles. Aun así seguro que también hay alguna empresa con componentes o programas que permitan obtener esta información a partir de la mencionada base de datos.

duilioisola 22-07-2008 14:38:57

Otra posibilidad es que la aplicación vaya aprendiendo.

Yo hiche una aplicación que pedía origen, destino y distancia para tramos de viajes de camiones.
En una tabla guardaba estos tres valores.
Mientras rellenaban los dos primeros datos (origen y destino) yo buscaba si había una coincidencia en mi tabla. Si la había, rellenaba distancia con este dato.
Después de poco tiempo, ya tenía las rutas más comunes entradas.
Cada vez que salía una ruta nueva, el cliente la buscaba la distancia en un programa (Route66) y lo rellenaba.

Notas:
- cuando busco distancia, busco de origen a destino y de destino a origen.
- tiene que haber un método para poner origen y destino. No es lo mismo BCN a Tarragona que Barcelona a TARRAGONA

Delphius 22-07-2008 21:33:57

A modo de complemento a lo dichos de los compañeros, sugiero que enfoques el tema de la lógica de determinar los caminos y enrutados aplicando algoritmos que han sido diseñados (entre otras cosas) para estos casos:
Busqueda en amplitud
Busqueda en profundidad
algoritmo A* (se lee A estrella)

Y, disculpame la curiosidad ¿El objetivo es determinar la logística y distribución de mercaderia desde una o varias fuentes a varios destinos? Si la respuesta es afirmativa sugiero que leas e investigues sobre Modelo de Transporte, teoría que forma parte de la programación lineal.

Saludos,

ElDuc 25-07-2008 10:09:56

Perdona el retraso a tu pregunta, pero he estado fuera.
El interés radica en cuadrar la likidación de Km. que realizan los comerciales con sus partes de visitas introducidos en nuestro sistema.

Delphius 25-07-2008 21:39:21

Cita:

Empezado por ElDuc (Mensaje 303215)
Perdona el retraso a tu pregunta, pero he estado fuera.
El interés radica en cuadrar la likidación de Km. que realizan los comerciales con sus partes de visitas introducidos en nuestro sistema.

Hola ElDuc,
He visto que me enviaste un MP.
Dejame ver si entiendo, ¿entonces tu sólo necesitarías saber las distancias de un punto a otro para poder saber cuanto en cuanto debes liquidar?

Si es eso, entonces solo necesitarías una base de datos como dice el compañero Ñuño. Y si no está completa habrá que calcular las otras distancias. Muy seguramente ya hay aplicativos que realizan esto... desconozco si Google Earth ofrece una herramienta asi. Solo recuerdo que se puede saber en forma estimativa la distancia de un punto a otro, pero en linea recta.
Se que no he dicho algo nuevo, tendría que ponerme a ver si algunos sistemas de geoposicionamiento (y/o similares) ofrece una herramienta como esa. Mi padre hace uso de sistemas de estos tipos... pero ninguno de los que usa hace esto.

Saludos,


La franja horaria es GMT +2. Ahora son las 11:55:51.

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