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í
×
    včera 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    včera 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 10
    9.9. 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    9.9. 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 1
    9.9. 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 7
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 30
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 162 hlasů
     Komentářů: 12, poslední včera 13:00
    Rozcestník

    Dotaz: Jak kreslit v X do velkého okna

    23.4.2015 19:41 Jardík
    Jak kreslit v X do velkého okna
    Přečteno: 391×
    Vytvářím v aplikaci "velké" okno (řekněme UINT16_MAX šířka a výška). xcb_create_window má šířku a výšku jako uint16_t, takže je to v pořádku. Okno se opravdu vytvoří. První problém je, že "výchozí" překreslování, co dělá X při nastavení "back pixelu" funguje jen do velikosti INT16_MAX, od INT16_MAX do UINT16_MAX je to plné artefaktů od překrývajících oken, nepřekresluje se to. Zachytávám v programu expose události, ty mi dají X, Y, šířku a výšku jako uint16_t, takže jsou ok. Jenže jak kreslit do oblasti nad INT16_MAX? xcb_point_t má x a y jako int16_t, takže moje souřadnice nemůžu zadat. Asi bych mohl kreslit do bufferu a použít SHM a jeho "put image", což mi umožní dát obrázek na INT16_MAX X a Y s INT16_MAX šířkou a výškou a tak můžu pokrýt oblast celého okna, ale to je strašně moc alokované paměti a budu muset použít nějakou rasterizační knihovnu a tomu chci předejít, nesmím mít jiné závislosti než na XCB + jeho závislosti.

    Řešení dotazu:


    Odpovědi

    23.4.2015 19:44 Jardík
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    strašně moc alokované paměti
    16 GB pro UINT16_MAX * UINT16_MAX * 4BPP
    mess avatar 24.4.2015 00:24 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    A nejde to kreslit "po kouskách" přes tu SHM? A na co vůbec potřebuješ tak velké okno?
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    24.4.2015 12:09 Jardík
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Přes to SHM po kouskách je taky problém. Protože dst_x a dst_y jsou taky int16_t, takže abych mohl kreslit do zbylé poloviny okna, musím kreslit nejdále od INT16_MAX a mít šířku minimálně INT16_MAX. Takže celkem potřebuji 2 buffery o INT16_MAX * INT16_MAX * 4, což jsou 4GB. zkusím pixmapu, koukám, že bych mohl použít xcb_copy_area s pixmapou, taky má int16_t pozici a uint16_t rozměr, ale nemusel bych použít rasterizační engine a můžu použít na kreslení X.
    24.4.2015 12:12 Jardík
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Jinak zapomněl jsem zmínit druhý problém, ten, že "motion notify" má souřadnice jako int16_t a tak v druhé polovině okna dostávám "záporné" hodnoty, po přetypování na uint16_t se to zdá být správná hodnota, ale nevím, jestli je situace, kdy motion notify vrací záporné hodnoty "normálně" (tj. nejedná se o nějaké přetečení).
    24.4.2015 13:14 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Tak to Jardíku oprav.
    Pochybnost, nejistota - základ poznání
    24.4.2015 23:18 Jardík
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Tak to, Jardíku, oprav.
    Hotovo
    25.4.2015 08:36 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Dobrá práce, bude to i v upstreamu?
    Pochybnost, nejistota - základ poznání
    Řešení 1× (rADOn)
    24.4.2015 14:40 Michal
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Obávám se že tyhle limitní velikosti nikdo netestuje a fungovat nebudou.

    Takhle velké okno se předpokládám nezobrazuje na žádnou obrazovku, takže hádám že jen potřebuješ něco velkého nakreslit a pak uložit do souboru? Jestli jo, tak bych to vůbec nehnal přes X server, ale použil nějakou knihovnu na client-side kreslení. I pokud to chceš akcelerovat na grafice, tak to budeš muset rozsekat na kousky, grafiky typicky umí kreslít nejvíc 8192x8192, plus mínus dvojnásobek.
    27.4.2015 21:42 Jardík
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Jsem našel zajímavý dokument pojednávající o špatných vlastnostech X, včetně toho mého.
    28.4.2015 14:03 Srsen
    Rozbalit Rozbalit vše Re: Jak kreslit v X do velkého okna
    Tento dokument je z roku 2001, takze nevim, nakolik je jeste aktualni.

    Založit nové vláknoNahoru

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

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