示例#1
0
    /////////////////////////////////////////////////////////////////////////////////


    void Start()
    {
        ModelSelector[] modelSelectors = GetComponents <ModelSelector>();

        int countEnabled = 0;

        if (modelSelectors != null)
        {
            foreach (ModelSelector modelSel in modelSelectors)
            {
                if (modelSel.enabled && modelSel.playerIndex == playerIndex)
                {
                    countEnabled++;
                }
            }
        }

        allModelSelectors = new ModelSelector[countEnabled];
        if (countEnabled > 0)
        {
            for (int i = 0, j = 0; i < modelSelectors.Length; i++)
            {
                if (modelSelectors[i].enabled && modelSelectors[i].playerIndex == playerIndex)
                {
                    allModelSelectors[j] = modelSelectors[i];
                    j++;
                }
            }
        }

        if (allModelSelectors.Length > 0)
        {
            iCurSelector = 0;

            modelSelector = allModelSelectors [iCurSelector];
            modelSelector.SetActiveSelector(true);

            Debug.Log("Category: " + modelSelector.modelCategory);
        }

        KinectManager manager = KinectManager.Instance;

        if (manager && manager.IsInitialized())
        {
            if (infoText != null)
            {
                infoText.text = "Please stand in T-pose for calibration.";
            }
        }
        else
        {
            string sMessage = "KinectManager is missing or not initialized";
            Debug.LogError(sMessage);

            if (infoText != null)
            {
                infoText.text = sMessage;
            }
        }
    }
 public static IQueryable <T> ApplySelector <T>(this IQueryable <T> model, ModelSelector <T> selector)
 {
     if (selector != null)
     {
         model = selector.ApplyPredicates(model);
     }
     return(model);
 }
示例#3
0
        public void TestLinear()
        {
            var           x      = new[] { 1000.0, 2000.0, 3000.0, 5000.0, 10000.0, 20000.0 };
            var           y      = new [] { 5.621, 11.428, 17.792, 29.777, 61.806, 125.535 };
            ModelSelector s      = new ModelSelector();
            var           actual = s.FindO(x, y);

            Assert.Equal(BigO.N, actual);
        }
示例#4
0
        public void TestSquare()
        {
            var x = new[] { 1000.0, 2000.0, 3000.0, 5000.0, 10000.0, 20000.0 };
            var y = new [] { 139.297, 354.560, 619.220, 1273.384, 4765.155, 17725.106 };

            ModelSelector s      = new ModelSelector();
            var           actual = s.FindO(x, y);

            Assert.Equal(BigO.NSquared, actual);
        }
示例#5
0
    void Awake()
    {
        if (Instance == null)              // NOT initialized
        {
            Instance = this;               // Initializing the instance

            DontDestroyOnLoad(gameObject); // Making it available
                                           // throughout the game
        }
        else
        {
            Destroy(gameObject);  // Already initialized and
        }
        // destroying duplicate
    }
    /// <summary>
    /// Activates the previous model selector.
    /// </summary>
    public void ActivatePrevModelSelector()
    {
        if (allModelSelectors.Length > 0)
        {
            if (modelSelector)
            {
                modelSelector.SetActiveSelector(false);
            }

            iCurSelector--;
            if (iCurSelector < 0)
            {
                iCurSelector = allModelSelectors.Length - 1;
            }

            modelSelector = allModelSelectors [iCurSelector];
            modelSelector.SetActiveSelector(true);

            Debug.Log("Category: " + modelSelector.modelCategory);
        }
    }
    /// <summary>
    /// Activate the next model selector.
    /// </summary>
    public void ActivateNextModelSelector()
    {
        if (allModelSelectors.Length > 0)
        {
            if (modelSelector)
            {
                modelSelector.SetActiveSelector(false);
            }

            iCurSelector++;
            if (iCurSelector >= allModelSelectors.Length)
            {
                iCurSelector = 0;
            }

            modelSelector = allModelSelectors [iCurSelector];
            modelSelector.SetActiveSelector(true);

            Debug.Log("Category: " + modelSelector.modelCategory);
        }
    }
    /// <summary>
    /// Refreshes the list of available model selectors.
    /// </summary>
    public void RefreshModelSelectorsList(UserGender gender, float age, bool bSelectFirst)
    {
        if (allModelSelectors != null && allModelSelectors.Length > 0)
        {
            if (modelSelector)
            {
                modelSelector.SetActiveSelector(false);
            }
        }

        // find mono scripts containing model selectors
        //MonoBehaviour[] monoScripts = FindObjectsOfType(typeof(MonoBehaviour)) as MonoBehaviour[];
        ModelSelector[] monoScripts = GetComponents <ModelSelector>();

        int countEnabled = 0;

        if (monoScripts != null && monoScripts.Length > 0)
        {
            //foreach(MonoBehaviour monoScript in monoScripts)
            foreach (ModelSelector monoScript in monoScripts)
            {
                //if((monoScript is ModelSelector) && monoScript.enabled)
                {
                    ModelSelector modelSel = (ModelSelector)monoScript;

                    bool genderMatch = gender == UserGender.Unisex || modelSel.modelGender == UserGender.Unisex || modelSel.modelGender == gender;
                    bool ageMatch    = age < 0 || (age >= modelSel.minimumAge && age <= modelSel.maximumAge);

                    if (modelSel.playerIndex == playerIndex && genderMatch && ageMatch)
                    {
                        countEnabled++;
                    }
                }
            }
        }

        allModelSelectors = new ModelSelector[countEnabled];

        if (countEnabled > 0)
        {
            int j = 0;

            //foreach(MonoBehaviour monoScript in monoScripts)
            foreach (ModelSelector monoScript in monoScripts)
            {
                //if((monoScript is ModelSelector) && monoScript.enabled)
                {
                    ModelSelector modelSel = (ModelSelector)monoScript;

                    bool genderMatch = gender == UserGender.Unisex || modelSel.modelGender == UserGender.Unisex || modelSel.modelGender == gender;
                    bool ageMatch    = age < 0 || (age >= modelSel.minimumAge && age <= modelSel.maximumAge);

                    if (modelSel.playerIndex == playerIndex && genderMatch && ageMatch)
                    {
                        allModelSelectors[j] = modelSel;
                        modelSel.SetActiveSelector(false);

                        j++;
                    }
                }
            }
        }

        if (allModelSelectors.Length > 0 && bSelectFirst)
        {
            iCurSelector = 0;

            modelSelector = allModelSelectors[iCurSelector];
            modelSelector.SetActiveSelector(true);

            Debug.Log("Category: " + modelSelector.modelCategory);
        }
    }
示例#9
0
 void Awake()
 {
     bs = this.GetComponent <BackgroundSelector>();
     ns = this.GetComponent <NameSelector>();
     ms = this.GetComponent <ModelSelector>();
 }
示例#10
0
 // Start is called before the first frame update
 void Start()
 {
     modelSelector = GetComponent <ModelSelector>();
     modelLocator  = GetComponent <ModelLocator>();
 }