コード例 #1
0
    void Awake()
    {
        toggle      = GetComponent <Toggle>();
        toggle.isOn = false;
        switch (sourceType)
        {
        case SourceType.fake:
            //locationProvider = new FakeLocationSource();
            break;

        case SourceType.gps:
            locationProvider = new GpsLocationSource();
            break;

                        #if INDOORGUIDE
        case SourceType.nimble:
            locationProvider = new NimbleLocationSource();
            break;
                        #endif
        default:
            //locationProvider = new FakeLocationSource();
            break;
        }
        toggle.onValueChanged.AddListener(enabled =>
        {
            if (enabled)
            {
                LocationSourceManager.AddProvider(locationProvider);
            }
            else
            {
                LocationSourceManager.RemoveProvider(locationProvider);
            }
        });
    }
コード例 #2
0
    void Awake()
    {
        dropDown = GetComponent <Dropdown>();
        dropDown.options.Clear();
        dropDown.options.Add(new Dropdown.OptionData("Disabled"));
        dropDown.options.Add(new Dropdown.OptionData("Fake"));
        if (enableGPS)
        {
            dropDown.options.Add(new Dropdown.OptionData("GPS"));
        }
#if UNITY_IOS
        if (enableNimble)
        {
            dropDown.options.Add(new Dropdown.OptionData("Nimble"));
        }
#endif
        dropDown.captionText.text = dropDown.options.First().text;

        dropDown.onValueChanged.AddListener(selection =>
        {
            LocationSourceManager.RemoveAllProvidersAndStop();
            string selectedOption = dropDown.options[selection].text;
            if (selectedOption == "Fake")
            {
                fakeLocation = AR.Geolocation.LocationSourceManager.CurrentGeolocation;
                LocationSourceManager.AddProvider(new FakeLocationSource(fakeLocation));
            }
            else if (selectedOption == "GPS")
            {
                LocationSourceManager.AddProvider(new GpsLocationSource());
            }
                        #if INDOORGUIDE
            else if (selectedOption == "Nimble")
            {
                LocationSourceManager.AddProvider(new NimbleLocationSource());
            }
                        #endif
            LocationSourceManager.StartLocationUpdates();
        });
    }