Retrouvez-nous du 15 au 17 septembre sur deux salons : IFTM 2026 et NRF 2026.

Developers  › Wayfinding

Routing & Wayfinding — navigation pas à pas, indoor comme outdoor.

Moteur de routage multimodal, guidage multi-étages, recalcul dynamique et accessibilité PMR. Intégré en natif sur iOS, Android, Flutter et JavaScript.

MODES 6 modes
ÉTAGES Multi-étages
CALCUL < 1 sec
ACCESSIBILITÉ PMR native
ROUTING ENGINE

De la requête au guidage — en moins d'une seconde.

01
Requête utilisateur

Départ, destination, profil (piéton, PMR, vélo) et préférences de modalité.

02
Calcul d'itinéraire

Moteur Dijkstra optimisé sur le graphe topologique indoor + outdoor. Résultat en < 1 seconde.

03
Guidage pas à pas

Instructions texte + flèches directionnelles, changement d'étage via ascenseur ou escalier, gestion des portes et sas.

04
Recalcul dynamique

Déviation détectée ? Nouveau calcul immédiat. Fonctionne offline — graphe embarqué dans l'app.

MODES & CAPACITÉS

Six modes de transport, une intégration simplifiée.

Du piéton au transport en commun, du guidage PMR à l'audio-guidage — tous les modes sont exposés via la même API unifiée.

OUTDOOR Piéton

Calcul d'itinéraire piéton outdoor via OpenStreetMap, indoor via plan Wemap. Transitions seamless.

OUTDOOR Vélo

Profil cycliste avec modes multiples : le plus rapide, le plus sûr, touristique.

MULTIMODAL Transports en commun

Intégration GTFS — horaires temps réel, correspondances, accessibilité PMR par ligne.

INDOOR Multi-étages

Guidage entre niveaux : ascenseur, escalator, escalier, rampe. Sélection automatique selon profil.

INDOOR Accessibilité PMR

Profil PMR complet : exclusion des obstacles, largeur de passage minimale, priorité ascenseur.

INDOOR Audio-guidage

Instructions vocales synchronisées avec le guidage — natif iOS et Android, web JS API.

SPECS TECHNIQUES

Performances et couverture plateforme.

Disponible en SDK natif (iOS, Android, Flutter, JavaScript) ou directement via l'API Data — calculez et affichez un itinéraire depuis votre propre backend, sans SDK.

Performances

Temps de calcul < 1 seconde
Graphe indoor max 500 000 nœuds
Offline capable
Support GTFS
Profils supportés 6
Précision position Dépend du SDK Positioning

Plateformes & SDKs

Plateforme Statut
iOS (Swift) FULL FULL
Android (Kotlin) FULL FULL
Flutter FULL FULL
JavaScript (Web) FULL FULL
React Native BETA BETA

Fonctionnalités : Turn-by-turn · Multi-étages · Offline graph · AR overlay · Audio guidance

QUICK START

Intégrer la navigation en 5 minutes.

// Via WemapMapSDK's navigationManager — computes and starts
// turn-by-turn guidance in one call
let origin = Coordinate(latitude: 43.610628, longitude: 3.876654)
let destination = Coordinate(latitude: 43.609011, longitude: 3.917091)

mapView.navigationManager
    .startNavigation(
        origin: origin, destination: destination,
        travelMode: .walk,
        options: navigationOptions, searchRules: searchRules,
        itineraryOptions: itineraryOptions,
        timeout: .seconds(10)
    )
fun getItinerariesForPreview() {
    val origin = Coordinate(43.610628, 3.876654)
    val destination = Coordinate(43.609011, 3.917091)
    val searchRules = ItinerarySearchRules.WHEELCHAIR

    lifecycleScope.launch {
        runCatching {
            mapView.itineraryManager
                .getItineraries(
                    origin, destination,
                    TravelMode.Walk(),
                    searchRules
                )
        }.onSuccess {
            mapView.itineraryManager.addItinerary(it.first())
        }.onFailure {
            println("Failed to start navigation")
        }
    }
}
WemapMap(
  options: MapOptions(
    mapID: yourMapId,
    token: yourToken,
    environment: Environment.PROD,
  ),
  itineraryWidgetEnabled: true,
  onMapReady: (mapData, mapManager) async {
    await mapManager.addItinerary(
      origin: Coordinate(latitude: 48.877, longitude: 2.324, level: 0),
      destination: Coordinate(latitude: 48.876, longitude: 2.323, level: 1),
      searchRules: ItinerarySearchRules(ruleNames: ["wheelchair"]),
      color: Colors.red,
    );
  },
  onItineraryAdded: (itinerary) {
    print('Added: ${itinerary.duration}s, ${itinerary.distance}m');
  },
)
import { core } from '@wemap/core';
import { Router, Coordinates } from '@wemap/routing';

await core.init({ emmid: 'YOUR_MAP_ID', token: 'YOUR_TOKEN' });

const router = new Router();
const origin = new Coordinates(43.6047, 1.4442);
const destination = new Coordinates(43.6051, 1.4448);

const itineraries = await router.directions(
  origin,
  destination,
  'WALK',
  { isWheelchair: true }
);

const bestRoute = itineraries[0];
console.log('Distance:', bestRoute.distance, 'm');
console.log('Duration:', bestRoute.duration, 's');
EN PRODUCTION

Des millions de guidages, chaque mois.

300+ venues
6 modes de transport
100% offline compatible
PMR nativement supporté
"Le recalcul dynamique de Wemap a été décisif pour nous. Quand les équipements changent en temps réel, le guidage s'adapte — sans que l'utilisateur ne remarque rien."
Équipe Innovation, SNCF Gares & Connexions
CONFORMITÉ & STANDARDS

Construit pour les environnements réglementés.

Standards transport, accessibilité et conformité RGPD — tous intégrés nativement dans le moteur de routage.

GTFS & GTFS-Realtime

Intégration native des données horaires de transport en commun avec mise à jour en temps réel.

EN 17210 — Accessibilité

Critères européens d'accessibilité des environnements bâtis intégrés au moteur de routage.

WCAG 2.1 AA

Instructions de guidage accessibles : contraste suffisant, alternatives textuelles, navigation clavier.

OpenStreetMap

Données de routage outdoor basées sur OSM — contribuez, mettez à jour, restez souverain.

Disponible hors ligne

Graphe embarqué dans l'app — guidage sans connexion, même en zone blanche (gares, souterrains).

RGPD / GDPR

Aucun tracking de position. Calcul de route exécuté localement sur l'appareil — aucune donnée transmise.

Prêt à déployer ?

Prêt à déployer la navigation dans vos espaces ?

Documentation complète, sandbox, accompagnement à l'intégration.

Vous avez des questions ? Nos équipes techniques répondent dans la journée.  pro@getwemap.com