public void UpdateItem(pLab_PointOfInterest poi, double distance)
    {
        pLab_PointOfInterestItemDebug itemDebug = null;

        if (poiItems.TryGetValue(poi, out itemDebug))
        {
            itemDebug.UpdateInfo(distance);
        }
    }
    public void UpdateItem(pLab_PointOfInterest poi, double distance, float bearing, Vector3 pos)
    {
        pLab_PointOfInterestItemDebug itemDebug = null;

        if (poiItems.TryGetValue(poi, out itemDebug))
        {
            itemDebug.UpdateInfo(distance, bearing, pos);
        }
    }
    public void SetupPOIList(List <pLab_PointOfInterest> pointOfInterests)
    {
        poiItemTemplate.SetActive(false);

        foreach (pLab_PointOfInterest poi in pointOfInterests)
        {
            GameObject go = Instantiate(poiItemTemplate);
            go.transform.SetParent(poiListParent, false);
            pLab_PointOfInterestItemDebug poiItem = go.GetComponent <pLab_PointOfInterestItemDebug>();
            poiItems.Add(poi, poiItem);
            poiItem.Setup(poi);
            poiItem.gameObject.SetActive(true);
        }
    }