2010-06-24 13 views
1
format

PostGis WKT de multipolygone est:Google maps api, PostGIS, multipolygone

MULTIPOLYGON(
((20.229 39.409,20.2241 39.401,20.220 39.410,20.229 39.409)), 
((20.209 39.407,20.223 39.400,20.211 39.402,20.209 39.4076)) 
) 

Google Maps api v3 Polygon est:

var triangleCoords = [ 
    new google.maps.LatLng(25.774252, -80.190262), 
    new google.maps.LatLng(18.466465, -66.118292), 
    new google.maps.LatLng(32.321384, -64.75737) 
    ]; 

La question est: Puis-je créer un multipolygone dans google Plans?

Répondre

1

PostGIS prend en charge un certain nombre de formats de sortie directement:

http://postgis.refractions.net/documentation/manual-1.5/ch08.html

Voir les ST_As() funcs.

L'API Google Maps en prend également en charge un certain nombre (SVG, KML, etc.). Vous devriez essayer d'utiliser un format qui parle tous les deux. Maintenant, je ne suis pas sûr que Google Maps accepte les multipolygones dans l'un de ces formats. Mais vous pouvez toujours utiliser la fonction ST_Simplify().

0
var multipolygon=[ 
[new google.maps.LatLng(x1,y1),new google.maps.LatLng(x2,y2),new google.maps.LatLng(x3,y3)], 
. 
. 
. 
[new google.maps.LatLng(x4,y4),new google.maps.LatLng(x5,y5),new google.maps.LatLng(x6,y6)] 
]; 
+1

Vous ne devriez pas avoir à construire vos formes à la main puisque les données sont déjà dans PostGIS. Faites simplement une requête à PostGIS et faites-en sortir le format dont vous avez besoin. – xanadont

0

C'est un peu vieux, mais je viens de travailler sur la même chose, en essayant de créer des fichiers Multipolygones GeoJSON dans Google Maps, donc pensé que je partagerais.

Fondamentalement, non, vous ne pouvez pas. Mais vous pouvez créer une solution de contournement.

D'abord créer quelque chose pour gérer les sous-polygones individuels (objet, tableau, etc). Puis remplissez cet objet avec chaque partie du multipolygone. Vous pouvez ensuite traiter les sous-polygones en tant que groupe, via des méthodes personnalisées ou une itération à travers eux.

Voir http://www.alecbennett.com/projects/loadgeojson pour une démonstration rapide de la mise en surbrillance de "MultiPolygon" sur un vol stationnaire dans Google Maps v3. Les données sont chargées à partir d'un fichier GeoJSON, ce serait donc une approche similaire à la version WKT.