Quelles bibliothèques de cartographie Web conviennent aux cartes d'intérieur? [fermé]

11

Je cherche une bibliothèque de cartographie personnalisée mais pas pour afficher une zone géographique réelle mais pour afficher un plan d'étage personnalisé. Je cherche depuis un certain temps mais la plupart des solutions que j'ai trouvées concernent les zones géographiques.

Je souhaite personnaliser quelques niveaux de zoom (probablement 3 niveaux) et idéalement je recherche une solution JavaScript, HTML5 (canvas, SVG).

Est-ce que quelqu'un a des suggestions?

Tamas
la source
1
Pouvez-vous élaborer sur vos besoins? Quels types de fonctionnalités cartographiez-vous et quels types d'interactivité souhaitez-vous offrir? Quelle est la taille approximative de l'installation? La fonctionnalité de cartographie intérieure doit-elle s'intégrer à une carte extérieure / mondiale?
blah238
Merci pour ces excellentes réponses. Je vais parcourir ces solutions / liens que vous avez recommandés. Pour vous donner plus d'informations, je voudrais mapper un plan de siège (cabines individuelles, bureaux ainsi que des équipes (c.-à-d. Ingénieur, chef de produit, etc.) sur une carte d'étage. Par conséquent, il n'est pas nécessaire d'avoir la fonctionnalité de mappage pour s'intégrer à un en plein air / carte du monde.
Tamas

Réponses:

9

J'ai créé ma propre application de carte en utilisant mes propres images. Notre université s'est déplacée vers un nouveau campus et je cartographie 7 étages (intérieurs), avec 5 niveaux de zoom, à partir de cartes dessinées à la main.

Leaflet est capable de travailler avec des tuiles de carte personnalisées! J'ai suivi ce guide (omarriott.com/aux/leaflet-js-non-geographical-imagery), juste que j'ai fait quelques essais et erreurs avec les numéros de niveau de zoom pour m'assurer que la carte s'est affichée (suivre le guide exactement n'a pas travaille pour moi).

Il existe un plugin appelé Leaflet Indoor mais il repose sur geoJson, que je n'avais pas. Tout ce que j'ai, ce sont des coordonnées d'image personnalisées et mon propre Json personnalisé. Quoi qu'il en soit, le dépliant est capable de convertir les coordonnées de l'image en lat lng (et vice versa) avec les méthodes de non-projet et de projet.

Ce que j'ai fait pour créer différents étages, c'était d'utiliser le contrôle des calques à la place. Bien sûr, il faut un certain temps pour comprendre l'API et s'assurer que tout fonctionne comme il se doit. Par exemple, j'ai regroupé mes marqueurs pour chaque étage et codé un moyen de les rendre bien à travers différents niveaux de zoom. Et le chargement d'un étage différent nécessite également un gestionnaire pour charger correctement les marqueurs.

Je sais que Leaflet a une tonne d'exemples basés sur des cartes géographiques et il peut laisser des gens comme nous dans le noir, mais je veux vous assurer qu'il est possible de le faire pour des cartes personnalisées. Vous avez besoin de l'image, la tuile correctement (avec des noms corrects), la chargez sur un CDN comme Amazon, puis utilisez l'API Leaflet.

Kevin Lee
la source
3

Ne connaissant pas votre cas d'utilisation, vous voudrez peut-être jeter un œil à la bibliothèque D3.js (Data Driven Documents) pour la visualisation des données. Bien que je ne sais pas s'il prend en charge les «niveaux de zoom» en soi, mais il prend en charge les cartes zoomables .

Jetez un œil à leurs nombreux exemples ici: https://github.com/mbostock/d3/wiki/Gallery

RyanKDalton
la source
2

Traitez le plan d'étage comme une zone géographique. OpenLayers ou Leaflet ne se soucient pas de savoir si les éléments qu'ils affichent sont à l'intérieur ou à l'extérieur - tant que vous pouvez définir un système de coordonnées, tout ira bien.

BradHards
la source
1
Je dirais que certains aspects de la cartographie à l'intérieur sont délicats avec les bibliothèques de cartographie à usage général, tels que les étages multiples, la précision, la connectivité, le routage, etc., qui ont des défis uniques. Et combiner tout cela avec une bibliothèque de cartographie extérieure à usage général est également probablement assez difficile.
blah238
blah238: wiki communautaire. Modifier à volonté.
BradHards