Exemplo n.º 1
0
        public static WordBox CreateWordBox(string withWord, float withRotationAngle, WordBoxCategory withCategory)
        {
            WordBox newWordBox = new WordBox();
            newWordBox.textString = withWord;
            newWordBox.rotationAngle = withRotationAngle;
            newWordBox.resizeToFitCurrentWord();

            newWordBox.category = withCategory;
            return newWordBox;
        }
Exemplo n.º 2
0
        private string filenameForCategory(WordBoxCategory category)
        {
            string filename = null;
            switch (category)
            {
                case WordBoxCategory.Car:
                    filename = "Car"; break;
                case WordBoxCategory.Tree:
                    filename = "Tree"; break;
                case WordBoxCategory.Book:
                    filename = "Book"; break;
                case WordBoxCategory.Cat:
                    filename = "Cat"; break;
                case WordBoxCategory.Chair:
                    filename = "Chair"; break;
                case WordBoxCategory.Clothing:
                    filename = "Clothing"; break;
                case WordBoxCategory.Coffee:
                    filename = "Coffee"; break;
                case WordBoxCategory.Dog:
                    filename = "Dog"; break;
                case WordBoxCategory.Lake:
                    filename = "Lake"; break;
                case WordBoxCategory.Student:
                    filename = "Student"; break;
                case WordBoxCategory.Planet:
                    filename = "Planet"; break;
                case WordBoxCategory.Horse:
                    filename = "Horse"; break;
                case WordBoxCategory.Joiner:
                    filename = joinerPrefix() + "Joiner"; break;
                default:
                    filename = ""; break;
            }

            //if (studyController.isInSetUpMode == false)
            //    filename = filename + "Boxes" + studyController.currentPosition;
            //else if (studyController.isInSetUpMode == true)
                filename = filename + "Words";

            return filename;
        }
Exemplo n.º 3
0
        private void addWordBoxToCategory(WordBox newWordBox, WordBoxCategory toCategory)
        {
            if (!currentWordBoxes.ContainsKey(toCategory))
                currentWordBoxes[toCategory] = new List<WordBox>();

            currentWordBoxes[toCategory].Add(newWordBox);
        }
Exemplo n.º 4
0
        public void loadWordsForCategory(WordBoxCategory category, int categoryNumber)
        {
            string filename = filenameForCategory(category);
            string[] lines = System.IO.File.ReadAllLines(filenamePrefix + filename + ".txt");

            foreach (string line in lines)
            {
                Point location = Point.Empty;

                int index = random.Next() % validOrientations[studyController.currentPosition].Count;
                WordBox wordbox;

                if (studyController.isInSetUpMode == false)
                {
                    string[] texts = line.Split(',');
                    wordbox = WordBox.CreateWordBox(texts[0], (float)Convert.ToDouble(texts[1]), category);
                    if (category == WordBoxCategory.Horse || category == WordBoxCategory.Planet
                        || lastCategoryLoaded == WordBoxCategory.Horse)
                    {
                        location.X = (int)((Convert.ToInt32(texts[2]) / 1280.0) * Program.tableWidth);
                        location.Y = (int)((Convert.ToInt32(texts[3]) / 960.0) * Program.usableHeight) + (Program.tableHeight - Program.usableHeight);
                    }
                    else
                    {
                        location.X = (int)((Convert.ToInt32(texts[2]) / 1024.0) * Program.tableWidth);
                        location.Y = (int)((Convert.ToInt32(texts[3]) / 768.0) * Program.usableHeight) + (Program.tableHeight - Program.usableHeight);
                    }
                    wordbox.Location = location;
                    wordbox.setOriginalLocationAndOrientation(location, (int)wordbox.rotationAngle);
                }
                else
                {
                    wordbox = WordBox.CreateWordBox(line, validOrientations[studyController.currentPosition][index], category);

                    if (category == WordBoxCategory.Joiner)
                    {
                        location.X = 500;
                        location.Y = 500;
                    }
                    else if (categoryNumber == 1)
                    {
                        //top left
                        location.X = 50;
                        location.Y = 50;
                    }
                    else if (categoryNumber == 2)
                    {
                        //top right
                        location.X = 700;
                        location.Y = 50;
                    }
                    wordbox.Location = location;
                    wordbox.setOriginalLocationAndOrientation(location, validOrientations[studyController.currentPosition][index]);
                }

                wordbox.setWordBoxController(this);

                addWordBoxToCategory(wordbox, category);
            }

            lastCategoryLoaded = category;
        }
Exemplo n.º 5
0
 public List<WordBox> getBoxesForCategory(WordBoxCategory category, int categoryNumber)
 {
     if (!currentWordBoxes.ContainsKey(category))
     {
         loadWordsForCategory(category, categoryNumber);
     }
     return currentWordBoxes[category];
 }
Exemplo n.º 6
0
        public void startNextCondition()
        {
            wordBoxController.clearCurrentWordBoxes();
            currentCondition = conditions.Dequeue();

            if (currentCondition == HaikuStudyCondition.LinesSlowed
                || currentCondition == HaikuStudyCondition.LinesSlowedLess
                || currentCondition == HaikuStudyCondition.LinesSlowOne
                || currentCondition == HaikuStudyCondition.LinesSlowTwo
                || currentCondition == HaikuStudyCondition.LinesBlocking
                || currentCondition == HaikuStudyCondition.Blocking
                || currentCondition == HaikuStudyCondition.Slowed)
                isSpeedPenalty = true;
            else
                isSpeedPenalty = false;

            if ((currentCondition == HaikuStudyCondition.LinesVibrate
                || currentCondition == HaikuStudyCondition.LinesVibrateOne
                || currentCondition == HaikuStudyCondition.LinesVibrateTwo
                || currentCondition == HaikuStudyCondition.LinesMouseVibrate
                || currentCondition == HaikuStudyCondition.LinesBeltVibrate
                || currentCondition == HaikuStudyCondition.PocketVibration
                || currentCondition == HaikuStudyCondition.MouseVibration
                || currentCondition == HaikuStudyCondition.KinectArmsVibration
                || currentCondition.UsesVibration())
                && Program.isDebug == false)
            {
                isActuatePenalty = true;
                //Program.mainForm.phidgetController.setUpServos();
            }
            else
                isActuatePenalty = false;

            Program.mainForm.resetEmbodimentOrigins();
            Program.mainForm.showMyArm = false;
            Program.mainForm.showTheirArm = false;

            currentCategories.Clear();
            currentCategories = nextCategories();

            user1Category = currentCategories[1];
            user2Category = currentCategories[0];
        }