示例#1
0
def BicycleSimple():
    p = training.period('Bicycle')

    p.append(BasicsBicycle())
    p.append(BuildupBicycleSpeed())
    p.append(training.period('Buildup Bicycle Speed', 21))
    p.append(BasicsBicycle())
    p.append(BuildupBicycleSpeed())

    return p
示例#2
0
def Bicycle2021():
    p = training.period('Bicycle')

    p.append(BasicsBicycle())
    p.append(BuildupBicycleSpeed())
    p.append(BuildupBicycleForce())
    p.append(training.period('Buildup Bicycle Speed', 21))
    p.append(HighlightBicycle2())
    p.append(BuildupBicycleSpeed())
    p.append(HighlightBicycle3())

    return p
示例#3
0
def PlanSimple(strArg):

    s = training.period(strArg)
    s.appendDescription([
        'Targets',
        [['Same volume like last season'],
         ['defined Highlights', ['Bicycle', 'Run']]]
    ])
    s.appendDescription([
        'Rules',
        [['Regeneration'],
         ['Differenciation', ['Type', 'Intensity', 'Distance']]]
    ])

    s.append(BasicsGeneral())
    #s.append(BasicsAlternative())
    s.append(BicycleSimple())
    #s.append(RegenerationGeneral())
    s.append(RunningSimple())

    s.schedule(2021, 1, 4)

    #s.resetUnits()
    #s.parseFile('Training2021.csv')

    return s
示例#4
0
def BasicsBicycle():
    p = training.period('Basics Endurance Bicycle')
    p.appendDescription('Weight, Metabolism, Nutrition')
    p.appendDescription('1000 km, switch to Racing bike')

    c = training.cycle('Focus Bicycle')
    c.insert(1, training.unit('30;Bicycle;1:15:00'))
    c.insert(3, training.unit('3.5;Running;25:00'))
    c.insert(3, training.unit(';Strength;25:00'))
    c.insert(6, training.unit('40;Bicycle;02:00:00'))

    p.append(c)
    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 5km Time trial')
    p.append(RegenerationGeneral())
    p.append(c)
    c.scale(1.2)
    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())
    c.scale(1.2)
    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())

    return p
示例#5
0
def PlanTriathlon(strArg):

    s = training.period(strArg)
    s.appendDescription([
        'Targets',
        [['Same volume like last season'],
         ['defined Highlights', ['Cycling', 'Run']]]
    ])
    s.appendDescription([
        'Rules',
        [['Regeneration'],
         ['Differenciation', ['Type', 'Intensity', 'Distance']]]
    ])

    s.append(BasicsGeneral())
    s.append(BasicsSwimming())
    s.append(BasicsCycling())
    s.append(BasicsRunning())
    s.append(BasicsCombination())
    s.append(Highlight1())

    s.schedule(2021, 3, 1)

    #s.resetUnits()
    #s.parseFile('Training2021.csv')

    return s
示例#6
0
def BasicsGeneral():
    p = training.period('General Basics')
    p.appendDescription('Regeneration')

    c = training.cycle('General Endurance')
    c.insert(1, training.unit('18:00;3.5;RB;25:00'))
    c.insert(3, training.unit('18:00;3.5;RB;25:00'))
    f = c.insert(4, training.unit(';FB;25:00'))
    c.insert(5, training.unit(';FB;25:00'))
    c.insert(6, training.unit('08:00;30;BB;02:00:00'))

    p.append(c)
    p.append(c)
    c.scale(1.2, r"FB")
    p.append(c)
    p.append(RegenerationGeneral())

    c.appendDescription('Nutrition ABC')
    f.appendDescription('Maximum')

    p.append(c)
    p.append(c)
    f.setDescription()
    p.append(c)
    p.append(RegenerationGeneral())

    return p
示例#7
0
def RunningSimple():
    p = training.period('Running')
    p.appendDescription('Compensation swimming')

    p.append(BasicsRunning())
    p.append(HighlightRunning1())
    p.append(training.cycle('Highlight Running Distance', 14))
    p.append(BuildupRunningSpeed())
    p.append(BuildupRunningSpeed())
    p.append(HighlightRunning1())

    return p
示例#8
0
文件: test.py 项目: raxdne/training
    def test_class_period(self):
        """
        Test all methods of period class
        """

        c = training.cycle('Focus Bicycle', 21)
        c.insert(1, training.unit('11:00;30;Foo;1:15:00'))
        c.insert(3, training.unit('3.5;RR;25:00'))
        c.insert(6, training.unit('07:00;30;Foo;1:15:00'))

        p = training.period('Period')
        self.assertTrue(p.hasTitle())

        p.appendDescription('additional Notes')
        self.assertTrue(p.hasDescription())

        p.append(c)
        p.append(c)
        p.appendChildDescription('Test Time trial')

        pp = training.period('Parent Period')
        pp.append(p)
        pp.append(p)

        ppp = training.period('Parent Parent Period')
        ppp.append(pp)
        pp.scale(2.0)
        ppp.append(pp)

        self.assertEqual(ppp.getPeriod(), 168)
        self.assertEqual(ppp.getNumberOfUnits(), 24)
        self.assertEqual(ppp.getTypeOfUnits(), ['Foo', 'RR'])

        self.assertEqual(ppp.dateBegin, date.today())
        ppp.schedule(2024, 1, 1)
        self.assertEqual(ppp.dateBegin, date(2024, 1, 1))
        self.assertEqual(ppp.dateEnd, date(2024, 6, 16))
示例#9
0
def BuildupRunningSpeed():
    p = training.period('Buildup Running Speed')

    c = training.cycle('Focus Running')
    c.appendDescription('Test 1000m speed run')
    c.insert(1, training.unit('30;Bicycle;1:25:00'))
    c.insert(3, training.unit('5;Bicycle;25:00'))
    c.insert(3, training.unit(';Strength;25:00'))
    c.insert(6, training.unit('5;Bicycle;02:30:00'))

    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())

    return p
示例#10
0
def BuildupBicycleSpeed():
    p = training.period('Buildup Bicycle Speed')
    p.appendDescription('Sprint Final speed')

    c = training.cycle('Focus Bicycle Speed')
    c.insert(1, training.unit('30;Bicycle;1:15:00'))
    c.insert(3, training.unit('3.5;Running;25:00'))
    c.insert(3, training.unit(';Strength;25:00'))
    c.insert(5, training.unit(';Strength;25:00'))
    c.insert(6, training.unit('40;Bicycle;02:00:00'))

    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())
    p.append(c)

    return p
示例#11
0
def BuildupBicycleForce():
    p = training.period('Buildup Bicycle Force')
    p.appendDescription('Force uphill')

    c = training.cycle('Focus Bicycle Force')
    c.insert(1, training.unit('30;BI;1:15:00'))
    c.insert(3, training.unit('3.5;RR;25:00'))
    c.insert(3, training.unit(';FB;25:00'))
    c.insert(5, training.unit(';FB;25:00'))
    c.insert(6, training.unit('40;BI;02:00:00'))

    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())
    p.append(c)

    return p
示例#12
0
def Plan2021(strArg):

    s = training.period(strArg)
    s.appendDescription([
        'Targets',
        [['Same volume like last season'],
         ['defined Highlights', ['Bicycle', 'Run']]]
    ])
    s.appendDescription([
        'Rules',
        [['Regeneration'],
         ['Differenciation', ['Type', 'Intensity', 'Distance']]]
    ])
    s.appendDescription([
        'Units',
        [[
            'Bicycle',
            [
                'BB - Basics', 'BI - Intensity', 'BS - Speed',
                'BC - Compensation'
            ]
        ],
         [
             'Run',
             [
                 'RB - Basics', 'RI - Intensity', 'RS - Speed',
                 'RC - Compensation'
             ]
         ],
         ['Strength, Force', ['FB - Basics', 'FI - Intensity', 'FS - Speed']],
         ['Competition', ['Bicycle', 'Run']]]
    ])

    s.append(BasicsGeneral())
    #s.append(BasicsAlternative())
    s.append(Bicycle2021())
    #s.append(RegenerationGeneral())
    s.append(Running2021())

    s.schedule(2021, 1, 4)

    #s.resetUnits()
    #s.parseFile('Training2021.csv')

    return s
示例#13
0
def BasicsGeneral():
    p = training.period('General Basics')
    p.appendDescription('Regeneration')

    c = training.cycle('General Endurance')
    c.insert(1, training.unit('3.5;Running;25:00'))
    c.insert(3, training.unit('3.5;Running;25:00'))
    c.insert(5, training.unit(';Strength;25:00'))
    c.insert(6, training.unit('30;Cycling;02:00:00'))

    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())
    p.append(c)
    p.append(c)
    p.append(RegenerationGeneral())

    return p
示例#14
0
def BasicsSwimming():
    p = training.period('Basics Endurance Swimming')

    c = training.cycle('Focus Swimming')
    c.insert(1, training.unit('2;Swimming;1:15:00'))
    c.insert(3, training.unit('3.5;Running;25:00'))
    c.insert(3, training.unit(';Strength;25:00'))
    c.insert(6, training.unit('3;Swimming;02:00:00'))

    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 5km Time trial')
    p.append(RegenerationGeneral())
    p.append(c)
    c.scale(1.2)
    p.append(c)
    p.append(RegenerationGeneral())

    return p
示例#15
0
def BuildupBicycleSpeed():
    p = training.period('Buildup Bicycle Speed')
    p.appendDescription('Speed Trime Trial')

    c = training.cycle('Focus Bicycle Speed')
    c.insert(1, training.unit('30;BI;1:15:00'))
    c.insert(3, training.unit('3.5;RR;25:00'))
    c.insert(3, training.unit(';FB;25:00'))
    c.insert(6, training.unit('40;BI;02:00:00'))

    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 5km Trime Trial')
    p.append(RegenerationGeneral())
    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 5km Trime Trial')
    p.append(RegenerationGeneral())

    return p
示例#16
0
def BasicsRunning():
    p = training.period('Specific Basics Running')
    p.appendDescription('Change of Focus')

    c = training.cycle('Focus Running')
    c.insert(2, training.unit('3.5;Running;25:00'))
    c.insert(3, training.unit(';Strength;25:00'))
    c.insert(4, training.unit('3.5;Running;02:30:00'))
    c.insert(6, training.unit('30;Bicycle;1:25:00'))

    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 1000m speed run')
    p.append(RegenerationGeneral())
    c.scale(1.2)
    p.append(c)
    p.append(c)
    p.appendChildDescription('Test 1000m speed run')
    p.append(RegenerationGeneral())

    return p
示例#17
0
def main(args=None):

    options = parse_args(args)

    s = training.period('Report ' + datetime.date.today().isoformat())
    s.parseFile(options.infile)
    training.max_length_type = 1
    #training.unit_distance = 'mi'

    try:
        if options.type == "xml":
            # TODO: generic XML output
            pass
        elif options.type == "sqlite":
            # TODO: sqlite output
            pass
        elif options.type == "json":
            # TODO: JSON output
            pass
        elif options.type == "csv":
            print(s.toCSV(), file=options.output)
        elif options.type == "html":
            print(s.toHtmlFile(), file=options.output)
        elif options.type == "ics":
            print(s.toVCalendar(), file=options.output)
        elif options.type == "svg":
            print(s.toSVGDiagram(), file=options.output)
        elif options.type == "mm":
            print(s.toFreeMind(), file=options.output)
        else:
            print(s.stat(), file=options.output)

    finally:
        try:
            options.output.close()
        except IOError:
            pass