Hint MapCodes

Pass Hint MapCodes in your MapSet query to reduce the localization search scope

Overview

When working with MapSets containing multiple maps, visual aliasing can occur where similar-looking areas (such as floors with identical features) confuse the localization system. By passing Hint MapCodes in your MapSet queries, you can restrict the localization search to specific maps within the MapSet, improving accuracy and performance.

Key Concepts

  • MapSet: A collection of related maps (e.g., multiple floors of a building)

  • Hint MapCodes: Identifiers that restrict the localization search scope

  • Visual Aliasing: When visually similar areas cause localization confusion

Implementation

You can pass Hint MapCodes to the localization system using the following method:

public void UpdateHintMapCodes()
{
    List<string> hintMapCodes = new()
    {
        "HintmapCode1",
        "HintmapCode2"
    };
    
    mapLocalizationManager.hintMapCodes = hintMapCodes;
}

Real-World Applications

Hint MapCodes can be provided through various user interactions:

  • Floor selection in a building navigation interface

  • QR code scanning at entry points

  • Location-aware services

  • User input through UI elements

Benefits

  • Improved Accuracy: Reduces incorrect map matches

  • Faster Localization: Narrows the search space

  • Better User Experience: More reliable navigation, especially in multi-floor environments

Best Practices

  • Update Hint MapCodes when context changes (e.g., when a user changes floors)

  • Use descriptive MapCodes that align with your application's navigation model

  • Consider implementing fallback mechanisms when Hint MapCodes don't yield results

Troubleshooting

If localization fails despite using Hint MapCodes:

  • Verify the MapCodes exist in the current MapSet

  • Check for typos in MapCode strings

  • Ensure the MapLocalizationManager is properly initialized

Last updated

Was this helpful?