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 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    dnes 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

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

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    včera 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 7
    včera 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    včera 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (23%)
     (1%)
     (2%)
     (1%)
     (10%)
     (11%)
     (18%)
    Celkem 193 hlasů
     Komentářů: 21, poslední dnes 18:58
    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: 430×
    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.