abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 11:00 | Pozvánky

    Organizátoři konference LinuxDays ukončil veřejné přihlašování přednášek. Teď je na vás, abyste vybrali nejlepší témata pro letošní ročník. Hlasovat můžete do pondělí 7. září, poté bude podle výsledků hlasování sestaven program pro letošní ročník.

    Petr Krčmář | Komentářů: 1
    dnes 10:55 | Nová verze

    Servo, engine webového prohlížeče napsaný v Rustu, byl vydán ve verzi 0.5.0. Novinky shrnuje přehled projektu za červenec. Došlo k dalšímu pokroku ve vykreslování webových stránek. Současným cílem projektu je vytvořit komponentu webového prohlížeče jako WebView pro použití v jiných aplikacích.

    |🇵🇸 | Komentářů: 0
    dnes 10:44 | IT novinky

    IKEA a XBOX představují kolekci YXSTABY (pdf). Ta přináší designová a praktická řešení, díky nimž se prostor pro hraní během sekundy promění v útulný a harmonický domov.

    Ladislav Hagara | Komentářů: 1
    dnes 02:00 | Nová verze

    Jonathan Thomas oznámil vydání verze 4.0 nelineární střižny OpenShot. Nově podporuje nahrávání obrazu a zvuku, vylepšuje uživatelské rozhraní, mj. color grading, přidává další efekty a mnoho dalšího (seznam změn).

    |🇵🇸 | Komentářů: 0
    včera 17:22 | Komunita

    Proběhlo hlasování o používání LLM při vývoji Debianu. Vývojáři Debianu si odhlasovali zodpovědné využívání generativní umělé inteligence.

    Ladislav Hagara | Komentářů: 2
    včera 16:11 | Komunita

    Sovereign Tech Agency (Wikipedie) prostřednictvím svého fondu Sovereign Tech Fund podpoří vývoj Flatpaku částkou 508 640 eur.

    Ladislav Hagara | Komentářů: 0
    včera 15:55 | Zajímavý software

    Byla vydána první veřejná verze v7.0-mk2 projektu Multikernel (mklinux), který umožňuje spouštět více nezávislých linuxových jader současně na jednom stroji bez hypervizoru.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | IT novinky

    Heureka Group uspěla v soudním sporu se společností Google. Městský soud v Praze vydal rozhodnutí v oblasti soukromoprávního vymáhání soutěžního práva. Společnosti Heureka Group přiznal náhradu ušlého zisku ve výši 250 milionů korun, což spolu s úroky z prodlení a náhradou nákladů řízení činí více jak 410 milionů korun. Základem celého sporu bylo protisoutěžní jednání technologického giganta Google v letech 2013 až 2017. Google na

    … více »
    Ladislav Hagara | Komentářů: 12
    včera 14:44 | Komunita

    Dnešním dnem končí LTS podpora Debianu 11 s kódovým názvem Bullseye. K dispozici je Extended LTS podpora.

    Ladislav Hagara | Komentářů: 0
    28.8. 08:11 | Komunita

    Firma X zaslala předžalobní výzvu vývojáři projektu Nitter (Wikipedia), open-source alternativního frontendu k sociální síti X (ex-Twitter), a provozovatelům instancí jako XCancel, které umožňovaly číst příspěvky bez přihlášení, reklam a javascriptu. Údajně se dopouštějí „sběru dat“. Zdrojový kód Nitteru vývojář archivoval. Vývoj již dříve přerušil v roce 2024 po tehdejším omezení API X. X je dceřiná společnost SpaceXAI Elona Muska, provozující mj. kontroverzního chatbota Grok.

    |🇵🇸 | Komentářů: 26
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2528 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Pygame

    9.1.2005 11:35 | První linie

    Pravděpodobně všichni znáte Python. Jde o objektově orientovaný programovací jazyk s velmi čistým zápisem. Python má už v základní instalaci spoustu modulů, pro vše možné, nicméně kde to pokulhává, to je grafika a grafické uživatelské rozhraní. Zde je dostupné pouze Tk, které má ale své nedostatky, kupříkladu nevypadá nic moc (chápej, vypadá jinak než GTK+). To se dá řešit rozšířením PyGTK nebo jiným, nicméně pokud chceme psát hry, tak to stále nebude ono.

    V tomto případě jistě sáhneme po rozšíření PyGame, to zpřístupňuje funkce knihovny SDL a doplňuje k ní několik dalších užitečných prvků. Výsledek je kombinací jednoduchosti a lehkosti Pythonu a možností SDL.

    Abych si to vyzkoušel, pustil jsem si Moonsorrow a zkusil napsat malé přistání na měsíci (nebo na čemkoliv jiném). Výsledek je zatím dost k ničemu, jsou v něm chyby, je neúplné a tak podobně. Přesto, něco to dělá a to na padesáti řádkách a během půl hodiny. Což není vůbec zlý výsledek :-)

    :-)" src="http://palisada.net/files/pygame-abc.gif" />

    Na malém obrázku vidíte jak to vypadá :-) Běží to v okně, i když fullscreen pygame zvládne taky. Rovněž je to natrvdo ve velikosti 640x480, ale opět, to je jen pro moji lenost. Raketka je představována jediným červeným pixelem (opět, šlo by to udělat hezčeji, ale zase by to byla práce navíc :-)), vlevo máte údaje o vaši výšce, palivu a rychlosti. Brzdit můžete mezerníkem. Pohybujete se pouze a jedině nahoru a dolů, přičemž program nekompromisně končí po dosažení nulové výšky, pak už jenom vypíše konečnou rychlost.

    Vzhledem k tomu jak je to krátké, tak si můžu dovolit sem dát celý zdroják :-) Předpokládám, že tam je pár chyb a dost věcí udělaných nic moc, ale pak už se mi chtělo moc spát…

    #!/usr/bin/python
    import pygame
    from pygame.locals import *
    
    grav = 1
    
    def keyboard (rocket):
      engine = 0
      for event in pygame.event.get (KEYDOWN):
        keys = pygame.key.get_pressed ()
        engine = keys [K_SPACE]
      if engine:
        rocket.burn = 0.01
    
    class rocket:
      a = 0
      burn = 0
      def chpos (self, grav):
        if (self.burn > self.fuel):
          self.burn = self.fuel
        burna = (self.burn * 1000) / (self.mass + self.fuel)
        self.a = self.a + grav - burna
        self.pos[1] = self.pos[1] + self.a
        self.fuel = self.fuel - self.burn
        self.burn = 0
      def draw (self, surface):
        surface.lock ()
        surface.set_at ([self.pos[0]/100, self.pos[1]/100], [255,0,0,0])
        surface.unlock ()
    
      def __init__(self):
        self.pos = [32000,0]
        self.fuel = 2.0
        self.mass = 1.0
    
    disp = pygame.display
    surf = disp.set_mode ([640,480])
    pygame.init ()
    
    pygame.key.set_repeat (50,30)
    
    x = rocket ()
    
    Fnt = pygame.font.Font (None, 40)
    
    while (x.pos[1] < 48000):
      if not pygame.time.get_ticks () % 30:
        surf.fill ([0,0,0,0])
        keyboard (x)
        x.chpos (grav)
        x.draw (surf)
        osd = Fnt.render (str(48000 - x.pos[1])+' '+str(x.fuel)+' '+str(x.a), 0, [0,255,0,0])
        surf.blit (osd, [0,0])
        disp.update ()
    
    print x.a
    
           

    Hodnocení: -

    zatím nehodnoceno
            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.