User manual

Egy hurok rajzolja be egymás után a 60 percpontot egy körre. Az összes pontot a
punkt()funkcióval határozza meg. A pontok azonos távolságra vannak a középponttól, és
negyedenként
190 pixelnyire lévén még pontosan 10 pixel távolságra vannak az ablak szélétől.
A pontok sugara
2 pixel.
Egy második hurok 12 nagyobb kört rajzol, amelyek az órákat jelölik a számlapon. Ezeknek a
sugara
4 pixel, ezeket a hurok egyszerűen a meglévő körök fölé rajzolja, és teljesen lefedik
azokat. Az órák szimbólumai egymástól öt percegységnyire lévő szögtávolságra vannak,
amelyet a funkciónak átadott szögadatnak
5 -tel történő megszorzása ad ki.
mainloop = True; s1 = 0 Mielőtt elindul a program főhurka, még két segédváltozó kerül definiálásra,
amelyekre a későbbiek folyamán lesz szükség. A
mainloop adja meg a legutóbbi
programpéldához hasonlóan azt, hogy a huroknak tovább kell-e futnia, vagy a felhasználó be
akarja-e fejezni a programot. Az
s1 tárolja az utoljára kijelzett másodpercet.
Most indul a program főhurka, amely mindegyik menetben, függetlenül attól, hogy milyen
hosszú ideig tart, beírja az aktuális időt a
zeit objektumba. Ehhez a time-könyvtárból való
time.localtime() funkciót alkalmazza. Az eredmény egy adatstruktúra, amely különböző egyedi
értékekből áll.
s = zeit.tm_sec; m = zeit.tm_min; h = zeit.tm_hour
Az óramutató számára lényeges három érték, a másodperc, a perc és az óra, a strukturából
három változóba íródik be, ezek az
s, m ésh .
Az analóg órák csak tizenkét órát jeleznek ki. A time.localtime() funkció az összes időadatot 24-
órás formátumban adja meg. A délutáni időadatból tehát egyszerűen
12 órát levon.
hm = (h + m / 60.0) * 5 A hm változó percegységben tárolja az óramutató szögét, ahogy azt a
teljes programban alkalmazza. Ezenkívül az aktuális órához hozzáadódik a percérték 1/60
for
i
in
range(12):
pygame.draw.circle(FELD,
SCHWARZ,
punkt(190,
i
* 5), 4)
while mainloop:
zeit = time.localtime()
if
h > 12:
h = h 12
Időjelzés az analóg óráknál
Az alkalmazott mechanikától függően két különböző kijelzési módja van az analóg óráknak.
A valódi analóg módon járó órák esetében a percmutató egyenletesen jár körbe, míg a
digitálisan vezérelt órák, mint például a pályaudvari órák a teljes percnél ugranak egy percet
tovább. Az utóbbi módszer előnye, hogy a pontos idő percre pontosan jobban leolvasható.
A perc törtrészei a mindennapokban általában nem fontosak. Az
óraprogramunkhoz mi is ezt
a módszert választjuk. Az óramutatónak azonban egyenletesen kell körbejárnia. Itt nagyon
furcsa és áttekinthetetlen lenne, ha minden teljes órában ugrana egy órával előre az
óramutató.
75