Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Google Chrome 136 byl prohlášen za stabilní. Nejnovější stabilní verze 136.0.7103.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 8 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Pro zobrazení menu pro nahrání obrázku a přidání operací se musí kliknout pravým tlačítkem na bílé ploše. Propojení se dělá kliknutím na takovou tu šipku a tažením k jiné (modré šipky jsou výstupy, zelené jsou vstupy). Pro zobrazení GUI operace (zobrazení náhledu, nastavení křivek) slouží double click na operaci v grafu.
Jo, a pozor na jednu věc – GUI zatím neumí operace aktivovat, pokud nejsou propojovány „zdola nahoru.“ Nejdřív se tedy musí spojit root (načtený obrázek) s první operací, první operace s druhou atd.
Pro demonstrování (zatím velmi jednoduchého) uživatelského rozhraní jsem vytvořil dvě ukázková videa. Omlouvám se za horší kvalitu (zejména divnou změnu barev, když se objeví text), s kdenlive jsem začal před zhruba hodinou…
Ukázka, proč je rozhraní ve formě grafu tak mocné. Video ukazuje možnost zobrazit jednotlivé kroky zpracování obrazu najednou a také ukazuje možnosti nedestruktivního editování, kdy je možné jednu ze straších operací změnit a změny se příslušně promítnou i na následujících operacích.
Ukázka grafuUkázka, jak je to rychlé. Porovnávám GIMP 2.8.0 z distribučních balíčků s FotoSHOCKem. Je nutné poznamenat, že FotoSHOCK byl zkompilován v debug módu, který obsahuje mimo jiné dodatečné kontroly při každém přístupu k pixelu, a je tedy citelně pomalejší než release. Krom toho jsem FotoSHOCK zatím téměř neoptimalizoval.
Porovnání rychlosti s GIMPemA nakonec screen nastavení z prvního videa pro Bedňu, aby mohl zabíjet čas i v práci . Rozhodně doporučuji kouknout na videa, kde je demonstrováno jak to funguje.
Tiskni
Sdílej:
Moc se mi to líbí, ta rychlost....k neuvěření! Jen aby to dokázal používat i BFU jako já
O LightZone jsem nikdy neslyšel, ale Google naznačil, že to nevypadá špatně. Rozhodně se nemůžu dočkat oficiálního vydání
Predstavíš to na nejakom linuxáckom alebo inom zraze?Časem možná ano. Zatím je na tom práce jako na kostele.
Chceš aby sa niekto pridal k tvojej práci?Až bude GUI v trochu lepším stavu, tak se bude hodit každá ruka na implementaci nových operací do GUI. Zatím jsou tam jen křivky (i když technicky vzato ve FotoSHOCKu jsou i načtení obrázku, náhled nebo konverze barevných prostorů standardní operace).
Myslíš že kód gegl/gimp je zbytočne zložitý? aj s pridaním všetkých funkcií ktoré používajú?Kód GEGL je podle mého názoru jeden z nejhezčích kódů v opensource, když pominu nutné skopičiny kvůli GObject. Dá se přečíst a pochopit za 2–3 dny (nepočítám operace), takže bych řekl, že je i docela jednoduchý. Ale, jak už je vidět z mých předchozích řádků, nejsem fanda GObject, spíš se mi líbí rozhraní VIGRA, kterým jsem se částečně inspiroval. Kód GIMPU jsem studoval naposledy ca před rokem a to už bylo horší. Ale u programu, který je tu už pěkných pár let to není nic překvapivého. Zejména kvůli současné existenci částečně integrovaného GEGL a starého tile manageru. Předpokládám, že s přesunem ke GEGL, který se snad konečně děje (když jsem začal psát FotoSHOCK, tak to bylo v nedohlednu…), se kód zlepší.
Pridáš podporu filtrov z Gimpu?Nevím. Pokud ano, tak je to hudba vzdálené budoucnosti. Myslím, že by to mohl být docela problém. Spíš bych to viděl na nějaký wrapper, který by umožňoval spouštět gimpovské skripty v Pythonu.
Mám v práci blokovaný YT, môžem ťa poprosiť o nejaké screens GUI?OK, přidal jsem. Mimochodem, zkoušel někdy někdo možnost přidat video k zápisu? Mě to vrací chybu "Přístup odmítnut Pouze administrátor nebo vlastník tohoto objektu smí provést požadovanou akci!"
Ako dlho už na tom pracuješ?Zhruba od února minulého roku – jádro jsem navrhoval v rámci bakalářky. V současném stavu je oproti bakalářce prakticky kompletně přepsáno, zejména kvůli zavedení mipmap a obecnějšímu způsobu přidávání hran do grafu. Většina původního API ale zůstala téměř nezměněná (nepočítám změny datových typů pro parametry), takže bych řekl, že je API snad dostatečně dobré na to, aby se dalo považovat za stabilní.
Nechceš GUI spraviť tak ako ho má ten čo sa vysllovuje skoro rovnakoNe, chci ho úplně jiné. Rád bych měl GUI ve stylu Blender Node Editoru, jelikož je to neuvěřitelně mocné. Časem bych rád přidal i jednodušší GUI, kde se operace nebudou zobrazovat v grafu ale v řetězu s automatickým napojováním. Přeci jen například v případě, kdy je potřeba jen upravit křivky a změnit velikost obrazu, je nutnost sestavovat graf operací zbytečná a zdlouhavá práce.
diff -r 8b0788844b31 src/fotoshock/mainwindow.ui --- a/src/fotoshock/mainwindow.ui Thu Jul 26 18:31:05 2012 +0200 +++ b/src/fotoshock/mainwindow.ui Fri Jul 27 11:21:01 2012 +0200 @@ -38,7 +38,6 @@ <widget class="QStatusBar" name="statusbar"/> <action name="actionOpen"> <property name="icon"> - <iconset theme="document-open"/> </property> <property name="text"> <string>Open</string> @@ -46,7 +45,6 @@ </action> <action name="actionSave"> <property name="icon"> - <iconset theme="document-save"/> </property> <property name="text"> <string>Save</string> @@ -54,7 +52,6 @@ </action> <action name="actionSave_As"> <property name="icon"> - <iconset theme="document-save-as"/> </property> <property name="text"> <string>Save As</string> @@ -62,7 +59,6 @@ </action> <action name="actionQuit"> <property name="icon"> - <iconset theme="application-exit"/> </property> <property name="text"> <string>Quit</string>
vypada to dobře. Teda na videu :) V reálu jsem nějak nebyl schopný nahrát ani obrázek.
To jsem asi měl zmínit. Dodám i do zápisku. Pro zobrazení menu pro nahrání obrázku a přidání operací se musí kliknout pravým tlačítkem na bílé ploše. Propojení se dělá kliknutím na takovou tu šipku a tažením k jiné (modré šipky jsou výstupy, zelené jsou vstupy). Pro zobrazení GUI operace (zobrazení náhledu, nastavení křivek) slouží double click na operaci v grafu.
Jo, a pozor na jednu věc – GUI zatím neumí operace aktivovat, pokud nejsou propojovány „zdola nahoru.“ Nejdřív se tedy musí spojit root (načtený obrázek) s první operací, první operace s druhou atd.
Jen drobné poznámky: cmake je potřeba 2.8.8. Měl jsem 2.8.6 a tam není OPTIONAL_COMPONENTS ve find_package. Jakou Qt potřebuješ? 4.8.x? Nešlo mi uic na mainwindow.h, musel jsem to vohackovat, protože můj uic z 4.7.x nezná tag iconsetDíky za poznámky. Vyvíjím to na Archu, takže mám vždy jen to nejnovější
HermiteCurve
? To int* m_ctrlPointLUT
mě teda docela děsí FixedArray
- std::vector
má taky konstruktor s parametrem size, v podstatě by se imho dal použít místo toho, nebo tam máš nějaký spešl optimalizace?
To je ta třída HermiteCurve
?
Ne, problém je v QCurveWidget
a použití proměnných leftNear
a rightNear
. Když se hýbe s nějakým bodem, tyhle proměnné ukládají index bodu vlevo a index bodu vpravo. Pokud se ale přepne na jinou křivku, tyhle indexy už mohou být mimo rozsah vektoru ukládajícího body nové křivky. Na opravě jsem už začal pracovat (dodělání odkládám na zítřek…).
ToJe to lookup tabulka fixní velikosti, takže vektor je zbytečný overkill. Krom toho, ačkoliv je zatím využívána minimálně, pro floating point data a větší celočíselné datové typy se do ní bude muset přistupovat při zpracování každého pixelu, takže overhead, který vektor přidá by nejspíš byl problém.int* m_ctrlPointLUT
mě teda docela děsí, v tom bude problém, ne? Nešlo by to nahradit vectorem nebo něčím méně nebezpečným? Ten by se taky líp kopíroval...
Jinak ještě mně není jasný účel třídyV podstatě jde o to samé jako výše, vlastně bych mohl nahradit int* m_ctrlPointLUT touhle třídou. Je to minimální obal pro pole, který vlastně navíc ukládá jen velikost (ty výjimky nejsou úplně nutné a asi je nahradím asserty). std::vektor je pro daný účel strašný overkill.FixedArray
-std::vector
má taky konstruktor s parametrem size, v podstatě by se imho dal použít místo toho, nebo tam máš nějaký spešl optimalizace?
std::vector
overkill? Compile-time?
Je to lookup tabulka fixní velikosti, takže vektor je zbytečný overkill. Krom toho, ačkoliv je zatím využívána minimálně, pro floating point data a větší celočíselné datové typy se do ní bude muset přistupovat při zpracování každého pixelu, takže overhead, který vektor přidá by nejspíš byl problém.Silně pochybuju, že bys s c-style polem dostal lepší výkon než s
std::vector
. Viz.
V podstatě jde o to samé jako výše, vlastně bych mohl nahradit int* m_ctrlPointLUT touhle třídou. Je to minimální obal pro pole, který vlastně navíc ukládá jen velikost (ty výjimky nejsou úplně nutné a asi je nahradím asserty). std::vektor je pro daný účel strašný overkill.Ale vždyť
vector
je taky v podstatě pouze minimální obal pro pole. Lidi mají představu, že std::vector
je jakási velká, složitá a relativně pomalá třída vhodná jen na ukládání velkýho kvanta dat. Není to pravda.
Přijde mi, že použitím c-style array nebo psaním třídy jako je to FixedArray
zbytečně vynalézáš kolo a přiděláváš si práci (nehledě na to, že tam mohou být chyby).
Samozřejmě můžeš narazit na nějakej hodně specializovanej případ anebo případně špatnou implementaci STL/kompilátoru, ale tohle bych opravdu řešil teprv až bys nějakej výkonovej problém skutečně naměřil...
#define M_PI 3.14159265358979323846
v src/fotoshock/widgets/QGraph/Edge.cpp
.
#define _USE_MATH_DEFINES
pred includovani math.h
find_package(Boost REQUIRED COMPONENTS system filesystem…
tak, aby neobsahoval OPTIONAL_COMPONENTS.
[ 89%] Generating ui_mainwindow.h uic: Error in line 41, column 36 : Unexpected attribute theme File '/home/mario/Programy/photo_shock/fotoshock-code/src/fotoshock/mainwindow.ui' is not valid make[2]: *** [src/fotoshock/ui_mainwindow.h] Error 1 make[1]: *** [src/fotoshock/CMakeFiles/FotoSHOCK.dir/all] Error 2 make: *** [all] Error 2
Vyvíjať softvér na Archu zaručí že to pôjde len dvoch distribúciach Archu a GentooPřece se nebudu nechávat omezovat pravěkými verzemi SW
Mohol by si pridať do root adresára README.debianDíky, hodím to tam.
Mám tu ďalšiu chybu:Hmm, za to bude bude moct staré Qt. Pokud máš možnost nainstalovat 4.8, tak použij tu. Jinak by mělo pomoct odstranit tagy, které způsobují chyby z ui souboru, nejspíš se ale pak rozbijí ikonky.