Ezen a héten történt a KDE táján (augusztus 12.)

Címkék

Hatalmasat fejlődött a színkeverés a Kritában. Egy új, jobban használható oldalsávot kapott az okular. Nemzetközi dátumválasztó vonal támogatás és a Summer of Code beolvasztása a Marble-be. A Digikam már a Solidot használja a hardverfelismeréshez. A KRunner pedig a Strigit a fájlnév alapú keresésekhez. A KDE már képes úgy kurzortémát váltani, hogy ehhez nem kell újraindítani azt. A KOrganizerben már megtalálható az többszörös időzónákhoz tartozó idővonal, rich text támogatás és egyéb napló fejlesztések is történtek. Az Akonadi már támogatja a könyvjelzők tárolását. A Kollision játékot elkezdték portolni QgraphicsViewbe. A KWordQuiz és a KVocTrain már támogatja a KNewStuff2-t, viszont a Kalziumból eltávolították azt (és a spektrum nézegetőt) a KDE 4.1-es kiadásáig. A Blitzet, egy MMX/SSE-t támogató, fejlett grafikai effekt és szűrő könyvtárat is elkezdték beemelni a KDE 4.0-ba.

Ismét szeretnék néhány szót ejteni a talán ismeretlen programokról, amik leírása nem szerepelt az előző Commit Digestben:

  • KRunner: egy sor asztali szolgáltatást kínál, mint
    • a „Futtatás” parancs megfelelőjét, így programindítást,
    • D-Buson keresztüli képernyőkímélő indítást és képernyőzárolást
    • alkalmazásindítási értesítést
  • Kollision: egy egyszerű labda elől kitérési játék
  • KWordQuiz: egyszerű szókikérdező program
  • KVocTrain: ez viszont már egy fejlettebb verzió
  • KnewStuff2: arra született, hogy elmossa a határokat az adat előállítók és a felhasználók között.
    Képességei:
    • Adatlétrehozás: az az alkalmazás, ami támogatja az adatfájlok létrehozását, integrálja a KNewStuff feltöltési ablakát. A fájl feltöltése előtt egy előnézeti képet kell létrehozni, és néhány fontos mezőt (mint például név, szerző és licenc) kell kitölteni, de természetesen ezeket a korábbi feltöltésekből is fel lehet használni
    • Adattökéletesítés: a már létező adat frissítéséhez nem kell újra kitölteni a leíró mezőket, elég a fájlt egy frissített verziószámmal újra feltölteni
    • Böngészés: minden szolgáltató különböző nézeteket vagy feedeket kínálhat, úgy mint „a legfrissebb elem”, „legnépszerűbb elemek” vagy akár sajátot is létrehozhat, pl. „az xyz kiírás nyertese”. A DXS-sel [a DXS egy webszolgáltatás alapú megvalósítása és kiegészítése a GHNS protokollnak (az utóbbi pedig fájlok megosztása miatt, az interneten egymáshoz kapcsolód kliensek, szerverek közötti infrastruktúrát szolgáltatja)] a beírás közbeni keresés és a cache-elés válik lehetővé
    • Telepítés: a telepítési folyamat magában foglalhatja a letöltött adatok egységének ellenőrzését (hash összeget használva), az autentikációs ellenőrzést (OpenPGP aláírást használva), az adatfájl kibontását és a telepítés utáni szkriptek futtatását
    • Törlés: a telepített elemeket bármikor törölni is lehet. Ezért minden telepített elemről adatok tárolódnak egy adatbázisban
    • Fordítás: bármelyik felhasználó összegzést és címfordítást adhat hozzá bármikor. De az oldal házirendjétől függően ez akár csak az admin jóváhagyása után kerülhet ki
    • Feliratkozások: egy felhasználó fel is tud iratkozni egy elemre, és így értesítést kap, ha frissebb érhető el. DXS-sel a feliratkozások listája virtuális feedként is lekérhető
    • Verziókezelés: a feliratkozás és a telepítés/törlés magától egy egyszerű verziókezelési rendszerhez vezet. Ez a képesség viszont alapértelmezésben nem mutatkozik meg, egészen addig, amíg egy alkalmazás kifejezetten ezt akarja használni
    • Oldalkarbantartás: a felhasználók kérhetik egyes elemek eltávolítását is
    • Szolgáltató támogatás: a szerver oldali GHNS keretrendszer teljesen kompatibilis a KnewStuff2-vel
    • Tárolt adat: a letöltött adat cache-ben tárolódik a bejegyzések keresésének gyorsítása és a letöltési ablak azonnali megjelenítése végett

Emanuele Tamponi mutatja be a Kritán végzett munkát:

Mint a múlt évi Summer of Code-ban is, a munkám nem a sok kód írása volt (nem igazán vagyok gyors kódoló), hanem inkább az elméleti technológiák kutatása és kiértékelése, amiket mi, a Krita fejlesztők, tudunk használni.

Ebben az évben a projektem nagyon furcsa volt: színkeverés. Először is be kell valljam, azt gondoltam, munkám legnehezebb része a festék fizikai csepegtetése és szárítása és az ecsetmozgatás szimulálása lesz. Hogy lehet a színkeverés nehéz? Vedd az RGB értéküket, majd keverd össze őket hozzáadó módon vagy más transzformációval (a HSL színmód nagyon hasznos, például). De a dolgok nem ilyen egyszerűek.

A színkeverés valójában egy nagyon bonyolult feladat. Mi ez pontosan? Körülbelül annak szimulálása, amit iskolában tanultál: sárga és kék zöldet ad, vörös és sárga narancsot... és így tovább. Ezt a viselkedést kellett szimulálnom.

Nagyon nehéz elmagyarázni a bonyolultságát néhány szóban, de talán így tudom leegyszerűsíteni: nem tudod a keverék végső színét úgy, hogy az összetevőknek csak az RGB értékeit ismered. Tehát a munkám a következő volt: egy „szín modellt” találni (azaz, hogy tudnám ábrázolni a színeket), ami a következőt tudja: a keverék színe az összetevők értékeinek súlyozott összege legyen.

Szerencsére, más emberek már gondoltak erre előttem, egészen pontosan két kutatással: a Kubelkával és a Munkkal. Egy halom egyenletet írtak, amik leírják (többek között) a pigmentek viselkedését. Ezen egyenletek integrációja után az alkalmazás már képes megállapítani a színt, amit a keverés által kaphatunk. A Kubelka és a Munk nem tudta, hogy a rendszerüknek megvan az a képessége, amit kerestem. Ezt a felfedezést Duncan tette, aki segített integrálni az egyenleteiket. A törvénye pont az állapítja meg, ami után kutattam: „egy keverék K és S értékei egyenlőek az összetevők K és S értékeinek súlyozott összegével”. A két rövidítés pedig a következőket takarja: „elvonás - absorption” (K) és „szóródás - scattering” (S). Újra mondom, nem volt annyira könnyű erre rájönni: de tényleg, a kezdetektől reménykedtem, hogy találhatok valami más rendszert a Kubelka és a Munk helyett, mivel azok nagyon bonyolultak. Reméltem, hogy néhány egyszerűsítés elég jó volt, hogy közelítse a festék igazi viselkedését anélkül, hogy használná a modelljüket.

A végén egyértelmű volt, hogy nem fogok tudni menekülni a Kubelkától és a Munktól, és így elkezdtem implementálni az elméleteiket. Sok részük nagyon jól dokumentált: van például egy jó adag egyenlet, ami a K és az S értékeket engedi átalakítani visszaverődési értékekké (reflectance), majd ezekből XYZ értékekbe és aztán pedig RGB értékekbe. Kitűnő! Nem, nem igazán :) Nekem pont a fordítottja kellett: egy eljárás ami RGB színből alakít át K és S-be, majd utána vissza. Minden dokumentum, amit olvastam, feltételezte, hogy a K és S értékek már adottat, és még tippet sem adtak, hogy találhatnám ki azokat az RGB színből.

Szerencsémre, kis keresgélés után találtam egy pici, öreg papírt, ami ezzel foglalkozott: az algoritmus, amit találtam nem volt tökéletes, de legalább működött. Így képes voltam kis (sok) matekozás után (köszönet Paolo Capriottinek az alapozó segítségéért) megkapni a K és S értékeket!

Ez mindössze néhány napja történt, amikor beküldtem a keverőm legutolsó verzióját. Egyszer, amikor megkaptam ezeket az értékeket, arra jöttem rá, hogy a kezdő színt megtalálni nagyon könnyű: csak végy minden összetevőből, majd keverd össze a K és S értékeit jelenlétükben arányosan... a végső eredmény nagyon valósághű. Például, ez a modell az egyetlen út, amit találtam, hogy zöldet kapjak sárgából és kékből.

A Krita színkeverő video letöltése (8,5 MB - AVI)

A Krita az első nyílt alkalmazás, amiben benne van ez a technológia. Csak néhány tanulmányi projekt érte ezt el, és azt is sok CPU/GPU használattal (clusterre vagy egy erős GPU-ra van szükségük, különben csak nagyon alacsony felbontásokon tudnának futni). Sikerült leegyszerűsítenem a folyamatot annyira, hogy az összes gépemen fusson, bármiféle GPU használata nélkül is (meg persze, nem túl sok is clusterbe kötött gép van a házamban :)). A Corel Painter nem tudja ezt (valójában, úgy gondolom, hogy nem tud annyira jól színt keverni, mint a Krita most...), sőt a Photoshop sem képes erre.

Ezzel a technológiával, nemcsak az RGB színekből való helyes keverést tudjuk kezelni, hanem valódi színek létrehozását is (azaz, egy színt nem csak az RGB értéke határoz meg, hanem a visszaverődési értéke is, ami a legfontosabb és alap tulajdonsága, ami színbe a... színt viszi, ami a színt színné teszi); tudjuk még kezelni a világítást is, azaz a virtuális fény (ami a jelenetet megvilágítja) megváltoztatásával megváltoztatja a benne lévő színeket is. Egy nagyon jó sor képesség, amik még nincsenek implementálva még, de az felépítésük már itt van.

Statisztikák:
Beküldések: 2590 db történt 223 fejlesztőtől, 7002 sor módosításával és 1619 új fájl hozzáadásával.
Nyitott hibák: 14162
Nyitott kérések: 12903
Megnyitott hibák: 181 az utóbbi 7 napban.
Bezárt hibák: 120 az elmúlt 7 napban.

Beküldési statisztikák:
/trunk/KDE 885
/trunk/l10n-kde4 381
/trunk/playground 346
/trunk/koffice 217
/branches/work 181
/trunk/extragear 97
/branches/stable 93
/trunk/kdesupport 70
/branches/extragear 64
/trunk/l10n-kde3 63

Nyelvi statisztikák (KDE 3):
Svéd: 100.00%
Portugál: 99.83%
Spanyol: 92.96%
...
Magyar: 37.79% (egy héttel ezelőtt: 36.51%)

További információk és rengeteg statisztika megtekinthető az e heti KDE Commit Digest weblapján.

Hozzászólások

ez a Krita nagyon tetszik. THX a fordítást!

Köszönjük az infókat! További jó és sikeres munkát kívánok!

Huhh ez naggyon jól néz ki! Ha egyszer túl sok időm lesz, hogyan tudnék segíteni fordításban, pontosan hogyan megy ez?

Nem túl bonyolult dolog, de a következőképpen csinálom, ha már kérded:
RSS feedben megjön a dot.kde.org-ról, hogy új Commit Digest van, és elkezdem lefordítani a bevezetőjét.
Aztán most már második alkalommal realizálom, hogy a Digestek egyre rövidebbek (vagy a múltkoriak voltak hosszúak :), így összegyűjtök az alkalmazásokról infókat (kézikönyvből, honlapról, de leginkább SVN-ről…), azokat leírom a bevezető mögé, mert azért nem árt tudni, miről is szól a hír, és így kicsit hosszabb is lesz :)
Ezután pedig lefordítom a Digest maradék részét, és kiegészítem a magyar nyelvi statisztikával.

Így röviden ennyi.

A KDE már képes úgy kurzortémát váltani, hogy ehhez nem kell újraindítani azt.

Fantasztikus hogy hol tart már az evolúció. :)

Ez a knewstuff lenne a DXS (Desktop Exchange Service) megvalósítása és tulajdonképpen a különféle dokumentumok, szkriptek, ötletek stb. megosztását teszi lehetővé Interneten, ugye?

Ezt a színkeverést meg azonnal be kell rakni a Gimpbe. :)
---
;-(

Költői "nemflame" kérdés. Vajon GNOME kapcsán mikor kapunk ilyet ? :D
1. Csináljam meg én
2. Nem is érdemes, ott csak interface-eket gyártanak
3. Nincs ott nagy dolog _csak_ apróbb bugfixek...

Amúgy kösz szotsaki -nak.

Továbbra is az a helyzet, hogy a Gnome project más filozófiát vall a fejlesztésekkel kapcsolatban. Egyébként ott is vannak tervek nagyobb változtatásokra, de nem ilyen mértékben.

Tegyük fel, hogy megjelenik a KDE 4. Nagyon sok változás lesz benne, nem szándékosan marad benne egy kupac bug, néha instabil lesz, stb. Ekkora mértékű fejlesztések után sajnos nem lehet arra számítani, hogy minden tökéletes és hibamentes legyen.
És itt vetődik fel a kérdés, hogy melyik fejlesztési modell a jobb választás. Most a felhasználóknak, disztibútoroknak jobb, hogy van a konzervatív Gnome project, amivel "áthidalhatják" a KDE stabilizációs szakaszát.

Szerintem sem. Megjelenik a "stabil" akkor felrakom kipróbálom és mikor már kezd már használható lenni akkor szépen visszamegyek kde-re. Addig marad egy gnome is fent. Egyébként ez a színkeverés tényleg elég érdekes ,csak az a bajom hogy megint egy olyan dolgot fejlesztenek ami önmagában naggyon jó körítés lenne egy jó képszerkesztővel. (például Gimpbe) De igazából csak ezért nem fogok kde-s képszerkesztőt használni.

A GNOME projektnél ilyesmi azért nincs, mert senki sem csinálja, tehát 1. :) Kicsit komolyabbra fordítva a szót: vannak azért olyan források, amiből össze lehet vadászni, hogy a különböző komponensekben milyen újdonságok vannak, illetve a következő verziókban milyen újítások várhatók: RoadMap. Van még egy próbálkozás, a GNOME Journal, de az kb. olyan sűrűn jelenik meg, mint a kiadások (fél éves ciklusok rulez, csak nem éppen a médiában :P). Ezeken kívül érdemes a Planet GNOME-ot napi rendszerességgel olvasni, mert ott beszámolnak a fejlesztők arról, hogy éppen min dolgoznak (mostanában elég erősen eltolódott a hangsúly a mobil fejlesztések felé szerintem).

Nemzetközi randivonal támogatás

Ez WTF?:)

--
"Trollhammaren sveper igen..."

Sztem tul sok az ilyen felesleges feature az uj KDE kornyeken. mindenfele online lemezbolt integralasa az Amarokban stb. Nem szeretem hha egy program foshlassu, sok memot zabal, lassan indul, es a 90%-at ki sem hasznalom a funkcioinak. Jobban bejon amikor minden funkciora van kulon program, es azok egy jol integralt kornyezetet alkotnak. Ebbol a szempontbol jobban tetszik a GNOME filozofiaja.