Service de carte gratuit pour les applications Web privées


12

Contexte

Vous cherchez à afficher une carte (à usage interne uniquement) sur une page Web. L'application doit pouvoir ajouter des couches personnalisées (sans envoyer les données à l'hôte du service de carte):

  • Zones municipales (définies par des fichiers de formes)
  • Zones personnalisées (définies par des polygones, éventuellement en termes de zones municipales)
  • Emplacements du site (définis par lat / long)
  • Données supplémentaires sur la ville (définies par des fichiers de formes)

Parce qu'il s'agit d'une entreprise privée, il élimine de nombreux services de cartographie, notamment: Google Maps, Bing, Yahoo! Maps, MapQuest et autres services payants.

Mise à jour # 1

MapQuest est peut-être une possibilité .

Mise à jour # 2

Exigences que j'ai oublié de mentionner:

  1. Il existe des données supplémentaires (villes, villages, hameaux) qui ne font pas partie d'OpenStreetMap. Ces villes doivent être incluses sans fournir les données au fournisseur de cartes.
  2. Il existe différentes couches (telles que les emplacements des employés) qui doivent également être affichées, sans indiquer au fournisseur de carte où trouver les données (c'est-à-dire que les données seront derrière un pare-feu).

Développement en cours

Actuellement, je n'ai pas pu trouver un serveur qui réponde à mes exigences, j'ai donc suivi les instructions sur divers sites Web pour installer un serveur Web Mapnik:

À ce stade, j'ai différents éléments de données:

  • Données de ville et de municipalité (fichiers de formes chargés dans PostGIS)
  • Données de la Terre naturelle (fichiers de forme; non chargés)
  • Feuilles de style Mapnik (divers fichiers; non chargés)

GeoServer

J'ai essayé d'installer GeoServer (avant Mapnik) mais j'ai trouvé que la documentation manquait, l'outil d'administration basé sur le Web était lourd à configurer et la réactivité sur une machine à 2 GHz était douloureusement lente (10 secondes pour rendre une tuile avec un couche unique: routes) et la fade esthétique par défaut. (Je sais que je peux utiliser des feuilles de style pour animer la présentation, mais cela signifie qu'il faut trouver [ou créer !] Des fichiers appropriés, les installer, les tester, etc.)

Exigences

Les exigences techniques comprennent:

  • Villes, routes, plans d'eau (lacs, rivières, océans)
  • Frontières politiques (provinces, pays)
  • Haute qualité (visuellement similaire à Google Maps, MapQuest, etc.)
  • Haute disponibilité
  • Projection 900913 (similaire à Google Maps)
  • Tuiles réactives (moins de 0,1 seconde par tuile)
  • Excellente couverture des données sur les rues pour le Canada
  • Utile pour une carte glissante (compatible avec OpenLayers)
  • 10000 demandes de tuiles par jour
  • Gratuit pour un usage commercial (ou privé), ou moins de 2000 $ par an?

Bon exemple

Voici un excellent exemple (OpenLayers) de ce que je cherche à réaliser:

Mauvais exemples

Un exemple de ce que je ne cherche pas à réaliser:

Un exemple de données incomplètes:

Liens connexes

Question

Quels serveurs WMS, WMTS ou WFS offrent les fonctionnalités requises?

Réponses:


11

Je ne sais pas pourquoi vous excluez des services comme Google Maps, d'autant plus que votre trafic attendu n'est pas si élevé (Google commence à facturer après 25000 vues de carte (vos vues de carte seront bien inférieures à 10000): https://developers.google. com / maps / faq # usage_pricing ). Ce dont vous avez essentiellement besoin, c'est de deux choses:

  1. Quelqu'un pour vous fournir la carte Web glissante. Cela peut être Google Maps, Bing, MapQuest, Cloudmade etc. Ou vous pouvez exécuter votre propre serveur de tuiles et utiliser les données OpenStreetMap.
  2. Rendu de vos propres données vectorielles côté client (en utilisant javascript) en haut de la carte Web. Il existe plusieurs bibliothèques open source qui peuvent le faire (OpenLayers, Leaflet, Polymaps ...).

Quelques conseils pour approfondir:


8
Les conditions d'utilisation de Google Maps interdisent d'afficher des cartes sur des serveurs privés (c'est-à-dire que le serveur doit être ouvert au grand public). developers.google.com/maps/terms ... "L'implémentation de votre API Maps ne doit pas fonctionner uniquement sur un réseau interne." Donc, cela exclut.
Dave Jarvis

OK, ça a du sens. Dans ce cas, OSM est le chemin à parcourir.
Igor Brejc


3

Openlayers avec OpenStreetmap semble être votre meilleure option gratuite, alors vous ajouteriez vos couches avec WMS (comme Mapserver ou Geoserver). Vous pouvez également utiliser Google Maps avec une licence.

J'ai beaucoup d'expérience à ce sujet depuis que j'ai développé un certain nombre de sites, certains à partir de zéro avec des tuiles personnalisées.

Je n'ai pas travaillé avec geoserver mais avec Mapserver. Vous ne pouvez pas vous attendre à ce que le serveur affiche des millions de détails de fonctionnalités en temps réel. Je dirais que les performances de ceux-ci doivent toujours être améliorées en simplifiant les données à des niveaux de détail (selon l'échelle ou le zoom) et peut-être en brûlant les données de base sur des tuiles.

Maintenant, je travaille sur Mobnetics Map

Cela utilise Openlayers, les tuiles OSM, postgreSQL et Java La beauté de celui-ci est qu'il s'adapte à toutes les données SIG (en utilisant des métadonnées) et permet ensuite aux utilisateurs d'interroger les données. Il est en développement continu et ne dispose à l'époque que de données supplémentaires pour le Portugal (comme cas test).

La prochaine chose que je veux faire est d'offrir aux clients hébergeant sur des données SIG qu'ils peuvent configurer et mettre à jour à distance, afin que les clients puissent travailler sur le site comme leur propre.
Ce serait bien d'avoir un client comme vous car ma société développe le site ..

Sinon, je peux également faire une installation personnalisée de ce site sur votre serveur et le maintenir à distance. Nous l'avons fait pour certains clients.

meilleures salutations,

Joaquim Muchaxo


Cela pourrait être un peu long, mais savez-vous où aller pour en savoir plus sur la configuration?
QGISUser

1

Je pense que le mot open source est utilisé assez généreusement dans ce fil;)

Deux autres options:


1
Aucune de ces options n'est possible, car la question concernait les services privés gratuits
Ryan Garnett

1

Vous pouvez bien sûr utiliser un SIG payant. Je travaille dans un conseil et nous utilisons Exponare. Exponare est facile et fonctionne bien, mais cela vous coûtera cher.

ArcMap est le plus sophistiqué et c'est le logiciel que Dekho fait ce que vous voulez.

SI vous voulez rouler le vôtre, consultez http://opengeo.org/ pour la pile complète dans un modèle pris en charge.

Ma compréhension de le faire vous-même est de faire ce qui suit:

  1. Obtenez vos données dans une base de données spatiale, c'est-à-dire PostGIS
  2. Choisissez votre serveur de tuiles / vecteur (PostGIS, GeoServer) pour publier WFS / WMS
  3. Choisissez votre interface web (GeoEXT, openlayers)

Vous pouvez installer une grande partie de cela sur Windows avec https://trac.osgeo.org/osgeo4w/ (package géré et tout). Je suis sûr qu'Ubuntu a les packages, sinon officiels, alors dans un PPA.


1

Les options entièrement gratuites nécessitent l'intégration de quelques logiciels et openstreetmap a des liens vers des logiciels utilisant ses données gratuites. Je recommanderais de regarder l'API Mapbox et les outils en tant que studio Mapbox, c'est gratuit pour une faible utilisation et évolue très bien, avec Native mobile, réagissez nativement, Offline est également une possibilité, pouvez l'utiliser avec Apis tels que Openlayers et leaflet. Les grilles de couches d'interaction et le style des tuiles vectorielles sont des fonctionnalités uniques et puissantes de Mapbox, il n'est cependant pas orienté vers WFS ou WMS, dans ce cas, utilisez également Postgresql et Openlayers. Postgres a des fonctions Gml prêtes à l'emploi, donc pour utiliser WFS, il suffit d'ajouter quelques en-têtes aux demandes, cependant pour une implémentation Ogc complète, utilisez geoserver ou Mapserver

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.