예제 #1
0
        public WorkoutDayGenerator(RepScheme repScheme, SplitDay splitDay, GeneratorSettings _generatorSettings)
        {
            RepScheme = repScheme;

            SplitDay = splitDay;

            VolumePerDay = _generatorSettings.VolumePerDay;

            VolumeMuscleMap = new Dictionary <Muscle, int>();

            GeneratorSettings = _generatorSettings;

            //large muscles worked twice as much as small
            foreach (Muscle muscle in SplitDay.Day.DaysMuscles
                     .OrderBy(x => x.ID)
                     .ThenBy(x => x.Muscle.Size)
                     .Select(x => x.Muscle))
            {
                if (GeneratorSettings.LaggingMuscles.Contains(muscle.Name))
                {
                    VolumeMuscleMap.Add(muscle, (VolumePerDay / muscle.Size) * 2);
                }
                else if (GeneratorSettings.OverDevelopedMuscles.Contains(muscle.Name))
                {
                    VolumeMuscleMap.Add(muscle, (VolumePerDay / muscle.Size) / 2);
                }
                else
                {
                    VolumeMuscleMap.Add(muscle, VolumePerDay / muscle.Size);
                }
            }
        }
예제 #2
0
        public WorkoutGenerator(RepScheme repScheme, Muscle muscleToWork, GeneratorSettings genSettings, int exerciseCount = 1)
        {
            RepScheme = repScheme;

            GeneratorSettings = genSettings;

            MuscleToWork = muscleToWork;

            ExerciseCount = exerciseCount;

            UsedExercises = new List <Exercise>();
        }
예제 #3
0
 public RoutineGenerator(GeneratorSettings generatorSettings)
 {
     this.GeneratorSettings = generatorSettings;
 }