Pregunta

Estoy tratando de hacer un análisis de red para un cliente. La capa GIS de red de carreteras proporcionada es de mala calidad; por lo tanto, tengo que recurrir a los mapas de Google para proporcionarme el camino más corto entre 200 puntos, para producir matrices de tiempo y distancia entre cada punto.

¿hay alguna forma en que pueda ingresar la capa como un conjunto de puntos KML para obtener salidas de la distancia y el tiempo entre estos puntos?

si esto se puede hacer a través de la API, ¿tiene alguna sugerencia o sugerencia sobre cómo escribir tal script?

EDITAR el resultado final ideal sería un archivo CSV de la siguiente forma:

node_1, node_2, distance, travel_time
node_n, node_m, distance, travel_time
¿Fue útil?

Solución

No escribiré el script completo por usted, pero esto se puede hacer con la API de mapas. Abra el sandbox de mapas y agréguelo a la función onGDirectionsLoad :

alert(gdir.getDistance().meters);

Puede encontrar la documentación aquí - un getDuration () también está disponible. Entonces, todo lo que necesita hacer es emitir una nueva solicitud una vez que haya terminado, obteniendo instrucciones para cada par de puntos de inicio y finalización.

Sin embargo, tenga en cuenta que si planea obtener rutas de 200 * 200, Google puede decidir limitarlo en algún momento. Use este método bajo su propio riesgo y con un retraso entre las solicitudes.

Tenga en cuenta también que el soporte KML integrado no incluye " Parece que no soporta darle la lista de puntos, esto tiene sentido, ya que el cliente solo puede tener los que están actualmente en pantalla. Es posible que necesite escribir su propio cargador KML si desea usar KML como formato de entrada. O utilice un formato más simple, como en este ejemplo .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top