コード例 #1
0
        private int TrainShirt(int currentState, object o)
        {
            brain.SayAsync("Im going to remember your clothes.");
            cmdMan.HEAD_lookat(0.0, -0.3);
            Thread.Sleep(1000);
            TextBoxStreamWriter.DefaultLog.WriteLine("HAL9000\\FindHumanRoutine.-> Remembering shirt...");

            brain.SayAsync("Human, please stand one meter in front of me.");
            Thread.Sleep(1000);
            if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_front", 3000))
            {
                if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_front", 3000))
                {
                    cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_front", 3000);
                }
            }

            brain.SayAsync("Now, please turn to your left side.");
            Thread.Sleep(2000);

            if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_left", 3000))
            {
                if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_left", 3000))
                {
                    cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_left", 3000);
                }
            }

            brain.SayAsync("Now, turn your back towards me.");
            Thread.Sleep(2000);

            if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_back", 3000))
            {
                if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_back", 3000))
                {
                    cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_back", 3000);
                }
            }

            brain.SayAsync("Now, please turn to your right side.");
            Thread.Sleep(2000);

            if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_right", 3000))
            {
                if (!cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_right", 3000))
                {
                    cmdMan.OBJ_FNDT_trainshirt(foundHuman + "_right", 3000);
                }
            }

            brain.SayAsync("Thank you.");
            Thread.Sleep(500);
            return((int)States.TrainFace);
            //return (int)States.FinalState;
        }