Example #1
0
        private static void LoadExerciseIntoMatrix(string name, string description, Image image, TrainingInfo trainingInfo)
        {
            //Inputs all the exercise information into a "courseExercise" object.
            CourseExercise courseExercise = new CourseExercise();

            courseExercise.name = name;
            courseExercise.trainingInfo.category    = trainingInfo.category;
            courseExercise.trainingInfo.splitKind   = trainingInfo.splitKind;
            courseExercise.trainingInfo.description = "Difficulty: " + trainingInfo.difficulty + Environment.NewLine + description;
            courseExercise.image                   = image;
            courseExercise.trainingInfo.reps       = trainingInfo.reps;
            courseExercise.trainingInfo.sets       = trainingInfo.sets;
            courseExercise.trainingInfo.notes      = trainingInfo.notes;
            courseExercise.trainingInfo.difficulty = trainingInfo.difficulty;
            courseExercise.trainingInfo.isCompound = trainingInfo.isCompound;
            courseExercise.ID = $"{trainingInfo.splitKind},{trainingInfo.category},{name},{trainingInfo.sets},{trainingInfo.reps}";
            courseExercise.trainingInfo.mustSwitchSides     = trainingInfo.mustSwitchSides;
            courseExercise.trainingInfo.mustSwitchDirection = trainingInfo.mustSwitchDirection;

            //Put this exercise object into the global matrix that holds all the exercises in the course.
            if (exercisesMatrix[(int)trainingInfo.splitKind, (int)trainingInfo.category] == null)
            {
                exercisesMatrix[(int)trainingInfo.splitKind, (int)trainingInfo.category] = new List <CourseExercise>();
            }
            exercisesMatrix[(int)trainingInfo.splitKind, (int)trainingInfo.category].Add(courseExercise);
            numberOfExercises++;
        }
Example #2
0
        private int[] AddExercisesToRound(int round, SplitKind chosenSplit, Category category, int howmanyIneed, bool isCompound = false)
        {
            CourseExercise courseExercise = new CourseExercise();

            if (exercisesList[round] == null)
            {
                exercisesList[round] = new List <CourseExercise>();
            }

            List <CourseExercise> ListToPickFrom = new List <CourseExercise>();

            ListToPickFrom = ExercisesLoader.SelectExercisesFromMatrix(chosenSplit, category, difficulty, includeZejax, isCompound);
            int howmanyArethere = ListToPickFrom.Count;

            //int howmanyArethere = exercisesMatrix[(int)chosenSplit, (int)category].Count;

            int[] randomNumbers = RandomExerciseIndexes(howmanyIneed, howmanyArethere);
            for (int i = 0; i < howmanyIneed; i++)
            {
                //courseExercise = exercisesMatrix[(int)chosenSplit, (int)category][randomNumbers[i]];
                courseExercise = ListToPickFrom[randomNumbers[i]];
                exercisesList[round].Add(courseExercise);
            }
            return(randomNumbers);
        }
Example #3
0
        public static void SaveRoutinePlannerFileFormat(LessonPlanRoutine lessonPlan)
        {
            string       fileName   = lessonPlanOptions.routineName + GlobalVar.ProgramExtension;
            StreamWriter stream     = new StreamWriter(fileName);
            const int    categories = 5;

            List <CourseExercise>[] exerciseLists = new List <CourseExercise> [categories];
            exerciseLists[0] = lessonPlan.Warmup;
            exerciseLists[1] = lessonPlan.Round1;
            exerciseLists[2] = lessonPlan.Round2;
            exerciseLists[3] = lessonPlan.Round3;
            exerciseLists[4] = lessonPlan.CoolDown;
            for (int i = 0; i < categories; i++)
            {
                int count;
                if (exerciseLists[i] != null)
                {
                    count = exerciseLists[i].Count;
                }
                else
                {
                    count = 0;
                }

                for (int j = 0; j < count; j++)
                {
                    CourseExercise ce = exerciseLists[i][j];
                    string         ID = $"{(int)ce.trainingInfo.splitKind},{(int)ce.trainingInfo.category},{ce.name},{(int)ce.trainingInfo.sets},{(int)ce.trainingInfo.reps}";
                    stream.WriteLine(ID);
                }
            }
            stream.Close();
        }
Example #4
0
        private void AddWarmupExercises(SplitKind split, Difficulty difficulty)
        {
            //Add joint rotations.
            CourseExercise jointRotations = new CourseExercise();

            jointRotations = exercisesMatrix[(int)SplitKind.All, (int)Category.Mobility][GlobalVar.jointRotationsIndex];
            exercisesList[(int)Category.WarmUp] = new List <CourseExercise>();
            exercisesList[(int)Category.WarmUp].Add(jointRotations);
            Indexes.Warmup = new List <int>();
            //routineIndexes.Warmup.Add(GlobalVar.jointRotationsIndex);

            //Add conditioning exercises.
            bool isCompound = true;

            int[] warmupIndexes1 = AddExercisesToRound(GlobalVar.Warmup, SplitKind.All, Category.WarmUp, 1 + GlobalVar.r.Next(0, 3), isCompound);
            Indexes.Warmup.AddRange(warmupIndexes1);
            int[] warmupIndexes2 = AddExercisesToRound(GlobalVar.Warmup, SplitKind.All, Category.WarmUp, 1 + GlobalVar.r.Next(0, 3), !isCompound);
            Indexes.Warmup.AddRange(warmupIndexes2);

            //Add warmup circles.
            Circles c             = new Circles(split, difficulty);
            var     warmupCircles = c.PickedCircles;

            exercisesList[(int)Category.WarmUp].AddRange(warmupCircles);
            Indexes.Circles = new List <int>();
            Indexes.Circles = c.indexes;
        }
Example #5
0
        private static void WriteHtmlExercise(string fileName, CourseExercise exercise)
        {
            string pictureName = exercise.name + ".jpg";

            //string picturePath = "Splits Routine";
            //TODO: Add error handling here.
            exercise.image.Save(pictureName);
            string[] exerciseInfo = new string[]
            {
                "<tr>" + Environment.NewLine,
                "<td><img src = \"" + pictureName + "\"" + " height = \"130\"></td>" + Environment.NewLine,
                "<td>" + Environment.NewLine,
                "<p>" + exercise.name + "</p>" + Environment.NewLine,
                "<p>" + exercise.trainingInfo.description + "</p>" + Environment.NewLine,
                "<p>" + "Sets: " + exercise.trainingInfo.sets + " - Reps: " + exercise.trainingInfo.reps + "</p>" + Environment.NewLine,
                "<p>" + exercise.trainingInfo.notes + "</p>" + Environment.NewLine,
                "</td>" + Environment.NewLine,
                "</tr>" + Environment.NewLine,
            };
            for (int i = 0; i < exerciseInfo.Length; i++)
            {
                File.AppendAllText(fileName, exerciseInfo[i]);
            }
        }