9 votos

polymaps y poli... polígonos

He estado jugando con Bing Maps + Polymaps recientemente.

Se ha hecho evidente que Bing es el único de asignación de los recursos disponibles para Polymaps que incluye imágenes de satélite. ¿Es esto cierto?

Estoy tratando de realizar el dibujo de muchos polígonos de diferentes tamaños en un mapa, y relleno con diferentes colores dependiendo de lo que representan. Además, quiero que cada uno de estos polígonos se puede hacer clic.

Entiendo que para la carga de datos geográficos en un mapa con Polymaps, ya sea su uso .características de la() o .url() como parte de la geoJSON objeto.

He .características (a) de trabajo, pero mediante el uso de esta función, el polígono de datos debe ser embebido en el archivo javascript en sí misma, como en:

map.add(po.geoJson()
        .features([
    {
      "geometry": {
        "coordinates": [[
[[-63.599925935268395,44.64018531837119],[-63.599789142608664,44.640219671024646],[-63.59973818063736,44.6401452402498],[-63.599877655506134,44.64010707058464],[-63.599925935268395,44.64018150140844]],

[[-63.59986692667008,44.639874235083376],[-63.59975695610047,44.63991431339196],[-63.599697947502136,44.63981507181532],[-63.5998159646988,44.639782627416906],[-63.59986424446105,44.6398723265918]]
        ]],
        "type": "MultiPolygon"
      },
      "type": "Feature",
      "id": "beat:05X",
      "properties": {"name": "05X"}
    }

        ]));

Quiero que estos datos proceden en realidad de una base de datos y no se encuentran de forma estática en el propio javascript, que me dice que debo usar el .url() método en su lugar correcto? Y si yo uso el .url() método, debo pasar una URL válida plantilla que devuelve geoJSON... ¿Cómo hago esto con mis propios datos privados? Estoy familiarizado con PHP y mySQL - debo utilizar espacial de la base de datos del sistema en su lugar?

Y ¿cómo funciona un servidor de mapas como MapServer, GeoServer, y otros se ajustan a esta? No voy a configurar un script de PHP para leer estas plantillas a partir de los $_GET variable, consulta de una base de datos y devolver el buen geoJSON cadena?

En realidad, sólo se necesita un poco de inspiración, un par de punteros para que me ponga en mi camino y matar a algunas de las dudas que tengo. Me he encontrado a mí mismo sólo cavar alrededor de la stackexchange y googlear todo, desde los servidores de mapas, geo, bases de datos espaciales - el nombre, probablemente he leído sobre ella, pero estoy luchando por poner las piezas juntas.

De largo aliento, pregunta, pero una vez que estas cosas se aclaren, yo debería estar en una posición mucho mejor. Gracias de antemano.

Actualización 1

Tantas opiniones y tan poco las respuestas ;) voy a tomar punteros en nada! Si usted piensa que usted tiene, incluso de forma remota información valiosa para agregar, por favor. Lo que estoy tratando de lograr... pensé, era trivial y hecho cientos de veces antes. Podemos eliminar polymaps a partir de la ecuación si existen sustitutos.

En resumen, estoy mirando para hacer una mierda de toneladas de polígonos a partir de una base de datos (PostGIS?) de diferentes formas, tamaños, colores y transparencias, y representar en un mapa. Eso es en esencia! Polymaps ha gráficos vectoriales + pensé llegar esto sobre la marcha sería trivial dado el código de arriba... le puede eliminar si tiene otras ideas. ¿Cuál es la mejor solución? Mi único requisito de negocio es que las Imágenes de Satélite ser activado...lo que significa Que estamos trabajando con Bing o Google.

7voto

Magic Hat Puntos 695

Si usted está hablando acerca de GeoJSON se puede utilizar cualquier tipo de base de datos, y el servidor back-end, que desee siempre y cuando:

1) Espera recibe TMS o /{zoom}/{x-coord}/{y-coord}.json estilo de las direcciones Url y puede convertir Z/X/Y en un cuadro delimitador.

(Echa un vistazo a algo como Tilestache (.org) si usted quiere/necesita para ver las matemáticas involucradas en ello.)

2) Devuelve GeoJSON.

Para el peinado , y la adición interactivo bits, a los resultados de los datos que usted querrá definir una "carga" el uso de la función de la capa en() método. Por ejemplo:

var l = org.polymaps.geoJson();
l.url("http://example.com/tiles/{Z}/{X}/{Y}.json");
l.("load", function(e){ ... });

El Polymaps sitio tiene un montón de buena documentación y código de ejemplo, pero también he incluido las diapositivas y código de ejemplo de un Polymaps taller que hice hace poco:

http://www.aaronland.info/talks/where2011/

http://www.aaronland.info/talks/where2011/workshop

Saludos

1voto

Laurent K Puntos 2064

Ok, así que aquí está el trato: Esta entrada del Blog

Aclarado TODO. Es una lectura obligada para cualquier persona jugando con Polymaps. La he encontrado a través de Henry en Reddit

Aarón se menciona el uso de TileStache y de hecho... Esa es la clave, yo no ver cómo de La anterior entrada del blog es muy informativo en el uso de TileStache. Gran Victoria.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X