delphi+openstreetmap
est-il un vcl ou d'un projet (en delphi) qui me permettrait de télécharger OSM tuiles et de les afficher sur une application?
J'ai essayé de l'intégration d'un navigateur et il fonctionnait très bien mais j'ai besoin d'un moyen d'afficher les cartes en mode hors connexion.
OriginalL'auteur gtujan | 2010-01-28
Vous devez vous connecter pour publier un commentaire.
Comme je le vois, il y a 3 façons de le faire :
Enregistrer toutes les tuiles en une seule image (qui pourrait être fait facilement avec un TWebBrowser, ou TEmbeddedBrowser composant) : vous accédez à la carte d'adresse (OSM Serveur de Mappage) basé sur les coordonnées (coin supérieur gauche), puis prendre un instantané. Vous avez besoin de recalculer les coordonnées de bases (coin supérieur gauche) après chaque capture.
Vous avez besoin de comprendre comment les tuiles sont générés, ce qui n'est pas bien difficile :
fondamentalement, le régime de l'osm, les carreaux de génération est de suivre http://osmserver.org/tiles/tile/x/y/z.png
Une fois que vous comprenez comment cela fonctionne, vous pouvez calculer les tuiles url en code et télécharger em, un par un.
Pour plus d'informations sur les tuiles schéma de génération de regarder ici :
bon thread sur le collecteur du forum : http://forum.manifold.net/forum/t71011.13#75206
http://wiki.openstreetmap.org/wiki/Slippy_Map
http://wiki.openstreetmap.org/wiki/Tiles%40home
ou si vous avez besoin d'aller plus loin : http://wiki.openstreetmap.org/wiki/OSM_Protocol_Version_0.5
télécharger l'intégralité des cartes OSM (disponible sur internet) et l'utilisation d'un composant VCL pour les afficher (Tatukgis DK...)
Meilleures Salutations,
Mo3ez
OriginalL'auteur M0-3E
Je ne connais pas le projet OpenStreetMap très bien, mais il y a une chance que le projet lui-même a le logiciel pour "voir" les cartes à l'intérieur d'une page.
Vous pouvez atteindre votre objectif: montrer les cartes hors-ligne en utilisant le même concept de base, vous avez maintenant pour l'interface utilisateur: un navigateur intégré.
Ce que vous changer l'url, le navigateur va se connecter à quelque chose comme (http://localhost:3458), ce qui rend votre application son propre serveur web, par exemple, avec Indy TIdHTTPServer lié au port 3458 (juste un exemple de port).
De cette façon, vous pouvez servir le contenu pour le navigateur intégré à l'intérieur de votre application, de la même façon Delphi IDE (>= 2005) lui-même fournit le contenu de la page principale vous voyez lorsque vous démarrez (en fait, un navigateur web intégré).
À ce navigateur, vous servir la page du visualiseur, toutes ses dépendances et l'OSM fichier. La seule restriction à cette idée, c'est le spectateur DOIT faire toutes les choses sur le côté client (par exemple, il pourrait être javascript, flash, etc.). Pas de scripts côté serveur, sauf si vous êtes prêt à "imiter" le côté serveur du comportement ou de l'intégration de vos applications avec le moteur de script (pas trop facile).
Autre possibilité est d'utiliser THBImage, qui offre OpenStreetMap intégration avec Delphi et un (pas de travail) site de démonstration.
OriginalL'auteur jachguate
Oups! J'ai essayé de donner quelques liens hypertexte dans mon message, mais comme une nouvelle StackOverflow utilisateur je suis limité à un seul. Vous pouvez extraire le "Besoin d'une solution pour afficher la carte" fil de messages (25-Jan-2010) sur: embarcadero.public.delphes.thirdpartytools.général
Je suis en train de résoudre un problème semblable. J'ai besoin d'afficher un comté ou de la ville à l'échelle de la carte à l'aide de Delphi et puis mettre des icônes personnalisées sur la carte. Je n'ai pas besoin de routage ou une carte détaillée. Dans le passé, j'ai utilisé un TMS "hotspot" de la composante pour les icônes personnalisées sur le dessus d'un TImage. Maintenant, j'ai besoin d'un moyen pour le client de choisir leur propre carte et l'image d'arrière-plan statique.
Un freeware MFC GUI classe de contrôle (avec la source) qui met en œuvre l'affichage de OpenStreeMap tuiles:
http://www.naughter.com/osmctrl.html
Le zip il y a un exécutable qui montre comment ça marche.
Cette unité est de calculer les Url pour le Projet OpenStreetMap est TileServer, et d'autres fonctionnalités utiles qui pourraient être nécessaires. Si vous souhaitez utiliser OpenStreetMap dans votre pascal programmes, alors ceci est pour vous.
http://code.google.com/p/openstreetmap-fpk/
Je suis aussi d'envisager l'aide de la libre Tigre/Ligne de cartes. Un aspect assez bonne en gratuitement un programme Linux (xastir).
TatukGIS a l'air très bon (et cher). Certes, je ne pas besoin d'une solution SIG donc ce qui semble être de façon exagéré, juste pour afficher une carte. Mais si je ne trouve pas une solution plus simple encore peut-être mieux que l'intégration de MS MapPoint.
TGlobe semble que ce dont j'ai besoin, mais malheureusement il n'est plus disponible.
OriginalL'auteur Paul Breneman
regarder dans StelMAP pour Delphi avec OSM
Composant pour afficher une carte du projet OpenStreetMap pour Delphi 2010, sans l'aide du navigateur ou de scripts.
Vous pouvez afficher des cartes en mode hors connexion. Support pour les serveurs proxy pour le travail en ligne. Multi-thread de chargement de tuiles de carte accélérer le processus de la télécharger et de visualiser des cartes.
L'ensemble des procédures et de la propriété vous permet d'ajouter un composant à la carte un nombre illimité de couches, des formes et des images.
OriginalL'auteur Stelife
Ne sais pas à propos de l'OSM fichiers, mais si vous pouvez les ouvrir dans un navigateur, vous pouvez toujours intégrer un TWebBrowser dans votre application Delphi et de charger les fichiers à l'intérieur.
Pas le plus élégant, mais devrait fonctionner...(nécessite IE)
OriginalL'auteur François